一度はデフォルトに戻したipf.rulesですが、いろいろといじって以下の状態に落ち着きました。

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

カテゴリ

トラックバック(0)

このブログ記事を参照しているブログ一覧: ipfilter(2)

このブログ記事に対するトラックバックURL: https://www.wizard-limit.net/cgi-bin/mt/mt-tb.cgi/782

コメントする

このブログ記事について

このページは、falseが2004年10月 9日 09:01に書いたブログ記事です。

ひとつ前のブログ記事は「ipfilter & ipnat」です。

次のブログ記事は「samba3.0へのアップグレード」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

広告

Powered by Movable Type 6.1.1