#ubuntu
Как можно отключить сеть пользователю на Ubuntu 14.04/ 16.04? (Пользователь — не администратор.)
Ответы
Ответ 1
Команда для отключения интернета нашлась на askubuntu: sudo iptables -A OUTPUT -p all -m owner --uid-owner-j DROP Эта команда сбрасывает все пакеты, исходящие от пользователя . Теперь нужно сделать это изменение постоянным. В ответе на askubuntu предлагают для этого создать в директории /etc/network/if-up.d/ скрипт, который вызывает команду выше: cd /etc/network/if-up.d/ gksudo gedit block_user sudo chmod +x block_user У меня это почему-то не сработало:(, после перезагрузки sudo iptables -L показал таблицу без упоминания этого пользователя. Другой способ нашелся на ubuntu.ru. Кроме помещения скрипта в /etc/network/if-up.d/, там предлагают вызывать скрипт из /etc/network/interfaces: gksudo gedit /etc/network/interfaces добавляем последней строкой post-up /etc/network/if-up.d/block_user Проверяем после перезагрузки: $ sudo iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination DROP all -- anywhere anywhere owner UID match Теперь работает. UPD: Поскольку gksudo больше не рекомендуется и его собираются отменить, редактирование можно сделать, например, так: (лучше открыть для этого еще один терминал) sudo -i вводим свой пароль и дальше работаем от имени rootа. Эта команда также перемещает в /root. Далее: root:~# cd /etc/network/if-up.d/ root:~# gedit block_users & root:~# chmod +x block_user root:~# gedit /etc/network/interfaces root:~# exit Обратите внимание: если закрыть терминал с rootом или сделать exit, gedit закроется. Поэтому это можно делать только после окончания редактирования. Источник:askubuntu.
Комментариев нет:
Отправить комментарий