在Linux中,iptables是用于配置内核防火墙的命令行工具
- 查看当前iptables规则:
sudo iptables -L
- 添加一条新规则,允许TCP端口80(HTTP)的入站流量:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- 添加一条新规则,允许UDP端口123(NTP)的入站流量:
sudo iptables -A INPUT -p udp --dport 123 -j ACCEPT
- 添加一条新规则,拒绝来自特定IP地址(例如192.168.1.10)的出站流量:
sudo iptables -A OUTPUT -d 192.168.1.10 -j DROP
- 添加一条新规则,拒绝所有出站流量,除了已允许的端口(例如80和123):
sudo iptables -A OUTPUT -p tcp --dport !80 -j DROP sudo iptables -A OUTPUT -p udp --dport !123 -j DROP
- 删除特定规则(例如,删除允许TCP端口80的规则):
sudo iptables -D INPUT -p tcp --dport 80 -j ACCEPT
- 保存iptables规则,以便在系统重启后仍然生效:
sudo apt-get install iptables-persistent sudo netfilter-persistent save
- 设置默认策略为拒绝所有入站和出站流量:
sudo iptables -P INPUT DROP sudo iptables -P FORWARD DROP sudo iptables -P OUTPUT DROP
请注意,这些示例适用于基于Debian的系统(如Ubuntu)。对于基于RHEL的系统(如CentOS),您可能需要使用firewalld
或ufw
来管理防火墙规则。