web-dev-qa-db-ja.com

iptables、特定のMACアドレスからのアクセスを許可

現在、iptables経由でIPアドレスを使用してサーバーにアクセスできるクライアントを制限しています。承認されたIPアドレスのみが接続できます。

ただし、これの問題は、クライアントがラップトップ上にあり、別の場所に移動した場合、IPが変更されたために接続できなくなることです。

さまざまな理由から、iptables認証が唯一の選択肢です。

IPアドレスの代わりにデバイスでアクセスを制限する方法はありますか?たとえば、特定のMACアドレスのみにポート5000への接続を許可します。

Iptablesでこれを行うことは可能ですか?コンピュータは同じネットワーク上にないことに注意してください。世界中のどこからでも接続できます。

7
user788171

MACアドレス は、インターネットを経由した接続では使用できないため、これを行うことはできません。

[〜#〜] vpn [〜#〜] を設定し、それを介して重要なインフラストラクチャへの接続のみを許可する方が安全です。それができない場合は、何らかの 2要素認証 を設定してみてください。

あなたが本当にiptablesだけで行き詰まっているなら、 ポートノッキング でうまくいくかもしれません。 Arch Linux wikiのこれにはかなり 良いチュートリアル があるようですが、警告に注意し、環境でサンプルのポート/シーケンスを使用しないでください。

上記の技術を組み合わせるとさらに良いでしょう。

7
user9517

Iptablesにはmacモジュールがあります。次のように使用できます。

/sbin/iptables -A INPUT -m mac --mac-source 00:0F:EA:91:04:08 -j DROP

nixCraftには、MACアドレスに基づいてフィルタールールを作成する方法に関する 詳細ガイド があります。

ただし、MACアドレッシングはリンク層固有であり、ルーティングを使用する場合は転送されないため、これは同じネットワークでのみ機能します。したがって、デバイスがルーティングを必要とする別のネットワーク上にある限り、これは機能しません。

7
Izzy