PFファイアウォールで特定のMACアドレスをブロックしたい。 PFファイアウォールがレイヤー3で機能すること、つまりMACアドレスではなくIPアドレスで機能することは知っていますが、PFファイアウォールでMACアドレスをブロックする方法はありますか
いいえ、ありません。
人々がMACアドレスを変更するのは簡単なことですよね?さらに、パケットが後の3ルーティングデバイスを通過すると、送信元マシンのMacアドレス情報が失われます。したがって、このようなことをしたい場合でも、サーバーと同じL2LAN上にあるクライアントに対してのみ機能します。
ここで実際に何を達成しようとしていますか?
これを行うには、イーサネットフレームにタグを付ける必要があります。 ( http://www.openbsd.org/faq/pf/tagging.html )
タグ付け/フィルタリングを実行するマシンがブリッジとしても機能している場合は、イーサネットレベルでタグ付けを実行できます(4)。 tagキーワードを使用するbridge(4)フィルタルールを作成することにより、送信元または宛先MACアドレスに基づいてフィルタリングするようにPFを作成できます。 Bridge(4)ルールは、ifconfig(8)コマンドを使用して作成されます。
例:
# ifconfig bridge0 rule pass in on fxp0 src 0:de:ad:be:ef:0 tag USER1
そして、pf.confで:
pass in on fxp0 tagged USER1
eEAAは正しいです、ここには本当のセキュリティはありません。
このようにMacアドレスを変更します
ifconfig eth0 hw ether 02:01:02:03:04:08