Ssh

如果以超級使用者身份執行,Xming 將無法啟動

  • July 2, 2017

設想:

我正在嘗試通過位於 Windows 8.1 機器上的 xming 伺服器執行WireShark,該伺服器Raspberry Pi B+硬連線到Wifi Pineapple Mark 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

我完全不知道為什麼會這樣。

我對其進行了一些研究,大多數建議添加

“ForwardX11信任是”

到我的 sshd_config 文件,但是當我這樣做並嘗試重新啟動我的 ssh 伺服器時,它說它是一個壞密鑰。我也試過 ssh_config。我沒有收到重啟錯誤,但我仍然遇到了同樣的 xming 問題。

在此處輸入圖像描述 在此處輸入圖像描述

這很正常。您已以 user 身份連接到您的 Pi pi,請求ssh(或在本例中為 PuTTY)將您的 X 連接轉發到您的桌面。這僅允許piPi 上的使用者訪問您桌面上的 X 伺服器;當您執行wiresharkas時root,因為root在您的 Pi 上無法訪問您的 X 伺服器,您會看到您給出的錯誤消息。

我會給你ssh解決方案,但在這種情況下這是錯誤的方法;我也會給你正確的方法wireshark

通常,要以與您連接到遠端機器的使用者不同的使用者身份執行 X 程序,您需要合併 X 權限資訊。在這種情況下,要允許root連接到您的桌面,請在您的 Pi 上執行以下命令:

xauth extract - $DISPLAY | sudo xauth merge -

這會提取您pi使用者的 X 權限並將其與您root使用者的 X 權限合併。/root/.Xauthority您可能會收到關於不存在的警告;沒關係,xauth將為您創建文件。您現在應該能夠wiresharkroot.

但是不推薦執行wiresharkas ;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.

引用自:https://unix.stackexchange.com/questions/199001