使用用户代理限制和重定向端口访问

使用用户代理限制和重定向端口访问

我正在尝试编写 iptables字符串匹配规则 阻止http://domain.com:8888https://domain.com:8888当它与规则中提供的字符串匹配时。还有一条规则将端口也从重定向88887777

我尝试遵守规则,但不幸的是没有奏效

iptables -A INPUT -p tcp -s 0.0.0.0/0 -m string --string linuxcore --algo bm --sport 8888 -j DROP

iptables -t raw -A PREROUTING -m string --algo bm --string linuxcore -p tcp -i eth0 --dport 8888 -j DROP

iptables -t nat -A PREROUTING -p tcp --dport 8888 -m string --algo bm --string "linuxcore" -j REDIRECT --to-port 7777

iptables -A INPUT -t nat -p tcp --dport 8888 -m string --algo bm --string "linuxcore" -j DROP

我想从 iptables 而不是 web 服务器执行此操作,因为服务器可能没有 web 服务器,并且这些端口正在内部代理或类似的东西上工作。

答案1

如果你指的是访问 HTTP 服务,则可以在你的 Web 服务器上完成此操作,例如阿帕奇2。此外,也可以在 squid 等代理服务器上完成此操作。但是,不建议基于以下内容过滤/拒绝流量,因为User-Agent它可以是任何内容。这在提供的 apache2 文档链接中有所说明。

防火墙并非设计用于过滤/拒绝此类流量。

答案2

首先,如果你想要将其作为一种安全机制,请不要这样做——它非常不安全。最好使用 HTTP 身份验证,最好通过 SSL。

其次,这是您的网络服务器的工作,而不是防火墙的工作。具体实现取决于您所使用的网络服务器。

相关内容