如何使用 IPTABLES 阻止一切?

如何使用 IPTABLES 阻止一切?

我想阻止一切除了 SSH/FTP/HTTP/POSTFIX 和 MySQL。

我所说的“一切”是指所有其他端口、阻止 ping 等等。

答案1

我猜你指的是传入连接(INPUT 链),而不是转发连接(如路由器中的连接)。另外我认为 postfix 仅指 SMTP (25)。

iptables -P INPUT ACCEPT
iptables -F INPUT

for port in 21 22 25 80 3306
do
  iptables -A INPUT -p tcp --dport $port -j ACCEPT
done

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -P INPUT DROP

特别测试您的 FTP 连接,您可能需要启用ip_conntrack_ftp它才能正常工作,而无需修改客户端设置。

相关内容