
У меня есть пользователь, который запускает пакетный вызов mininet для имитации сетей на интерфейсе loopback. Им, скорее всего, понадобится Wireshark для отладки этих виртуальных сетей, которые они создают. Однако у нас строгая сетевая политика, и сканирование пакетов в основной сети запрещено.
Можно ли как-то настроить Wireshark и ограничить его работу только с интерфейсом loopback?
Спасибо
решение1
Похоже, что хотя wireshark
есть возможность выбора интерфейса, она позволяет переопределить его в графическом интерфейсе.
Таким образом, вы можете предоставить sudo
привилегии для tcpdump
и или tshark
(текстовый режим Wireshark) для захвата пакетов, а затем прочитать их позже с помощью wireshark -r file
.
У вас есть опция -i в tcpdump
или tshark
вызов ее из командной строки; вы можете создать авторизацию sudo для tshark
или tcpdump
, которая позволяет вашему пользователю использовать ее только с -i interface
; основной интерфейс обратной связи обычно находится lo
в Linux
как в /etc/sudoers
:
user ALL=NOPASSWD: /usr/sbin/tcpdump -i lo -s0 -w - --
«--» — это сокращение от стандарта разбора аргументов ´getopt`/вызова для остановки аргументов, чтобы запретить пользователю добавлять больше интерфейсов, чем ему разрешено.
(Я не определил файл захвата специально, чтобы пользователь мог перенаправить трафик для файла. Определение файла захвата с предсказуемым именем как привилегированного пользователя из процедуры, вызываемой от пользователя с более низкими привилегиями, имеет последствия для безопасности)
Я бы запомнил, что пользователь может увидеть свои sudo
разрешения с помощью
sudo -l
потому что обычно такие команды приходится вводить дословно, чтобы они sudo
сработали sudo
.