使用Haproxy阻止端口

是否有可能阻止任何端口访问可以说,8080被阻止从外部世界除了我们的某个IP地址? 我知道如何阻止使用IP地址

listen ... ... acl bad_ip src XXX.XXX.XXX.XXX #Any Bad IP use_backend block_ip if bad_ip ... backend block_ip mode http errorfile 403 /etc/haproxy/errors/403.http 

但是我阻止了港口。

你需要专门提供一个HTTP 403? 一个简单的iptables规则将真正阻止不需要的stream量。

例如:

 iptables -p tcp -m tcp --dport 8080 -s ! $TRUSTED_IP_ADDRESS -j DROP 

至于haproxy acl的,你会想要dst_port选项,它匹配客户端连接到本地端口。

 acl secure_port dst_port 8080 acl trusted_ip src 10.0.0.1 use_backend block_ip if secure_port !trusted_ip 

即使haproxy可以做到这一点,IP表也被认为是“正确的”工具。