俺だけのために Ore! Tips!

ipfw 設定(Samaba を利用するために)

2004年06月21日 作業

ipfw を動かしたんで、Windows2000 クライアント(192.168.0.7)から samba サーバ(192.168.0.5)に接続できなくなってしまった。

とりあえず、192.168.0.0/24 から 192.168.0.5 の 137,138,139,445 ポートへの接続は許すよう、以下のようなルールを追加。

ipfw add 600 allow tcp from 192.168.0.0/24 to 192.168.0.5 137-139,445
ipfw add 610 allow tcp from 192.168.0.5 to 192.168.0.0/24 137-139,445
ipfw add 620 allow udp from 192.168.0.0/24 to 192.168.0.5 137-139,445
ipfw add 630 allow udp from 192.168.0.5 to 192.168.0.0/24 137-139,445


さらに、

ipfw add 65000 deny log all from any to any

というルールを追加して、弾いたパケットを見てみることにした。

で、Windows2000 側で Fileserver1 という名前の samba サーバを検索してみると、/var/log/security には以下のようなログが書き込まれる。

Jun 21 22:38:40 mikan /kernel: ipfw: 65000 Deny UDP 192.168.0.7:137 192.168.0.255:137 in via ed0

ええ?137 ポートへの接続を蹴られてるの?なんでぇ?

しかも、すでに

allow ip from 192.168.0.7 to 192.168.0.5
allow ip from 192.168.0.17 to 192.168.0.5


というルールがあったわけだから、特別 137 などのポートを開けてやらなくても本来なら接続できるはずだったんじゃ・・・
と思ったら、よく見りゃ 192.168.0.7 から 192.168.0.5 にではなく、192.168.0.255(ブロードキャストアドレス)にパケット投げてんじゃん。
つーことは、

ipfw add 600 allow tcp from 192.168.0.0/24 to 192.168.0.0/24 137-139,445
ipfw add 620 allow udp from 192.168.0.0/24 to 192.168.0.0/24 137-139,445


でないと駄目なんじゃないの?ってことで、上記ルールを追加。
その結果、/var/log/security には何のログも出なくなったので、NetBIOS がらみのパケットは全て通っているはずだがやはり接続できない・・・。
そこで、SWAT から smbd & nmbd を再起動してみたら、やっと Windows2000 クライアントから samba サーバへの接続ができるようになったのである。???

ちなみに、SWAT に接続する前に、

ipfw add 540 allow tcp from 192.168.0.0/24 to 192.168.0.5 901
ipfw add 545 allow udp from 192.168.0.0/24 to 192.168.0.5 901


とルールを追加しておくのを忘れないように。

ということで、忘れず /etc/rc.ipfw に下記のルールを追加しておくなり。

# NetBIOS (Samba)
${fwcmd} add 540 allow tcp from 192.168.0.0/24 to 192.168.0.5 901
${fwcmd} add 545 allow udp from 192.168.0.0/24 to 192.168.0.5 901
${fwcmd} add 600 allow tcp from 192.168.0.0/24 to 192.168.0.0/24 137-139,445
${fwcmd} add 620 allow udp from 192.168.0.0/24 to 192.168.0.0/24 137-139,445


前ページに戻る


Copyright (C) 2003-2004 S.Maaasamasa.