Страница 1 из 1

Пользователь без доступа в интернет

Добавлено: 21 мар 2021, 18:05
Kurum
Моя задача: заблокировать программе в wine доступ в интернет.
Было решено сделать это через iptables для пользователя. Но я столкнулся с проблемами из-за неполных мануалов.
Создаём группу пользователей без интернета: "group_no_inet"
sudo groupadd group_no_inet
Имя пользователя: "user_no_inet"
Опции:
- без домашнего каталога
- оболочка командной строки bash
sudo useradd user_no_inet -M -g group_no_inet -s /bin/bash
Даём пользователю пароль:
sudo passwd user_no_inet
Блокировка интернета для группы:
sudo iptables -I OUTPUT 1 -m owner --gid-owner group_no_inet -j DROP
Сохранение правила (чтобы после рестарта системы правило работало):
iptables-persistent save
Запуск нужной программы (тест):
sg group_no_inet firefox
Запуск нужной программы через Wine:
sg group_no_inet команда_запуска_в_вайне
Здесь меня смущает:
1. Команда
sudo iptables -I OUTPUT 1 -m owner --gid-owner group_no_inet -j DROP
в другом месте видел такую запись:
sudo iptables -A OUTPUT -p all -m owner --uid-owner user_no_inet -j DROP
Что из этого правильно?
2. Команда
sg group_no_inet firefox
Что такое "sg"?
Терминал отвечает:
Использование: sg группа [[-c] команда]
Но что это значит?
И здесь запуск программы осуществляется от группы, а не от пользователя. Блокировалась через iptables тоже группа, возникает вопрос - а зачем тогда создавать пользователя?
Я только вчера начал разбираться с пользователями в линукс.
И вообще команда sg group_no_inet firefox просит пароль, а я не пойму, что за пароль?

Пользователь без доступа в интернет

Добавлено: 21 мар 2021, 18:52
x230
Тоже интересно.

Пользователь без доступа в интернет

Добавлено: 21 мар 2021, 18:52
slant
Kurum писал(а):
21 мар 2021, 18:05
Что из этого правильно?
И то и другое, но в зависимости от контекста (других правил в цепочке). В первом случае правило добавляется первым в цепочку (смещая остальные за него), во втором случае - правило добавляется последним в цепочку. В первом случае используется фильтрация по группе, во втором - по пользователю.
А сделать можно и так и так. И даже одновременно. В общем-то у вас просто смешались два способа из разных мануалов. (По группе, или по юзеру).
Kurum писал(а):
21 мар 2021, 18:05
Что такое "sg"?
Для команд терминала есть универсальный ответ на вопрос "Что такое..." - команда man.
Наберите man sg, и приятного чтения. В кратце = что-то вроде sudo, но для групп.

Пользователь без доступа в интернет

Добавлено: 21 мар 2021, 20:09
Kurum
А какой пароль просит у меня терминал после ввода команды sg?

Пользователь без доступа в интернет

Добавлено: 21 мар 2021, 20:57
rogoznik
Kurum, какого-то пользователя

Пользователь без доступа в интернет

Добавлено: 21 мар 2021, 21:06
Kurum
Хм... Команда от группы, а пароль от пользователя? Я пробовал пароль от пользователя user_no_inet и пароль от рута - терминал пишет, что это неверные пароли. А других у меня нет... :blink2:
__________________
Я так понял, надо пользователя "user_no_inet" включать в группу "sudo", тогда пароль не спрашивает. Но программы от пользователя запустить не получается:

Код: Выделить всё

sudo -u user_no_inet opera
mkdir: cannot create directory '/run/user/1004': Permission denied
No protocol specified
[109700:109700:0321/214828.856454:ERROR:browser_main_loop.cc(1438)] Unable to open X display.
Почему директория не создана?
Или

Код: Выделить всё

sudo -u user_no_inet dolphin
No protocol specified
qt.qpa.xcb: could not connect to display :0
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, xcb.

Аварийный останов

Пользователь без доступа в интернет

Добавлено: 21 мар 2021, 21:55
slant
Kurum писал(а):
21 мар 2021, 20:09
А какой пароль просит у меня терминал после ввода команды sg?
slant писал(а):
21 мар 2021, 18:52
В кратце = что-то вроде sudo, но для групп.