【ぱけっとふぃるたりんぐ】

パケットフィルタリング とは?

最終更新:
💡 通信の宛名を見て、通すか止めるか決める関所

パケットフィルタリングは、IPアドレスやポート、プロトコルなどをルールと照合し、通信を通すか止めるか決める仕組みです。接続状態を使う場合との違いも説明します。

📌 このページのポイント
パケットの宛名とルールを照合外部から来る通信の説明例フィルタ:宛先ポートと送信元を確認Web:TCP 443公開用ルールに一致許可 ✓管理:TCP 22管理元の範囲外×遮断ステートフルなら接続状態も使う通る通信 = 内容が安全、ではない
通信の許可条件は設定によります。ルールの評価順や、接続状態の扱いは製品ごとに確認します。
ひよこ ひよこ
パケットフィルタリングって何?
ペンギン先生 ペンギン先生
ネットワークを流れるパケットを、決めた条件に照らして通すか止めるか判断する仕組みだよ。荷物の中身をすべて調べる検査というより、宛名や差出人を確認する関所をイメージすると分かりやすいね。
ひよこ ひよこ
どんな情報を確認するの?
ペンギン先生 ペンギン先生
送信元と宛先のIPアドレス、TCPやUDPのポート番号、プロトコルなどだよ。通信の方向や通るインターフェースも条件にできる。すべてのパケットにTCP・UDPのポートがあるわけではないので、プロトコルに合った条件を指定するんだ。
ひよこ ひよこ
どんなルールを作るの?
ペンギン先生 ペンギン先生
図は「Web公開用のTCP 443は許可、管理用TCP 22は管理元だけ許可」の説明例だよ。管理元以外から来たTCP 22は止める。ルールの評価順や、どれにも合わない通信の扱いは製品によるので、設定と既定の動作を確認するんだ。
ひよこ ひよこ
ステートフルとステートレスは?
ペンギン先生 ペンギン先生
ステートレスはパケットごとの条件を見て判断するよ。ステートフルは接続の状態も追跡するので、許可した接続の戻りの通信などを区別できる。状態を記憶すれば何でも自動で通すわけではなく、状態とルールに基づいて判断するんだ。
ひよこ ひよこ
Linuxでも使えるの?
ペンギン先生 ペンギン先生
LinuxのNetfilterには通信を処理する仕組みがあり、nftablesやiptablesなどのツールでルールを設定できるよ。ただしツールがどの環境にも初めから入っているとは限らない。nftablesでは、接続追跡の状態を条件にしたルールも作れるんだ。
ひよこ ひよこ
これだけで攻撃を止められる?
ペンギン先生 ペンギン先生
基本的なIPやポートの条件では、許可したWeb通信の内容が悪意あるものかまでは分からないよ。ファイアウォールには状態の追跡やアプリ層の検査を備えるものもあるけれど、パケットフィルタリングだけに任せず、認証、更新、用途に合ったアプリ側の対策も組み合わせよう。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「パケットフィルタリング」って出てきたら「通信の宛名を見て、通すか止めるか決める関所」と思えばだいたいOK!
📖 おまけ:英語の意味
「Packet Filtering」 = パケットの選別
💬 packetは通信で運ぶデータの小包、filteringは選別という意味だよ。主に宛名に当たるヘッダーの条件を見て、そのパケットを通すか止めるか決めるんだ。

参考資料

← 用語集にもどる