next up previous contents
Next: ここまでのまとめ Up: フィルタリングルール Previous: 外から内への自由なアクセス

禁止すべきアクセス

特権ポートである 0〜1023 番へのポートアクセスは全て禁止します。当然、 これ以前に必要なポートへのアクセスは quick 指定を使って許可していなければ なりません。


block in from any to INSIDE port < 1024 group 100

但し、この場合これらのポートへのパケットを全てドロップするだけなので、 明らかにファイアーウォールが落としている事が分かってしまいます。 そこで、ICMP の unreachable メッセージが返るようにして置きましょう。 但し、その際の発信元IPがファイアーウォールになっていると、頭隠して 尻隠さず状態になってしまいますから、発信IPは先に来たパケットの宛て先 IPにして置くことで、あたかもそのマシンが存在し、そこでそのサービスが 走っていないかのごとく見せかけることが出来ます(またはそのマシンが 存在しない)。


# block with port unreachable
block return-icmp-as-dest(port-unr) in from any to INSIDE port < 1024 group 100

一方、不正なIPオプションを伴ったパケットも落とした方が良いとされています。 これは、ルールの先頭で、プライベートアドレスのチェックの前くらいで 行っておけば良いでしょう。


block in log quick from any to any with ipopts group 100
block in log quick proto tcp from any to any with short group 100

2行目は不当に短いTCPのパケットを落とすためのものです。

その他にも、以下のポートへのアクセスは禁止しておきます。

1025 lister
1524 ingreslock
2000 openwin
2049 NFS
2766 listner(SystemV)
6000-6063 X11
6667 IRC



Noriyo Kanayama