檢查端口對於驗證哪些端口已打開並在您的系統上進行偵聽非常重要。 偵聽服務可以成為黑客的切入點,他們可以利用系統中的漏洞來訪問或破壞系統。 如果您不使用某項服務,則不建議保持該服務運行。 此外,它消耗額外的資源。 因此,有必要持續檢查系統上的開放端口。
在本文中,我們將解釋如何使用四種不同的方式檢查 Debian 10 系統上的開放端口。
注意:本文中討論的命令和過程已經在 Debian 10 Buster 系統上進行了測試。
使用 ss 命令檢查開放端口
Linux 中的 ss(套接字統計)命令提供有關網絡連接的重要信息,包括開放端口和偵聽套接字。 它從 Linux 內核獲取此信息。 當不帶任何命令行參數使用 ss 命令時,它會顯示有關所有當前連接的詳細信息,而不管它們處於何種狀態。 ss 命令是 netstat 命令的替代品。 ss 命令與 iproute2 軟件包捆綁在一起,可在 Debian 系統上使用。 但是,無論如何,如果您在系統中找不到它,則可以輕鬆安裝它。
在 Debian 10 系統中打開終端,並在其中發出以下命令:
$ sudo apt install iproute2
要檢查 Debian 系統上的開放端口,請在終端中發出以下命令:
$ sudo ss -tulpn
在哪裡:
- -t, –tcp: 查看所有 TCP 套接字
- -u, -udp: 查看所有 UDP 套接字
- -l, –listening: 查看所有監聽套接字
- -p,進程: 查看哪些進程正在使用套接字
- -n, – 數字: 如果您想查看端口號而不是服務名稱,請使用此選項
在輸出中,您將看到所有偵聽 TCP 和 UDP 連接的列表。
上面的輸出顯示系統上只打開了端口 22。
筆記: 如果您在 ss 命令中使用 -p 或 –processes 選項,您必須是 root 用戶或具有 sudo 特權。 否則,您將無法看到在端口上運行的進程的進程標識號 (PID)。
使用 netstat 命令檢查打開的端口
Linux 中的 Netstat 命令提供有關當前網絡連接和統計信息的信息。 Netstat 具有與 ss 命令幾乎相同的命令選項。 為了使用 netstat 命令,您需要安裝 net-tools。 在終端中發出以下命令來執行此操作:
$ sudo apt-get install net-tools
安裝後,您可以在 Debian 終端中使用 netstat 命令。
要檢查 Debian 系統上的開放端口,請在其中發出以下命令:
$ sudo netstat –tulnp
在哪裡:
- -t, –tcp: 查看所有 TCP 套接字
- -u, -udp: 查看所有 UDP 套接字
- -l, –listening: 查看所有監聽套接字
- -p,進程: 查看哪些進程正在使用套接字
- -n, – 數字: 如果您想查看端口號而不是服務名稱,請使用此選項
上面的輸出顯示系統上只打開了端口 22。
筆記: 如果您在 netstat 命令中使用 -p 或 –processes 選項,您必須是 root 用戶或具有以下權限的用戶 sudo 特權。 否則,您將無法看到在端口上運行的進程的進程標識號 (PID)。
使用 lsof 命令檢查打開的端口
Linux 中的 lsof 命令代表列表打開文件(因為 Linux 中的所有內容都是一個文件,包括設備、目錄、端口等)。 使用 lsof 命令,您可以查找有關不同進程打開的文件的信息。
lsof 命令在 Debian 系統上可用。 但是,無論如何,如果您在系統中找不到它,您可以在終端中使用以下命令輕鬆安裝它:
$ apt-get install lsof
要使用 lsof 查看所有偵聽 TCP 端口,請在終端中發出以下命令:
$ sudo lsof -nP -iTCP -sTCP:LISTEN
上面的輸出顯示系統上只打開了端口 22。
使用 Nmap 實用程序檢查打開的端口
Nmap 是一個 Linux 命令行實用程序,用於執行系統和網絡掃描。 它主要用於網絡審計和安全掃描。 默認情況下,它不會安裝在 Linux 系統上,但是,您可以在終端中使用以下命令安裝它:
$ sudo apt install nmap
運行上述命令後,系統可能會要求確認是否繼續安裝。 點擊 y 繼續,之後,安裝將在您的系統上開始。
安裝後,您可以使用 Nmap 檢查系統上的開放端口。 為此,請在終端中發出以下命令:
$ sudo nmap –sT –p-65535 ip-address
由於我們系統的 IP 地址是 192.168.72.158,因此命令是:
$ sudo nmap –sT –p-65535 192.168.72.158
上面的輸出顯示系統上只打開了端口 22。
這就是全部! 在本文中,我們討論瞭如何檢查 Debian 10 系統上的開放端口。 我希望你喜歡這篇文章!