Некоторым программам иногда полезно запрещать лазить в интернет, например, чтобы не обновлялись или чтобы чего доброго не подумали что они нелицензионные ;). В Linux это делается просто, суть подхода следующая: создается группа пользователей, этой группе запрещается доступ в интернет, а программа запускается с ID этой группы. Шаги следующие:
1) Создаем группу и добавляем в неё текущего пользователя, чтобы он мог менять GID при запуске:
sudo groupadd noinet
sudo gpasswd -a `id -un` noinet
2) Создаем правило для iptables, которое будет выполняться перед подъемом сетевого интерфейса. Для этого создаем исполняемый файл в /etc/network/if-pre-up.d со следующим содержимым:
#!/bin/bash3) Всё, теперь можно перезагрузиться и запустить необходимую программку через:
iptables -A OUTPUT -m owner --gid-owner noinet -j DROP
sg noinet "<exec_name>", где <exec_name> - имя программы.
4) Для удобства можно создать вспомогательный скрипт, назвав его noinet и поместив его, скажем, в /usr/local/bin/noinet, со следующим содержанием:
#!/bin/bashТеперь запускать программы с запретом доступа в интернет можно ещё проще:
sg noinet "$*
noinet <exec_name>ЗЫ Взять с хабра: http://habrahabr.ru/post/82933/.
ЗЫЗЫ В частности, запрет доступа в инет полезен для Guitar Pro 6.
Большое спасибо за материал!
ОтветитьУдалитьОчень помогло :)