我正在尝试在 Debian 机器上使用它wireshark
,但是当我使用非 root 用户帐户运行它时,它没有检测到任何网络接口。
我也尝试以 root 身份运行 wireshark,但是 wireshark 告诉我这种方法不安全。
我还阅读了常见问题解答并发现“读取 /usr/shared/wireshark-common/README.Debian 文件中的文件” - 我确实阅读了该文件,但我仍然不知道我应该做什么。
答案1
通过安装 Wireshark 包,非 root 用户将不会自动获得捕获数据包的权限。
您需要有root
权限才能使用 Wireshark(或dumpcap
)捕获流量。根据您提到的手册,应该可以将您的用户添加到wireshark
组中:
useradd -G wireshark your-user-name
不知道单凭这一点是否有效。这里还有Wireshark Blog 上的指南对此进行了解释多一点:
sudo -s
groupadd -g wireshark
usermod -a -G wireshark your-user-name
chgrp wireshark /usr/bin/dumpcap
chmod 4750 /usr/bin/dumpcap
话虽如此,您可以安全地运行 Wireshark 来检查、编辑或过滤数据包转储,无需root
权限。
答案2
该文件实际上是/usr/share/doc/wireshark-common/README.Debian
。
你需要做的是:
sudo dpkg-reconfigure wireshark-common
选择“是”选项。
usermod -a -G wireshark your-user-name
注销并重新登录以获取新的组成员身份,现在您可以以非 root 用户身份运行 wireshark。
答案3
我认为这是安装过程中 Wireshark 配置出现的问题apt
。
在运行dpdg-reconfigure wireshark
或安装过程中,它会询问Should non-superusers be able to capture packets?
。按左箭头键将使“是”标记为红色。但是,按右箭头键并且没有“否”允许非超级用户捕获数据包,如下图所示。