Недавно я столкнулся с проблемой ограничения доступа в Интернет для определенных программ. Может ли кто-нибудь порекомендовать хороший способ сделать это без использования какого-либо конкретного программного обеспечения?
Решение для меня оказалось простым.
groupadd no-internet
grep no-internet /etc/group
useradd -g no-internet username
usermod -a -G no-internet userName
проверить с : 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
НОТА: В случае нереста правила сохранятся. Например, если вы запускаете программу с нет интернета rule, и эта программа откроет окно браузера, но правила будут применяться.