+1. Работает и 14.04 тоже. Примечание: в документах говорится : «Захват пакетов USB не разрешен для пользователей без полномочий root с использованием возможностей Linux. Вам необходимо захватывать пакеты, используя метод, описанный в I./a., Для постоянной установки set-user-id с помощью dpkg -statoverride или запуск Wireshark от имени root. "
JFS
Было бы очень полезно для новичков, если бы вы также могли описать, что делается с помощью приведенных выше команд, которые заставляют его работать
Ахмед
1
ЭТО РАБОТАЕТ на LTS 14.04 .... Большое вам спасибо.
августа
chmod +xделает dumpcap исполняемым для всех. Альтернативой может быть добавление пользователей, которым вы хотите разрешить захват, в группу wireshark.
Домен
2
Сообщение «Нет интерфейса для захвата в этой системе с текущей конфигурацией» обычно появляется, когда у вас нет прав доступа к сетевым интерфейсам для мониторинга. Попробуйте открыть терминал и запустить gksudo wireshark. Если появляется несколько сетевых интерфейсов, это потому, что когда вы запускаете wireshark без прав root, у вас нет прав для мониторинга.
Чтобы это исправить, запустите следующую команду в терминале:
«Попробуйте открыть терминал и запустить gksudo wireshark». Обратите внимание, что в этом документе говорится: «WIRESHARK СОДЕРЖИТ ДВУХ МИЛЛИОНОВ ЛИНИЙ КОДА ИСТОЧНИКА. НЕ ИСПОЛЬЗУЙТЕ ИХ КАК КОРНИ». прежде чем сделать это. Выполните sudo setcapкоманду вместо - или использовать , sudo dpkg-reconfigure wireshark-commonчтобы иметь пакет набор возможностей для вас.
0
Когда я попытался запустить wireshark, я получил эту ошибку:
Couldn't run /usr/bin/dumpcap in child process: Permission denied
поэтому я использовал его как root, что отключило LUA. Всплывающее окно, информирующее меня о том, что LUA был отключен, было настолько раздражающим, что я попытался это исправить.
во-первых, я проверил привилегии, запустив
ls -l /usr/bin/dumpcap
что привело к:
-rwxr-xr-- 1 root wireshark 96464 Jan 24 10:31 /usr/bin/dumpcap
это было очевидно, это то, что Wireshark говорил мне. Так что я просто сменил владельца с рута на свой акк
sudo chown -R $LOGNAME /usr/bin/dumpcap
Что сработало, теперь я могу запустить wireshark без рута
Который помечен как дубликат и привел меня сюда. Предлагаемое решение:
sudo chmod +x /usr/bin/dumpcap
Вышеприведенная команда действительно работает, но я бы хотел добавить ПРЕДУПРЕЖДЕНИЕ по безопасности . Это позволит захватывать пакеты для всех пользователей в системе. Это может быть временное решение, но не желаемое как постоянное решение.
Я следовал инструкциям на странице wireshark о привилегиях захвата:
(ПРИМЕЧАНИЕ. Замените / usr / bin на / usr / sbin, если вы получили сообщение об ошибке, указывающее, что dumpcap отсутствует в / usr / bin)
Запустите Wireshark от имени пользователя root и убедитесь, что вы видите список интерфейсов и можете выполнять захват в реальном времени. ( Я игнорировал эту инструкцию. НЕ РАБОТАЛ ДЛЯ МЕНЯ )
Установка сетевых привилегий для dumpcap, если ваше ядро и файловая система не поддерживают файловые возможности
В этом случае вам нужно будет сделать dumpcap set-UID для root.
sudo chown root /usr/bin/dumpcap
(ПРИМЕЧАНИЕ. Замените / usr / bin на / usr / sbin в этой и следующей командах, если вы получите сообщение об ошибке, указывающее, что dumpcap отсутствует в / usr / sbin)
sudo chmod u+s /usr/bin/dumpcap
Ограничение разрешения захвата только одной группой
После установки сетевых привилегий dumpcap:
Создайте пользователя "wireshark" в группе "wireshark".
sudo chgrp wireshark /usr/sbin/dumpcap
sudo chmod o-rx /usr/sbin/dumpcap
Убедитесь, что Wireshark работает только от пользователя root и от пользователя из группы «wireshark» ( ЭТОГО ШАГА Я ТОЛЬКО В КОНЦЕ - НЕ ЗАДЕЕ )
И, наконец, еще два шага:
sudo dpkg-reconfigure wireshark-common
Выберите «да».
Выйдите из ВСЕХ интерфейсов для пользователя (включая ssh, что было моей самой большой ошибкой) и войдите снова.
Надеюсь, вам следует запустить wireshark и увидеть все интерфейсы как обычный пользователь (без использования sudo)
wireshark &
И если вы проверите файл разрешения
ls -la /usr/bin/dumpcap
Это позволяет ТОЛЬКО ПОЛЬЗОВАТЕЛЮ и ГРУППЕ выполнить
gksudo wireshark
.Ответы:
Откройте терминал, нажав Ctrl+ Alt+, Tи введите следующие команды:
нажмите стрелку вправо и введите для да
Теперь вы сможете запустить его без рута, и вы сможете захватывать.
источник
chmod +x
делает dumpcap исполняемым для всех. Альтернативой может быть добавление пользователей, которым вы хотите разрешить захват, в группу wireshark.Сообщение «Нет интерфейса для захвата в этой системе с текущей конфигурацией» обычно появляется, когда у вас нет прав доступа к сетевым интерфейсам для мониторинга. Попробуйте открыть терминал и запустить gksudo wireshark. Если появляется несколько сетевых интерфейсов, это потому, что когда вы запускаете wireshark без прав root, у вас нет прав для мониторинга.
Чтобы это исправить, запустите следующую команду в терминале:
источник
sudo setcap
команду вместо - или использовать ,sudo dpkg-reconfigure wireshark-common
чтобы иметь пакет набор возможностей для вас.Когда я попытался запустить wireshark, я получил эту ошибку:
поэтому я использовал его как root, что отключило LUA. Всплывающее окно, информирующее меня о том, что LUA был отключен, было настолько раздражающим, что я попытался это исправить.
во-первых, я проверил привилегии, запустив
что привело к:
это было очевидно, это то, что Wireshark говорил мне. Так что я просто сменил владельца с рута на свой акк
Что сработало, теперь я могу запустить wireshark без рута
источник
Гуглил «не удалось запустить / usr / bin / dumpcap в дочернем процессе» и нашел этот вопрос:
Я не могу использовать wireshark "не удалось запустить / usr / bin / dumpcap в дочернем процессе"
Который помечен как дубликат и привел меня сюда. Предлагаемое решение:
Вышеприведенная команда действительно работает, но я бы хотел добавить ПРЕДУПРЕЖДЕНИЕ по безопасности . Это позволит захватывать пакеты для всех пользователей в системе. Это может быть временное решение, но не желаемое как постоянное решение.
Я следовал инструкциям на странице wireshark о привилегиях захвата:
https://wiki.wireshark.org/CaptureSetup/CapturePrivileges
Они РЕКОМЕНДУЮТ ограничить выполнение dumpcap определенной группой или пользователем.
Я следовал этим инструкциям (с адаптациями):
Установка сетевых привилегий для dumpcap, если ваше ядро и файловая система поддерживают файловые возможности
Убедитесь, что вы установили необходимые инструменты, такие как команда setcap.
sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
(ПРИМЕЧАНИЕ. Замените / usr / bin на / usr / sbin, если вы получили сообщение об ошибке, указывающее, что dumpcap отсутствует в / usr / bin)
Установка сетевых привилегий для dumpcap, если ваше ядро и файловая система не поддерживают файловые возможности
В этом случае вам нужно будет сделать dumpcap set-UID для root.
(ПРИМЕЧАНИЕ. Замените / usr / bin на / usr / sbin в этой и следующей командах, если вы получите сообщение об ошибке, указывающее, что dumpcap отсутствует в / usr / sbin)
sudo chmod u+s /usr/bin/dumpcap
Ограничение разрешения захвата только одной группой
После установки сетевых привилегий dumpcap:
Создайте пользователя "wireshark" в группе "wireshark".
sudo chgrp wireshark /usr/sbin/dumpcap
sudo chmod o-rx /usr/sbin/dumpcap
Убедитесь, что Wireshark работает только от пользователя root и от пользователя из группы «wireshark» ( ЭТОГО ШАГА Я ТОЛЬКО В КОНЦЕ - НЕ ЗАДЕЕ )
И, наконец, еще два шага:
Выберите «да».
Выйдите из ВСЕХ интерфейсов для пользователя (включая ssh, что было моей самой большой ошибкой) и войдите снова.
Надеюсь, вам следует запустить wireshark и увидеть все интерфейсы как обычный пользователь (без использования sudo)
И если вы проверите файл разрешения
Это позволяет ТОЛЬКО ПОЛЬЗОВАТЕЛЮ и ГРУППЕ выполнить
-rwxr-xr-- 1 корневой проволочный акул
источник