如果以超级用户身份运行,Xming 将无法启动

如果以超级用户身份运行,Xming 将无法启动

设想:

我正在尝试跑步WireShark通过xming服务器位于 Windows 8.1 计算机上树莓派 B+这是硬连线到无线网络菠萝马克5

使用以下命令Xming成功启动

pi@raspberrypi~$ wireshark -i interface name

然而,当我尝试访问(任何接口,包括使用airmon-ng生成的接口)时,我得到

“您无权访问该界面”

来自wireshark。

所以我很自然地说,“Derp,你需要用 sudo 运行它”

当我跑步时

pi@raspberrypi~$ sudo wireshark -i interface name

xming 无法连接,它说

PuTTY X11 proxy: wrong authorisation protocol attempted
(wireshark:3123): Gtk-WARNING **: cannot open display: localhost:10.0

我完全不知道为什么会发生这种情况。

我研究了一下,最建议添加

“ForwardX11Trusted 是”

到我的 sshd_config 文件,但当我这样做并尝试重新启动我的 ssh 服务器时,它说这是一个坏密钥。我也尝试过 ssh_config。我没有收到重新启动错误,但我仍然遇到相同的 xming 问题。

在此输入图像描述 在此输入图像描述

答案1

这个是正常的。您已以 user 身份连接到 Pi pi,请求ssh(在本例中为 PuTTY)将您的 X 连接转发到您的桌面。这仅允许piPi 上的用户访问桌面上的 X 服务器;当您运行时wiresharkroot由于root您的 Pi 无法访问您的 X 服务器,您会看到您给出的错误消息。

我会给你ssh解决方案,但它是错误的做法在这种情况下;我也会给你正确的方法wireshark

通常,要以连接到远程计算机的用户以外的其他用户身份运行 X 程序,您需要合并 X 权限信息。在这种情况下,要允许root连接到桌面,请在 Pi 上运行以下命令:

xauth extract - $DISPLAY | sudo xauth merge -

这会提取您pi用户的 X 权限并将其与您root用户的 X 权限合并。您可能会收到有关/root/.Xauthority不存在的警告;没关系,xauth将为您创建该文件。您现在应该能够wiresharkroot.

wireshark不建议运行root; Wireshark 中经常发现安全漏洞.../usr/share/doc/wireshark/README.Debian给出了两种可能的方法。第一个是运行dumpcapasroot以捕获您感兴趣的所有流量,然后运行wireshark以分析生成的输出(您可以dumpcap在 Pi 上运行,然后在台式计算机上使用 Wireshark)。第二种是将你的pi用户添加到wireshark组中,并重新配置Wireshark以允许该wireshark组的成员捕获流量;您可以通过在 Pi 上运行以下命令来完成此操作:

adduser pi wireshark
sudo dpkg-reconfigure wireshark-common

并在配置屏幕中选择“是”。然后运行wiresharkpi.

相关内容