我试图设置我的网络防火墙,但由于遇到错误而使我不断被踢出SSH,因此遇到了麻烦。这是我目前拥有的:
# Custom Rules
iptables -F
iptables -X
iptables -P FORWARD DROP
iptables -N mc
iptables -A mc --src 123.456.789.1 -j ACCEPT
iptables -A mc --src 123.456.789.2 -j ACCEPT
iptables -A mc --src 50.50.50.50 -j ACCEPT
iptables -A mc -i lo -j ACCEPT
iptables -A mc -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A mc -m state --state INVALID -j DROP
iptables -A mc -j DROP
# Server Rules (Main Server)
iptables -A INPUT -p tcp --match multiport --dports 64000:64321 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --sport 53 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -p udp -m udp --sport 53 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --source proxy.ovh.net -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --source proxy.p19.ovh.net -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --source proxy.rbx.ovh.net -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --source proxy.rbx2.ovh.net -j ACCEPT
iptables -A INPUT -i eth0 -p icmp --source ping.ovh.net -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 22 --source cache.ovh.net -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j mc
iptables -A INPUT -p tcp -m multiport ! --dports 20,21,22,80,443,9987,20117,25565 -j mc
iptables -A INPUT -j DROP
基本上:
- 允许访问端口64000:64321
- 允许通过TCP(从Sport 53)访问端口1024:65535
- 允许通过UDP(来自Sport 53)访问端口1024:65535
- 允许从上面列出的源访问ICMP ping请求
- 使用
mc
规则允许访问端口3306 20,21,22,80,443,9987,20117,25565
通过mc
规则过滤来自端口的访问- 拒绝所有其他输入