Настройка проводов для пользователя без root

6

Я настраиваю wirehark для запуска как пользователь без root, a la здесь , то есть:

sudo apt-get install wireshark
sudo dpkg-reconfigure wireshark-common 
sudo usermod -a -G wireshark $USER
(restart)

Это здорово. Но когда я пытаюсь запустить wirehark в качестве пользователя wirehark, используя:

sudo -s -u $USER wireshark

Я получаю следующую ошибку:

no protocol specified
gtk-warning ** cannot open display

Часть "no protocol specified" выглядит довольно прямолинейно. И, как gtk-предупреждение не может открыть дисплей, похоже, относится именно к этой проблеме .

  

«У вас есть два способа заставить это работать: предоставить его или получить root.   Вы (greg) можете предоставить его с помощью «xhost local: root». Или root может принять это, потому что он может получить доступ к вашим файлам:   'export AUTHORITY = / home / greg / .Xauthority'. "

Это не имеет смысла для меня. Какой смысл предоставлять доступ другому пользователю, если они все равно не могут открыть программу? Это разделение выполняется по соображениям безопасности, поэтому не следует делать это выше, возвращая предыдущий комментарий

  

«Это связано с управлением доступом к вашему X-серверу. Вы не хотите, чтобы кто-либо открывал окна на вашем экране, так что, если вы запустили X-сервер под своей собственной учетной записью (greg), тогда любой другой пользователь (например, root) не имеет к нему доступа. "

TLDR; Является ли эта стандартная практика и способ ее выполнения для достижения разделения между учетной записью root и другой учетной записью? Мне кажется, что это «взломать».

    
задан user125290 23.01.2013 в 00:03
источник

1 ответ

6

$USER здесь, чтобы увидеть как переменную оболочки. Третья команда добавляет пользователя к wireshark group и должна быть заменена на sudo adduser <yourUser> wireshark .
Теперь вы должны иметь возможность ссылаться на wirehark как на себя (больше не нужно sudo).

    
ответ дан guntbert 28.01.2013 в 21:55