最近、インターネットアクセスを特定のプログラムに制限する問題に遭遇しました。特定のソフトウェアを使用せずに、誰かがそれを行う良い方法をお勧めできますか?
最近、インターネットアクセスを特定のプログラムに制限する問題に遭遇しました。特定のソフトウェアを使用せずに、誰かがそれを行う良い方法をお勧めできますか?
回答:
私にとっての解決策はたまたま簡単でした。
groupadd no-internet
grep no-internet /etc/group
useradd -g no-internet username
usermod -a -G no-internet userName
check with:sudo groups userName
nano /home/username/.local/bin/no-internet
chmod 755 /home/username/.local/bin/no-internet
#!/bin/bash
sg no-internet "$@"
iptables -I OUTPUT 1 -m owner --gid-owner no-internet -j DROP
4.以下を実行して、Firefoxなどで確認します。
no-internet "firefox"
例外を作成し、プログラムがローカルネットワークにアクセスできるようにする場合:
iptables -A OUTPUT -m owner --gid-owner no-internet -d 192.168.1.0/24 -j ACCEPT
iptables -A OUTPUT -m owner --gid-owner no-internet -d 127.0.0.0/8 -j ACCEPT
iptables -A OUTPUT -m owner --gid-owner no-internet -j DROP
注:スポーンの場合、ルールは維持されます。たとえば、インターネットルールなしでプログラムを実行し、そのプログラムがブラウザウィンドウを開く場合でも、ルールが適用されます。