使用nc命令檢查Linux系統(tǒng)遠程端口是否打開
端口是與 Linux 操作系統(tǒng)上的應用或進程的通訊端點的邏輯實體。在使用之前,了解目標機器上哪些端口是打開并正在運行服務是非常有用的。
我們可以使用 netstat 或其他幾個 Linux 命令如 NMAP 在本地機器上輕松地列出 Linux 中的打開端口。
在本指南中,我們將向你展示如何使用簡單的 netcat(簡稱 nc)命令來確定遠程主機上的端口是否可訪問/打開。
netcat(或簡稱 nc)是一個功能強大且易于使用的程序,可用于 Linux 中與 TCP、UDP 或 UNIX 域套接字相關的任何事情。
- # yum install nc [在 CentOS/RHEL 中]
- # dnf install nc [在 Fedora 22+ 中]
- $ sudo apt-get install netcat [在 Debian/Ubuntu 中]
我們可以使用它:打開 TCP 連接、偵聽任意 TCP 和 UDP 端口、發(fā)送 UDP 數據包、在 IPv4 和 IPv6 進行端口掃描。
使用 netcat,你可以檢查單個或多個或一段打開的端口范圍,如下所示。下面的命令將幫助我們查看端口 22 是否在主機 192.168.56.10 上打開:
- $ nc -zv 192.168.1.15 22
上面的命令中,這些標志是:
- -z – 設置 nc 只是掃描偵聽守護進程,實際上不向它們發(fā)送任何數據。
- -v – 啟用詳細模式
下面的命令會檢查遠程主機 192.168.5.10 上是否打開了端口 80、22 和 21(我們也可以使用主機名):
- nc -zv 192.168.56.10 80 22 21
也可以指定端口掃描的范圍:
- $ nc -zv 192.168.56.10 20-80
更多關于 netcat 命令的例子和使用,閱讀我們下面的文章。
就是這樣。在本文中,我們解釋了如何使用 netcat 命令檢測遠程主機端口是否可達/打開。請在評論欄中留下你的想法。
作者簡介:
Aaron Kili 是 Linux 和 F.O.S.S 愛好者,將來的 Linux SysAdmin 和 web 開發(fā)人員,目前是 TecMint 的內容創(chuàng)建者,他喜歡用電腦工作,并堅信分享知識。