在 CentOS 系统中,iptables 是一个功能强大的防火墙工具,它允许你通过设置规则来过滤进出网络的数据包。iptables 使用链(chains)来组织这些规则。主要有三种默认链:INPUT、OUTPUT 和 FORWARD,分别对应输入、输出和转发的数据包。
以下是如何使用 iptables 链进行过滤的基本步骤:
sudo iptables -L
sudo iptables -F
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 443 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.100 -j ACCEPT
sudo iptables -P INPUT DROP
sudo service iptables save
sudo service iptables restart
注意:在执行这些命令之前,请确保你有 root 权限。根据你的需求,你可以根据上述示例修改和扩展规则。在应用新的规则之前,请务必测试它们以确保它们按预期工作。