linux centos7 測試端口的連通性, 分別測試TCP端口與UDP端口
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序設(shè)計(jì)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了溫州免費(fèi)建站歡迎大家使用!
安裝nc命令
一、nc命令檢測端口的用法
1 這個(gè)需要Linux服務(wù)器里邊支持nc命令,檢查NC 是否安裝
2 安裝nc
3 探測端口
錯(cuò)誤信息如下
百度了半天沒一個(gè)結(jié)果, google了一下就有結(jié)果了, 經(jīng)測試成功.
4 原因分析:
-z參數(shù)原為掃描目標(biāo)port是否打開, TCP三次握手成功則ok
但CentOS7新版的nc命令已取消了-z, 需輸入重定向 /dev/null 才能成功
5 探測 udp: 通過 nc -h 可以看出,只需要加個(gè) -u 即可。
更多高級應(yīng)用參考:
場景一:了解系統(tǒng)開放的端口,和正在使用的端口,在各種情況下都會有所幫助。
比如:如果你的服務(wù)器正在運(yùn)行著 Nginx,那么其端口應(yīng)該為80或者443,可以檢查一下。再比如你可以檢查一下 SMTP、SSH或者其他服務(wù)用的是哪個(gè)端口。當(dāng)有新的服務(wù)需要開放端口的時(shí)候,你需要知道目前已經(jīng)被占用的,都有哪些端口。
此外,可以檢查一下是否有開放的可用于入侵檢測的端口。
Linux 中有多種檢查端口的方法,本文將介紹兩種。
使用 lsof 檢查當(dāng)前系統(tǒng)開放的端口
不管你是直接登錄的系統(tǒng),還是使用 ssh 連接的,都可以使用 lsof 命令來檢查端口:
該命令用于查找用戶使用的文件和進(jìn)程。上述命令中的選項(xiàng),包括:
但是,這也會展示許多計(jì)算機(jī)并沒有監(jiān)聽的其他端口。
我們可以通過管道將此輸出傳輸?shù)?grep,并匹配模式 “LISTEN”,如下所示:
這樣就只顯示計(jì)算機(jī)正在監(jiān)聽的,以及正在運(yùn)行的服務(wù)器所占用的端口。
使用 netcat 命令檢查遠(yuǎn)程服務(wù)器上的端口
nc(Netcat) 是一個(gè)命令行實(shí)用程序,使用TCP和UDP協(xié)議在網(wǎng)絡(luò)計(jì)算機(jī)之間讀取和寫入數(shù)據(jù)。
以下是nc命令的語法:
這個(gè)工具有一個(gè)很實(shí)用的 -z 選項(xiàng),它會讓 nc 命令掃描正在監(jiān)聽的守護(hù)進(jìn)程,但是不會向端口發(fā)送任何數(shù)據(jù)。
將其與 -v 選項(xiàng)結(jié)合,啟動詳細(xì)信息,會有詳細(xì)信息的輸出。
losf與nc的不同點(diǎn):
lsof命令簡介
lsof 命令用于顯示 Linux 系統(tǒng)當(dāng)前已打開的所有文件列表。查看進(jìn)程或系統(tǒng)打開的文件會給調(diào)試帶來極大的幫助。下面簡單地介紹 lsof 常使用的功能。
lsof (list open files)命令用于查看你進(jìn)程打開的文件,打開文件的進(jìn)程,進(jìn)程打開的端口(TCP、UDP),還可以用于找回/恢復(fù)被刪除的文件。lsof 命令需要訪問核心內(nèi)存和各種文件,所以需要具備 root 超級管理員權(quán)限的用戶才能執(zhí)行此命令。
linux的nc命令,NetCat,在網(wǎng)絡(luò)工具中有“瑞士軍刀”美譽(yù)“,是解決這個(gè)問題的工具。 nc命令安裝: yum install nc
以上是看來一些文章的總結(jié)分享內(nèi)容,歡迎補(bǔ)充討論。
用yum進(jìn)行安裝,若安裝舊版本的可能會有些命令參數(shù)無法正常使用
nc -z -v -n 192.168.137.2 1-100 掃描192.168.137.2地址1-100的端口號
可以運(yùn)行在TCP或者UDP模式,默認(rèn)是TCP,-u參數(shù)調(diào)整為udp
z 參數(shù)告訴netcat使用0 IO,連接成功后立即關(guān)閉連接,不進(jìn)行數(shù)據(jù)交換
v 參數(shù)指使用冗余選項(xiàng)
n 參數(shù)告訴netcat不要使用DNS反向查詢IP地址的域名
nc -v 192.168.137.2 22
連接該地址開放的22端口,并且打印運(yùn)行在這個(gè)端口上服務(wù)的banner信息
現(xiàn)有兩臺服務(wù)器:192.168.137.2和192.168.137.10,分別命名為A和B
使A和B可以互相聊天
A nc -n -l -u -p 1000
B nc -n -u 192.168.137.2 1000
-u參數(shù)調(diào)整為udp
-l 表示在服務(wù)器端啟用監(jiān)聽模式
-n? 不做域名解析
-p 指定監(jiān)聽的端口
這時(shí)A和B兩臺服務(wù)器便可在命令行進(jìn)行聊天
使A和B之間相互傳輸單個(gè)文件
A nc -l 2000 file.txt 在A中開一個(gè)2000端口并進(jìn)行監(jiān)聽,將寫入的內(nèi)容放到本地命名為file.txt
B nc 192.168.137.2 2000 file.txt 將B中file.txt傳送到Aip的2000端口
在A與B之間互傳文件夾
在A中/root/下創(chuàng)建ceshi目錄,并在ceshi下創(chuàng)建test.txt
A tar -cvf - ceshi |nc -l 1000
B nc 192.168.137.2 1000 |tar -xvf -
這時(shí)發(fā)現(xiàn)在B中已經(jīng)有了A傳送過去的ceshi目錄
=======================================================================
A:192.168.0.131(接收方) B:192.168.0.10(發(fā)送方)
本次打算用3333端口傳送數(shù)據(jù),在操作前先確保兩臺服務(wù)器的防火墻不會禁止3333端口
先在A上操作:進(jìn)入要接收數(shù)據(jù)的目錄下
while true
do
nc -l 3333|tar -xvf -
done
這時(shí)在看該機(jī)器3333端口已打開
再去B上操作:進(jìn)入要傳送的目錄下
tar -cvf - 文件/目錄名 |nc 192.168.0.131 3333
這時(shí)兩臺機(jī)器間便開始傳送數(shù)據(jù)