在本教學中,你將學習如何在 Ubuntu 和其它基於 Ubuntu 的發行版上安裝最新的 Wireshark。同時你也將學習如何在沒有 sudo 的情況下來執行 Wireshark,以及如何設定它來進行封包嗅探。
Wireshark 是一款自由開源的網路協定分析器,它在全球被廣泛使用。
通過使用 Wireshark,你可以實時捕獲網路的傳入和傳出封包,並將其用於網路故障排除、封包分析、軟體和通訊協定開發等。
它適用於所有主流的桌面作業系統,如 Windows、Linux、macOS、BSD 等。
在本教學中,我將指導你在 Ubuntu 和其他基於 Ubuntu 的發行版上安裝 Wireshark 。我還將介紹如何設定和設定 Wireshark 來捕獲封包。
Wireshark 適用於所有主流 Linux 發行版。你應該檢視官方安裝說明。因為在本教學中,我將著重在僅基於 Ubuntu 的發行版上安裝最新版本的 Wireshark 。
Wireshark 可以在 Ubuntu 的 Universe 儲存庫中找到。你可以啟用 universe 儲存庫,然後按如下方式安裝:
sudo add-apt-repository universesudo apt install wireshark
這種方法的一個小問題是,你可能並不總是得到最新版本的 Wireshark 。
例如,在 Ubuntu 18.04 中,如果你使用 apt 命令檢查 Wireshark 的可用版本,可用版本會顯示是 2.6 。
abhishek@nuc:~$ apt show wiresharkPackage: wiresharkVersion: 2.6.10-1~ubuntu18.04.0Priority: optionalSection: universe/netOrigin: UbuntuMaintainer: Balint Reczey <[email protected]>
然而, Wireshark 3.2 穩定版已經在幾個月前發布了。當然,新版本擁有新的特性。
那麼在這種情況下,你應該怎麼辦呢?謝天謝地, Wireshark 開發者提供了一種官方 PPA 方式,你可以使用它在 Ubuntu 和其它基於 Ubuntu 的發行版上安裝最新穩定版本的 Wireshark.
我希望你熟悉 PPA。如果沒有,請閱讀我們關於 PPA 的優秀指南,以便完全理解它。
開啟終端並逐個使用以下命令:
sudo add-apt-repository ppa:wireshark-dev/stablesudo apt updatesudo apt install wireshark
即使安裝了舊版本的 Wireshark ,它也將更新為新版本。
安裝時,系統將詢問你是否允許非超級使用者捕獲封包。選擇“Yes”允許,選擇“No”限制非超級使用者捕獲封包,最後完成安裝。
如果在上一次安裝中選擇了“No”,則以 root 使用者身份執行以下命令:
sudo dpkg-reconfigure wireshark-common
然後按 tab
鍵並使用確認鍵選擇“No”:
由於你允許非超級使用者捕獲封包,因此你必須將該使用者新增到 wireshark
組。使用 usermod 命令將自己新增到 wireshark
組。
sudo usermod -aG wireshark $(whoami)
最後,重新啟動你的 Ubuntu 系統對你的系統進行必要的修改。
冷知識
Wireshark 於 1998 年首次發布,最初被稱為 Ethereal 。2006 年,由於商標問題,開發商不得不將其名稱改為 Wireshark 。
你可以從應用程式啟動器或者命令列啟動 Wireshark 應用。
如果從命令列啟動,只需要在你的控制台中輸入 wireshark
:
wireshark
要是從圖形化介面啟動,需要在搜尋欄搜尋 Wireshark 應用,並按確認鍵。
現在,讓我們來玩玩 Wireshark 吧。
當你啟動 Wireshark 的時候,你會看到一個介面列表,你可以使用它來捕獲這個介面接收和傳送的封包。
你可以使用 Wireshark 監視許多型別的介面,例如,有線、外部裝置等。根據你的偏好,你可以從下圖中的標記區域選擇在歡迎螢幕中顯示特定型別的介面。
例如,我只列出了有線網路介面。
接下來,要開始捕獲封包,你必須選擇介面(在我的範例中是 ens33
),然後單擊“Start capturing packets”圖示,如下圖所示。
你還可以同時從多個介面捕獲封包。只需按住 CTRL
按鈕,同時單擊要捕獲的介面,然後點選“Start capturing packets”圖示,如下圖所示。
接下來,我嘗試在終端中使用 ping google.com
命令,如你所見,捕獲了許多封包。
現在你可以選擇任何封包來檢查該特定封包。在點選一個特定的包之後,你可以看到與它相關的 TCP/IP 協定的不同層的資訊。
你還可以在底部看到該特定封包的原始資料,如下圖所示。
這就是為什麼端到端加密很重要。
假設你正在登入一個不使用 HTTPS 的網站。與你在同一網路上的任何人都可以嗅探封包,並在原始資料中看到使用者名稱和密碼。
這就是為什麼現在大多數聊天應用程式使用端到端加密,而大多數網站使用 https (而不是 http)。
你可以點選如圖所示的紅色圖示停止捕獲封包。
你可以單擊下圖中標記的圖示,將捕獲的封包儲存到檔案中以備將來使用。
注意:輸出可以匯出為 XML、PostScript、CSV 或純文字。
接下來,選擇一個目標資料夾,鍵入檔名並單擊“Save”。
然後選擇檔案並單擊“Open”。
現在你可以隨時開啟和分析儲存的封包。要開啟檔案,請按 \+o
,或從 Wireshark 轉到 “File > Open”。
捕獲的封包將從檔案中載入。
Wireshark 支援許多不同的通訊協定。有許多選項和功能,使你能夠以獨特的方式捕獲和分析網路封包。你可以從 Wireshark 的官方文件了解更多關於 Wireshark 的資訊。
我希望這個教學能幫助你在 Ubuntu 上安裝 Wireshark 。請讓我知道你的問題和建議。