我們最近寫了一篇文章關于如何檢查遠程 linux 服務器是否打開指定端口。它能幫助你檢查單個服務器。
如果要檢查五個服務器有沒有問題,可以使用以下任何一個命令,如 nc(netcat)、nmap 和 telnet。但是如果想檢查 50 多臺服務器,那么你的解決方案是什么?
要檢查所有服務器并不容易,如果你一個一個這樣做,完全沒有必要,因為這樣你將會浪費大量的時間。為了解決這種情況,我使用 nc 命令編寫了一個 shell 小腳本,它將允許我們掃描任意數量服務器給定的端口。
如果你要查找單個服務器掃描,你有多個選擇,你只需閱讀 檢查遠程 Linux 系統上的端口是否打開? 了解更多信息。
本教程中提供了兩個腳本,這兩個腳本都很有用。這兩個腳本都用于不同的目的,你可以通過閱讀標題輕松理解其用途。
在你閱讀這篇文章之前,我會問你幾個問題,如果你不知道答案你可以通過閱讀這篇文章來獲得答案。
如何檢查一個遠程 Linux 服務器上指定的端口是否打開?
如何檢查多個遠程 Linux 服務器上指定的端口是否打開?
如何檢查多個遠程 Linux 服務器上是否打開了多個指定的端口?
什么是 nc(netcat)命令?
nc 即 netcat。它是一個簡單實用的 Unix 程序,它使用 TCP 或 UDP 協議進行跨網絡連接進行數據讀取和寫入。
它被設計成一個可靠的 “后端” 工具,我們可以直接使用或由其他程序和腳本輕松驅動它。
同時,它也是一個功能豐富的網絡調試和探索工具,因為它可以創建你需要的幾乎任何類型的連接,并具有幾個有趣的內置功能。
netcat 有三個主要的模式。分別是連接模式,監聽模式和隧道模式。
nc(netcat)的通用語法:
$ nc [-options] [HostName or IP] [PortNumber]
如何檢查多個遠程 Linux 服務器上的端口是否打開?
如果要檢查多個遠程 Linux 服務器上給定端口是否打開,請使用以下 shell 腳本。
在我的例子中,我們將檢查端口 22 是否在以下遠程服務器中打開,確保你已經更新文件中的服務器列表而不是使用我的服務器列表。
你必須確保已經更新服務器列表 :server-list.txt 。每個服務器(IP)應該在單獨的行中。
# cat server-list.txt
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
192.168.1.6
192.168.1.7
使用以下腳本可以達到此目的。
# vi port_scan.sh
#!/bin/sh
for server in `more server-list.txt`
do
#echo $i
nc -zvw3 $server 22
done
設置 port_scan.sh 文件的可執行權限。
$ chmod +x port_scan.sh
最后運行腳本來達到此目的。
# sh port_scan.sh
Connection to 192.168.1.2 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.3 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.4 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.5 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.6 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.7 22 port [tcp/ssh] succeeded!
如何檢查多個遠程 Linux 服務器上是否打開多個端口?
如果要檢查多個服務器中的多個端口,請使用下面的腳本。
在我的例子中,我們將檢查給定服務器的 22 和 80 端口是否打開。確保你必須替換所需的端口和服務器名稱而不使用是我的。
你必須確保已經將要檢查的端口寫入 port-list.txt 文件中。每個端口應該在一個單獨的行中。
# cat port-list.txt
22
80
你必須確保已經將要檢查的服務器(IP 地址)寫入 server-list.txt 到文件中。每個服務器(IP) 應該在單獨的行中。
# cat server-list.txt
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
192.168.1.6
192.168.1.7
使用以下腳本來達成此目的。
# vi multiple_port_scan.sh
#!/bin/sh
for server in `more server-list.txt`
do
for port in `more port-list.txt`
do
#echo $server
nc -zvw3 $server $port
echo ""
done
done
設置 multiple_port_scan.sh 文件的可執行權限。
$ chmod +x multiple_port_scan.sh
最后運行腳本來實現這一目的。
# sh multiple_port_scan.sh
Connection to 192.168.1.2 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.2 80 port [tcp/http] succeeded!
Connection to 192.168.1.3 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.3 80 port [tcp/http] succeeded!
Connection to 192.168.1.4 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.4 80 port [tcp/http] succeeded!
Connection to 192.168.1.5 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.5 80 port [tcp/http] succeeded!
Connection to 192.168.1.6 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.6 80 port [tcp/http] succeeded!
Connection to 192.168.1.7 22 port [tcp/ssh] succeeded!
Connection to 192.168.1.7 80 port [tcp/http] succeeded!
via: https://www.2daygeek.com/check-a-open-port-on-multiple-remote-linux-server-using-nc-command/
作者: Magesh Maruthamuthu 選題: lujun9972 譯者: zero-MK 校對: wxy
本文由 LCTT 原創編譯, Linux中國 榮譽推出
如何檢查多個遠程 Linux 系統是否打開了指定端口?
網友整理
注冊時間:
網站:5 個 小程序:0 個 文章:12 篇
-
51998
網站
- 12
小程序
-
1030137
文章
-
747
會員
熱門網站
- 各百科-專業百科問答知識名網站 m.geelcn.com
- 免費軟件,綠色軟件園,手機軟件下載,熱門游戲下載中心-中當網 m.deelcn.com
- 魔扣科技 www.ylptlb.cn
- 體育新聞_國際體育資訊_全球體育賽事-中名網 www.feelcn.com/tiyu/tiyuxinwen/
- 食品安全_健康飲食_舌尖上的安全-中名網 www.feelcn.com/shenghuo/shipinanquan/
- 中合網 www.heelcn.com
- 中當網 www.deelcn.com
- 魔扣網站維護代運營 www.ylptlb.cn/tg
- 中合網-健康養生知識科普名站 m.heelcn.com
- 各百科 www.geelcn.com
最新入駐小程序
熱門文章
- 民以食為天 離線人臉識別助力打造智慧食堂 08-20
- 青桔單車發布3款新車 已進入150個城市 08-13
- 民間大神用Win7毛玻璃UI風格改造Win10:情懷滿滿 08-06
- 網站標題是否可以修改?怎么改不影響網站權重? 11-19
- 關于網站標題和正文的匹配度分析 09-29
- 從滾石、華納到環球,三個關鍵詞讀懂網易云為何成版權方最愛 08-12
- 天眼被注冊為煙草商標,中國控煙協會要求嚴查 08-13
- 深圳實現5G獨立組網全覆蓋 已累計建設5G基站超4.6萬個 08-17
- 滴滴App內嵌買車服務 已在十余城上線 08-06
- 關鍵詞的密度要結合頁面版式來調整 11-28