iptables@Ubuntu10.04

  • ポリシーイメージ
   +------------+    +---------+    +-------------+
→ | PREROUTING | → | FORWARD | → | POSTROUTING | →
   +------------+    +---------+    +-------------+
         ↓                                ↑
   +------------+                   +-------------+
   |   INPUT    |                   |   OUTPUT    |
   +------------+                   +-------------+
         ↓                                ↑
   +----------------------------------------------+
   |                  (Process)                   |
   +----------------------------------------------+

# sudo vi /etc/network/if-pre-up.d/iptables

#!/bin/sh

# NATの設定削除
iptables -F -t nat
# 全てのルールを削除
iptables -F
# ユーザ定義チェインを削除
iptables -X
# カウントゼロ
iptables -Z

### ポリシー
# 外部からのパケットを拒否
iptables -P INPUT DROP
# 外部へのパケットを許可
iptables -P OUTPUT ACCEPT
# 他のインタフェースへの再送信を拒否
iptables -P FORWARD DROP

### INPUT
# INPUTの確立済みコネクションを許可
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# loからのINPUTを許可
iptables -A INPUT -i lo -j ACCEPT
# eth1からのINPUTを許可
iptables -A INPUT -i eth1 -j ACCEPT
# 学内のみICMPを許可
iptables -A INPUT -p icmp -s 150.xxx.xxx.0/24 -j ACCEPT
# HTTP
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

### FORWARD
# FORWARDの確立済みコネクションを許可
#iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# loからのFORWARDを許可
#iptables -A FORWARD -i lo -j ACCEPT

# sudo /etc/init.d/networking restart

# sudo vi /etc/rc.local

/etc/network/if-pre-up.d/iptables (chmod +xしとく)

iptables-save, iptables-restore使った方がきれいなのかな?