使用 Haproxy 阻止端口

使用 Haproxy 阻止端口

我们是否可以封锁任何端口,比如 8080,以便阻止外部世界访问我们特定的 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 

但我被困在阻塞端口的问题。

答案1

您是否需要专门提供 http 403?一个简单的 iptables 规则就可以真正阻止不需要的流量。

例如:

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 表仍被认为是‘正确’的工具。

相关内容