Linuxで特定のWebアドレスへのトラフィックを許可し、他のすべてのトラフィックを制限するにはどうすればいいですか

Linuxで特定のWebアドレスへのトラフィックを許可し、他のすべてのトラフィックを制限するにはどうすればいいですか

3G カードが内蔵されている Linux (Ubuntu 14.04、64 ビット) システム デバイスで、インターネットへのアクセスを制限したいと考えています。カードがアクティブな場合、システムがパターンとを使用して任意の URL に接続できるシナリオを構築したいと考えています。mysite.com着信google.com接続は問題になりません。Web アドレスをフィルタリングできない場合は、IP アドレスも使用できます。

Iptables は、その答えでしょうか? 2 つのサイトへのトラフィックのみを許可し、他のサイトへのトラフィックは許可しないというルールを追加するには、IP テーブルをどのように使用すればよいでしょうか。この手順を何度も繰り返し実行したいのですが (カードを挿入または取り外した後など)。どうすれば、目的の結果を得ることができますか?

答え1

はい、iptalbesフィルタリング部分の答えはそうです。

デバイスを挿入するときにいくつかのルールを有効にするには、ディストリビューションに応じて、デバイスの命名や USB 挿入などの処理を調べてudev、特定のスクリプトを実行するようにすることができます。

Ubuntu を実行している場合は、 を確認するのがより簡単な方法です/etc/network/interfaces。3g カードには固定のインターフェイス名があります (udev のおかげです)。そのため、ファイルでは、このインターフェイスに対して iptables 構成を「オンザフライ」で適用するスクリプトを指定interfacesできます。pre-uppost-up

関連情報