在iptables中,OUTPUT链用于控制从本机发出的数据包。以下是一些基本的OUTPUT链配置示例:
iptables -P OUTPUT ACCEPT
iptables -P OUTPUT DROP
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 80 -j DROP
iptables -A OUTPUT -d 192.168.1.100 -j ACCEPT
iptables -A OUTPUT -d 192.168.1.100 -j DROP
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -d 192.168.1.100 -j DROP
iptables -A OUTPUT -p tcp --dport 53 -d 192.168.1.100 -j DROP
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j DROP
iptables -A OUTPUT -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -j DROP
iptables -A OUTPUT -m owner --uid-owner <username> -j ACCEPT
iptables -A OUTPUT -m owner --uid-owner <username> -j DROP
备份当前的iptables规则:在进行任何更改之前,建议备份当前的iptables规则。
iptables-save > /etc/iptables/rules.v4
测试规则:在生产环境中应用新规则之前,先在测试环境中进行测试。
持久化规则:某些Linux发行版(如Debian)使用iptables-persistent来持久化iptables规则。确保在更改规则后运行以下命令以保存规则:
netfilter-persistent save
netfilter-persistent reload
权限:修改iptables规则需要root权限。
通过这些示例,你可以根据需要配置OUTPUT链,以满足你的安全需求。