一度はデフォルトに戻したipf.rulesですが、いろいろといじって以下の状態に落ち着きました。
WAN側が tun0: 210.254.71.72。
LAN側が rl0: 192.168.0.1。
WAN側が tun0: 210.254.71.72。
LAN側が rl0: 192.168.0.1。
- 参考にしたサイトでは、"block out from any port 136 >< 140 to any group 250"みたいな書き方をしていたのですが、これだと「portを使うならtcpかudpかはっきりしてくれよ!」みたいなエラーが出るので2行にわけてprotoを指定しました。
- ログを見てみると、210.254.71.72:* → 210.254.71.72:1521 をブロックしたとのログが大量に出ました。1521を listenしているのは 192.168.0.1なのに、なんでこう言う接続ができるんだか良くわからない・・・。
ので、自分から自分の1521宛てをpassするように設定。(1521で何が動いているのかは聞かないでください・・・) - どうしてもFF11ができなかったので、"block in proto udp all group 200"の行をコメントアウト。これでFFはできるようになった。
tcpの場合は、flags A/Aとか書けるけど、udpでも似たようなことはできないものかしらん?natしているportだけ通すとか・・・。
# IPF+NAT 用のルールファイル(静的ルール) # (group を指定していないルールはグループ 0) # IP オプションが指定されたもの、断片化されたもの、 # 短いパケットなどはここで破棄 block in log quick from any to any with ipopts block in log quick proto tcp from any to any with short ############################################ # 内部へ出ていくパケット(グループ 150) pass out on rl0 all head 150 block out from 127.0.0.0/8 to any group 150 block out from any to 127.0.0.0/8 group 150 block out from any to 192.168.0.1/32 group 150 ############################################ # 内部から来るパケット(グループ 100) pass in on rl0 all head 100 block in from 127.0.0.0/8 to any group 100 block in from 192.168.0.1/32 to any group 100 block in from 210.254.71.72/0xffffff00 to any group 100 ############################################ # 外部への出力(グループ 250) pass out on tun0 all head 250 # アドレス偽造防止 block out from 127.0.0.0/8 to any group 250 block out from any to 127.0.0.0/8 group 250 block out from any to 210.254.71.72/32 group 250 # プライベートアドレスやマルチキャストなどの破棄 block out from any to 10.0.0.0/8 group 250 block out from any to 172.16.0.0/12 group 250 block out from any to 192.168.0.0/16 group 250 block out from any to 0.0.0.0/8 group 250 block out from any to 169.254.0.0/16 group 250 block out from any to 192.0.2.0/24 group 250 block out from any to 224.0.0.0/4 group 250 block out from any to 240.0.0.0/4 group 250 # NetBIOS (port 137-139) block out proto tcp from any port 136 >< 140 to any group 250 block out proto udp from any port 136 >< 140 to any group 250 block out proto tcp from any to any port 136 >< 140 group 250 block out proto udp from any to any port 136 >< 140 group 250 # 接続された TCP パケットを許可 pass out proto tcp all flags A/A group 250 # FTP pass out proto tcp from any to any port = 20 flags A/A group 250 pass out quick proto tcp from any to any port = 21 flags S/SA group 250 pass out quick proto tcp from any port = 20 to any flags S/SA group 250 pass out quick proto tcp from any port = 21 to any flags A/A group 250 # 外部の DNS サーバへの問い合わせを許可 pass out proto tcp from any to any port = 53 flags S/SA group 250 pass out proto udp from any to any port = 53 group 250 # 外部への接続開始を許可 pass out proto tcp all flags S/SA group 250 # 外部の NTP サーバへの問い合わせを許可 pass out proto udp from any to any port = 123 group 250 # 内部から外部への ping のみ許可 block out proto icmp all group 250 pass out proto icmp all icmp-type 8 group 250 ############################################ # 外部(Internet)からの入力(グループ 200) pass in on tun0 all head 200 # アドレス偽装防止 block in from 127.0.0.0/8 to any group 200 block in from 210.254.71.72/32 to any group 200 block in from 192.168.0.1/0xffffff00 to any group 200 # 1521(なんでこれがいるのかわからない・・・) pass in quick proto tcp from 210.254.71.72/32 to 210.254.71.72/32 port = 1521 group 200 # プライベートアドレスやマルチキャストなどの破棄 block in from 10.0.0.0/8 to any group 200 block in from 172.16.0.0/12 to any group 200 block in from 192.168.0.0/16 to any group 200 block in from 0.0.0.0/8 to any group 200 block in from 169.254.0.0/16 to any group 200 block in from 192.0.2.0/24 to any group 200 block in from 224.0.0.0/4 to any group 200 block in from 240.0.0.0/4 to any group 200 # NetBIOS (port 137-139) block in quick proto tcp from any port 136 >< 140 to any group 200 block in quick proto udp from any port 136 >< 140 to any group 200 block in quick proto tcp from any to any port 136 >< 140 group 200 block in quick proto udp from any to any port 136 >< 140 group 200 # UDP パケットをデフォルトで拒否 #block in proto udp all group 200 # 接続された TCP パケットを許可 pass in quick proto tcp all flags A/A group 200 # FTP #pass in proto tcp from any port = 20 to any flags S/SA group 200 #pass in quick proto tcp from any to any port = 20 flags A/A group 200 #pass in proto tcp from any port = 21 to any flags A/A group 200 #pass in quick proto tcp from any to any port = 21 flags S/SA group 200 # 外部からの SSH 接続開始を許可 pass in quick proto tcp from any to any port = 22 flags S/SA group 200 # 外部からの SMTP 接続開始を許可 pass in quick proto tcp from any to any port = 25 flags S/SA group 200 # 外部からの POP3 接続開始を許可 pass in quick proto tcp from any to any port = 110 flags S/SA group 200 # 外部からのIMAP 接続開始を許可 pass in quick proto tcp from any to any port = 143 flags S/SA group 200 # IDENT には答えない block return-rst in quick proto tcp from any to any port = 113 group 200 # DNS サーバを立てている場合 pass in quick proto tcp from any to any port = 53 flags S/SA group 200 pass in quick proto udp from any to any port = 53 group 200 # WWW サーバを立てている場合 pass in quick proto tcp from any to any port = 80 flags S/SA group 200 pass in quick proto tcp from any to any port = 443 flags S/SA group 200 # それ以外の外部からの TCP 接続を拒否し、ログに残す block in log quick proto tcp all flags S/SA group 200 # 外部の DNS に問い合わせた帰りのパケット pass in proto udp from any port = 53 to any group 200 # NTP の帰り pass in proto udp from any port = 123 to any group 200 # 内部から外部への ping のみ許可 block in proto icmp all group 200 pass in proto icmp all icmp-type 0 group 200 # RFC2979 pass in proto icmp all icmp-type 3 group 200 ############################################ # ループバックへのルール(グループ 0) pass in quick on lo0 all pass out quick on lo0 all
カテゴリ
FreeBSDトラックバック(0)
このブログ記事を参照しているブログ一覧: ipfilter(2)
このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/782
コメントする