アプリケーションのインターネットアクセスをブロックする方法


8

アプリケーションを実行してインターネットにアクセスできないようにする方法を探しています。おそらく、これを行うための特定のプログラムをインストールする必要はありません。私が見つけた答えのほとんどはこの投稿に関するものなので、この解決策を試しました。簡単に言うと、(関連するniコマンドを使用して)インターネットなしのグループを作成し、このグループを使用してアプリケーションを起動しました。しかし、それはおそらく投稿が2009年のものであり、iptablesの何かが変更されたために、完全には機能しません(私はUbuntu 14.04を使用しています)。たとえば、出力を実行すると、ソリューションはうまく機能します。しかし、Firefoxやwget(例:)などの他のプログラムでは、インターネット接続は引き続き機能します。どうすれば解決できますか?ni "ping google.com"ping: sendmsg: Operation not permittedni firefox

回答:


3

を使用apparmorして、一部のアプリケーションのネットワークトラフィックを拒否できます。まず、をインストールする必要がapparmorありapparmor-utilsます。

sudo apt-get install apparmor*

その後、アプリケーションにプロファイルを生成できます...

sudo aa-genprof /usr/bin/google-chrome

次のステップはNetworking、プロファイルのパーツを次のように変更することです。

sudo nano /etc/apparmor.d/usr.bin.chromium-browser

audit deny network,
audit deny network inet stream,
deny network inet6 stream,
deny @{PROC}/[0-9]*/net/if_inet6 r,
deny @{PROC}/[0-9]*/net/ipv6_route r,
deny capability net_raw,

次に、apparmor_parserで設定を確認し、設定を再読み込みします

sudo apparmor_parser -r /etc/apparmor.d/usr.bin.chromium-browser

このアプリのモードをcomplainからenforceaka turnonに変更しますapparmor

sudo aa-complain /etc/apparmor.d/usr.bin.chromium-browser

ここここここで見つけることができるより多くのマニュアル


それは動作しません。ファイル/etc/apparmor.d/usr.bin.APPNAMEの行の後に行/usr/bin/APPNAME r,を追加していますが、それが正しいかどうかはわかりません。
ᴜsᴇʀ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.