Чтобы для работы tcpdump (или wireshark, да и вообще любой утилиты, использующей libpcap) не требовалось привилегий рута нужно задать для утилиты соответствующие привилегии с помощью setcap:
$ sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' <application>
Пример для tcpdump:
$ sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/sbin/tcpdump
Посмотреть разрешения для программы можно с помощью getcap, например:
$ getcap /usr/sbin/tcpdump
/usr/sbin/tcpdump = cap_net_admin,cap_net_raw+eip
В Debian утилита setcap предоставляется пакетом libcap2-bin
Комментариев нет:
Отправить комментарий