我正在寻找一个相当高的Nginx / Varnish反向代理的最小iptables规则集。 我想closures服务器,这样只有端口80和22完全可以打开来自外部的连接。
此外,我想从连接跟踪中排除端口80上的stream量,因为连接列表趋于增长。 另一方面,我想有自由地使用连接跟踪其他的东西。
怎样才能实现一个最小规则集,从连接跟踪中排除端口80和443上的HTTP和HTTPSstream量?
这是我的基本规则:
iptables -F INPUT iptables -P INPUT DROP iptables -i lo -A INPUT -j ACCEPT iptables -i eth0 -A INPUT -m状态 - 状态RELATED,ESTABLISHED -j ACCEPT iptables -i eth0 -A INPUT -p TCP --dport 22 -j ACCEPT iptables -i eth0 -A INPUT -p TCP --dport 80 -j ACCEPT iptables -i eth0 -A INPUT -p ICMP -j ACCEPT
服务器在端口80和443上的公网IP上运行Nginx(10.0.0.1为例)。Nginx与10.0.0.1:8080上的Varnish进行通信。 清漆与另一台机器上的networking服务器(10.0.0.2:80)对话。 这个后端的Web服务器需要和Varnish进行对话以清除URL。
我尝试了类似的东西
iptables -F PREROUTING -t raw iptables -F OUTPUT -t raw iptables -t raw -A PREROUTING -p TCP --dport 80 -j NOTRACK iptables -t raw -A OUTPUT -p TCP --sport 80 -j NOTRACK iptables -t raw -A PREROUTING -p TCP --dport 8080 -j NOTRACK iptables -t raw -A OUTPUT -p TCP --sport 8080 -j NOTRACK
以及明确提及源或目标IP的变体,但是它要么破坏服务器(通过阻塞一些stream量),要么不能成功地从连接跟踪中删除所有的HTTPstream量。