如何以 root 权限运行 wireshark?

如何以 root 权限运行 wireshark?

Wireshark 的标准安装不允许程序访问网络接口的权限。

我想我必须用 来运行该程序sudo,但不知道如何将其添加到图标中 - 如果这是方法的话。

答案1

对于 WireShark 来说,有一个更好的方法。通常需要 root 权限的部分是数据包收集应用程序,可以将其配置为允许某些人使用它sudo,而无需gksu、 、etc

在终端中(在终端中非常重要,而不仅仅是 Alt+F2 对话框)运行以下命令:

sudo dpkg-reconfigure wireshark-common

这将询问您是否允许非 root 用户嗅探。这正是我们的目标,因此选择Yes并按回车键。

重新配置 wireshark-common

这将添加一个wireshark组。该组中的任何人都可以嗅探而无需 root 权限。这显然比仅仅允许更安全任何人嗅探,但确实意味着没有密码检查。从技术上讲,任何有权访问计算机并使用帐户登录的人wireshark都可以嗅探。如果您可以接受,请继续。

如果没有,请再次运行并选择否。

然后你只需要将用户添加到该组。运行以下命令:

sudo adduser $USER wireshark

然后重启或注销。当你重新登录时,它应该会让你开始嗅探,而不用担心是 root 用户。

答案2

实际上,您不需要以 root 身份启动 WireShark。请阅读官方网站. 简而言之你应该这样做:

sudo groupadd wireshark
sudo usermod -a -G wireshark $USER
sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod o-rx /usr/bin/dumpcap
sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
sudo getcap /usr/bin/dumpcap

然后注销并重新登录。

注意:此方法已在 16.04 LTS、17.10 和 18.04 LTS 上测试过。

答案3

您还可以通过gksu wireshark从终端运行以 root 权限运行 Wireshark。

请注意,在此模式下运行 Wireshark 存在安全问题,即任何危害 Wireshark 的漏洞现在都具有 root 权限,而不是用户权限。Wireshark 比其他应用程序更令人担忧,因为就其本质而言(捕获和处理任意输入),Wireshark 比典型的桌面应用程序更容易受到攻击。您在 SOHO 网络上可能很安全,但在继续之前您应该意识到这个问题。

引用:

答案4

您也可以尝试一下,打开终端,运行此命令

# setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap

以非 root 用户身份运行 wireshark

相关内容