Debianでiptablesを使用したファイアウォールスクリプト

久しぶりにiptablesスクリプト書いたらいろいろ忘れてたのでここにさらしておく。
環境 : debian (lenny)


#!/bin/sh
alias iptables='/sbin/iptables'
alias iptables-save='/sbin/iptables-save'
# policy
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# clear setting
iptables -F

# allow lo
iptables -A INPUT -i lo -j ACCEPT

# allow established
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# allow icmp
iptables -A INPUT -p icmp -j ACCEPT

# allowed port
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# disallow else
iptables -P INPUT DROP

# save configuration
iptables-save