IPT=iptables # policies $IPT -P INPUT DROP $IPT -P OUTPUT DROP $IPT -P FORWARD DROP # flush chains $IPT -F INPUT $IPT -F OUTPUT $IPT -F FORWARD # accept everything on loopback $IPT -A INPUT -i lo -j ACCEPT $IPT -A OUTPUT -o lo -j ACCEPT # accept ESTABLISHED,RELATED $IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT $IPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # accept new outgoing TCP $IPT -A OUTPUT -p tcp -m state --state NEW --syn -j ACCEPT # accept new outgoing DNS $IPT -A OUTPUT -p udp --dport 53 -m state --state NEW -j ACCEPT # accept new outgoing IPMI $IPT -A OUTPUT -p udp --dport 623 -m state --state NEW -j ACCEPT # accept tftp $IPT -A OUTPUT -p udp --dport 69 -m state --state NEW -j ACCEPT $IPT -A INPUT -p udp --dport 69 -m state --state NEW -j ACCEPT # accept DHCP $IPT -A OUTPUT -p udp --sport 68 --dport 67 -j ACCEPT $IPT -A INPUT -p udp --sport 67 --dport 68 -j ACCEPT # accept SSH iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT # accept ping $IPT -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT $IPT -A INPUT -p icmp --icmp-type 0 -j ACCEPT exit 0