できてほしいこと, あるいは妄想


IP 関連のあれこれ

てゆうか, 今更ですが, ipfwadm とか ipchains とかを調べてました. IP レベルでパケットを遮断してしまえば, せつないアクセス制限に 悩まされることもないわけでして. nessusd が動きっぱなしでも 3001 を閉じておけば問題無いわけだ.

と思って, デフォルトが deny で, 使うポートを明示的に開けてみた. わ! 自分から, 全く通信できん. しばらくして判った. 相手に syn は送れても, 自分側のソケットに ack が来てないのだ. 明示的に開いたポート以外は カーネルが遮断してるから.

なーんてことに, 今ごろ気づいたってことは秘密だ.

むー. IPスクリーニングは, 特定のポートを塞ぐ, という使い方になるわけだな. つまり, 自分の起動しているサービスについては, 完全に把握してないとだめだってことだ. それから, ポリシーを変更して deny にすると syn が来ても, 何も言わずに捨てるが, 何も設定しない場合は, サービスの無いポートへの接続には acknowledgement と reset フラグの立ったパケットが返って, 「閉じてますよ」と 教えることも判った.

いや, ちとむかついた奴が居たので, 出入り禁止にしようと思ったのが そもそもの発端なのですが. おもしろいですね. ipchains . 処理として accept とか deny の他に chain を書けるところが良いね. これでインターフェースがあったり無かったりして, それに応じて設定が勝手に変わる IP スクリーニングルータが 作れたりするんですね. ダイナミックなセキュリティリクワイアメントに対する リアルタイムのリライアビリティとアベイラビリティを提供する オープンソースによるソリューションですね. (息つぎ無しで読むこと.)

いやああ, まじで, Linux (カーネル) ってスゲエっすね. こりゃ一日一回は カーネルをコンパイルしないとね! 参考文献は, おおつかまさひと さんによる, JF の ipchains-mini-HOWTO でした. あと, ethereal の平和利用 (笑). そうそう, このプログラムって, ネットワークの教育効果絶大だぞ. なんせ, ヘッダを剥いたらヘッダが出て来る階層構造とか, tcp の sequence number とか, 目で見て判るんだもんよ. それに, ssh の普及にも, 使えるべ?


記事リストへ