Мне нужно запустить локальный Wireshark из пользовательского веб-интерфейса веб-службы, чтобы немедленно начать сеанс захвата, используя какой-либо внешний подключаемый модуль захвата для подключения к веб-службе. При использовании Firefox запускается Wireshark, а затем работает захват пакетов. При использовании Chromium Wireshark запускается, но затем происходит сбой захвата пакетов, поскольку /usr/bin/dumpcap кажется ограниченным.
- установил Wireshark, чтобы его можно было использовать от пользователей без полномочий root.
- добавил моего пользователя в группу wireshark:
sudo gpasswd -a $USER wireshark
- запустил wireshark с терминала bash и успешно начал захват.
Далее я зарегистрировал запись рабочего стола (xdg-settings set default-url-scheme-handler xxx xxx.desktop
):
[Вход на рабочий стол]
Кодировка=UTF-8
Name=Обработчик URL-адреса удаленного захвата
Тип = Приложение
Exec=wireshark -k -i xxx -o extcap.xxx.url:%u
MimeType=х-схема-обработчик/ххх
Терминал=ложь
НетДисплей=истина
Категории=Полезность
Щелчок по ссылке xxx:// правильно запускает Wireshark, но затем Wireshark не может запустить дампкап:
Не удалось запустить /usr/bin/dumpcap в дочернем процессе: разрешение отклонено
В Dumpcap установлены возможности файла POSIX, но похоже, что песочница хрома может изменить ограничивающие возможности?
$ ls -l `какой дампшап`
-rwxr-xr-- 1 root wireshark 121344 15 марта 18:01 /usr/bin/dumpcap
$ getcap `какой дампкап`
/usr/bin/dumpcap cap_net_admin,cap_net_raw=eip
Как я могу зарегистрировать свое приложение в хроме, чтобы оно правильно запускалось с полными правами пользователей, чтобы Wireshark мог запускать дампкап?