# Firewall rules
# Written by Marc Silver (marcs@draenor.org)
# http://draenor.org/ipfw
# Freely distributable
# (/etc/rc.firewall にあるように) 参照を簡単にするために防火壁のコマンドを定義します.
# 読みやすくするのに役立ちます.
fwcmd="/sbin/ipfw"
# 再読込みする前に現在のルールの消去を強制します.
$fwcmd -f flush
# トンネルインターフェースを通じてすべてのパケットを divert します.
$fwcmd add divert natd all from any to any via tun0
# 自分のネットワークとローカルホストからのデータをすべて許可します.
# 再起動する前に自分のネットワークカード (私のは ed1 です) に変更するのを確認しましょう. :)
$fwcmd add allow ip from any to any via lo0
$fwcmd add allow ip from any to any via ed1
# 自分が着手したすべての接続を許可します.
$fwcmd add allow tcp from any to any out xmit tun0 setup
# 接続がいったん作成されると, それを許可して開けておきます.
$fwcmd add allow tcp from any to any via tun0 established
# 以下のサービスへ接続することをインターネット上のすべての人に許可します.
# この例では人々は ssh と apache に接続してよいということを示しています.
$fwcmd add allow tcp from any to any 80 setup
$fwcmd add allow tcp from any to any 22 setup
#
#外部からSMTP(メール)の使用を許可するには以下のポートを開けます。
#$fwcmd add allow tcp from any to any 25 setup
#IDENTには答えない(RSTフラグを返す)
#$fwcmd add reset tcp from any to any 113
#外部からのFTP接続は20、21番ポートの使用を許可すれば良いと思います。
#$fwcmd add allow tcp from any to any 20 setup
#$fwcmd add allow tcp from any to any 21 setup
#外部からのTELNETの接続許可は23番ポートを許可すれば良いと思います。
#$fwcmd add allow tcp from any to any 23 setup
# すべての ident パケットに RESET を送ります.
$fwcmd add reset log tcp from any to any 113 in recv tun0
# 規定されたサーバに対して *のみ* 外部 DNS の問い合わせを許可します.
$fwcmd add allow udp from any to x.x.x.x 53 out xmit tun0
# 応答とともに戻ってくることを許可します. :)
$fwcmd add allow udp from x.x.x.x 53 to any in recv tun0
# (ping と traceroute を動作させるために) ICMP を許可します.
# これを非許可にしたいと思うかもしれませんが,
# 需要を保ちつづけるには適していると感じています.
$fwcmd add 65435 allow icmp from any to any
# 残りの全てを拒否します.
$fwcmd add 65435 deny log ip from any to any
|