91av免费观看_日韩视频在线免费看_日本xxxx色视频在线观看免费_伊人222综合网图片_国产二区三区在线_91麻豆麻豆

IT之道-艾銻知道

您當(dāng)前位置: 主頁 > 資訊動(dòng)態(tài) > 艾銻分享 >

IT運(yùn)維 | 在Linux下檢測(cè)端口的方法


2020-04-13 19:10 作者:admin
IT運(yùn)維 | 在Linux下檢測(cè)端口的方法
 
在日常IT運(yùn)維中無論是要解決Linux系統(tǒng)運(yùn)維問題還是配置防火墻,第一件事是要檢查系統(tǒng)實(shí)際打開了哪些端口。下面介紹幾種快速查找 Linux 系統(tǒng)上哪些端口向外部開放的方法。
什么是開放端口
監(jiān)聽端口是應(yīng)用程序監(jiān)聽的網(wǎng)絡(luò)端口。你要得到的監(jiān)聽端口名單通常可以通過如 ss、netstat 或 lsof 命令查詢系統(tǒng)上網(wǎng)絡(luò)堆棧。每個(gè)監(jiān)聽端口都可以使用防火墻打開或關(guān)閉(過濾)。一般而言,開放端口是一個(gè)網(wǎng)絡(luò)端口,它接受來自遠(yuǎn)程位置的傳入數(shù)據(jù)包。例如:如果你正在運(yùn)行的監(jiān)聽端口 80、443 的 Web 服務(wù)器,并把這些端口在防火墻上對(duì)任何人開放。使用瀏覽器將能夠訪問托管在 Web 服務(wù)器上的網(wǎng)站。在這種情況下,80 和 443 都是開放端口。開放端口可能會(huì)帶來安全風(fēng)險(xiǎn),因?yàn)楣粽呖梢允褂妹總€(gè)開放端口來利用漏洞或執(zhí)行任何其他類型的攻擊。您應(yīng)該只公開應(yīng)用程序功能所需的端口,然后關(guān)閉所有其他端口。
 
使用 Nmap 命令檢查開放端口
Nmap 是功能強(qiáng)大的網(wǎng)絡(luò)掃描工具,可以掃描單個(gè)主機(jī)和大型網(wǎng)絡(luò)。它主要用于安全審核滲透測(cè)試。Nmap 是端口掃描的首選工具。除端口掃描外,Nmap 還可以檢測(cè) Mac 地址、操作系統(tǒng)類型、內(nèi)核版本等。從控制臺(tái)發(fā)出以下命令確定哪些端口正在監(jiān)聽來自網(wǎng)絡(luò)的 TCP 連接:
$ sudo nmap -sT -p- 10.10.8.8
-sT 選項(xiàng)告訴 Nmap 掃描 TCP 端口, -p- 掃描所有端口(65535 個(gè))。如果不使用 -p-,Nmap 將僅掃描 1000 個(gè)端口。
Starting Nmap 7.60 ( https://nmap.org ) at 2019-07-09 23:10 CESTNmap scan report for 10.10.8.8Host is up (0.0012s latency).Not shown: 998 closed portsPORT   STATE SERVICE22/tcp open  ssh80/tcp open  httpMAC Address: 08:00:27:05:49:23 (Oracle VirtualBox virtual NIC)
Nmap done: 1 IP address (1 host up) scanned in 0.41 seconds
以上顯示,只有端口 22、80 以及 8069 在目標(biāo)系統(tǒng)上打開。
要掃描 UDP 端口,請(qǐng)使用 -sU 代替 -sT:
$ sudo nmap -sU -p- 10.10.8.8
有關(guān)更多信息,請(qǐng)?jiān)L問 Nmap 手冊(cè)頁,并了解此工具的所有其他強(qiáng)大功能。
 
使用 Netcat 命令檢查開放端口
Netcat(或nc)是一種命令行工具,可以使用 TCP 或 UDP 協(xié)議跨網(wǎng)絡(luò)連接讀取和寫入數(shù)據(jù)。
使用 netcat 可以掃描單個(gè)端口或端口范圍。
例如,要掃描 IP 地址為 10.10.8.8 的遠(yuǎn)程計(jì)算機(jī)上端口范圍為 20-80 之間打開的 TCP 端口,你可以使用以下命令:
$ nc -z -v 10.10.8.8 20-80
-z 選項(xiàng)指示 nc 僅掃描打開的端口,而不發(fā)送任何數(shù)據(jù),并且 -v 用于獲取更多詳細(xì)信息。
輸出將如下所示:
nc: connect to 10.10.8.8 port 20 (tcp) failed: Connection refusednc: connect to 10.10.8.8 port 21 (tcp) failed: Connection refusedConnection to 10.10.8.8 22 port [tcp/ssh] succeeded!...Connection to 10.10.8.8 80 port [tcp/http] succeeded!
如果只希望將以上開放端口的行打印在屏幕上,則可以使用 grep 命令過濾結(jié)果。
$ nc -z -v 10.10.8.8 20-80 2>&1 | grep succeededConnection to 10.10.8.8 22 port [tcp/ssh] succeeded!Connection to 10.10.8.8 80 port [tcp/http] succeeded!
要掃描 UDP 端口,請(qǐng)將 -u 選項(xiàng)傳遞給 nc 命令:
$ nc -z -v -u 10.10.8.8 20-80 2>&1 | grep succeeded
 
使用 Bash 偽設(shè)備檢查打開的端口
檢查某個(gè)端口是打開還是關(guān)閉的另一種方法是使用 Bash Shell 檢查 /dev/tcp/.. 或 /dev/udp/.. 下的偽設(shè)備。
在 /dev/$PROTOCOL/$HOST/$IP 偽設(shè)備上執(zhí)行命令時(shí),Bash 將在指定端口上打開到指定主機(jī)的 TCP 或 UDP 連接。
以下 if..else 語句將檢查端口 443 在 kernel.org 是否打開:
if timeout 5 bash -c '</dev/tcp/kernel.org/443 &>/dev/null'then  echo "Port is open"else  echo "Port is closed"fi
輸出將如下所示:
Port is open
 
上面的代碼如何工作?
使用偽設(shè)備連接到端口時(shí)的默認(rèn)超時(shí)時(shí)間非常長(zhǎng),因此我們使用 timeout 命令在 5 秒后終止測(cè)試命令。如果建立了 kernel.org 端口連接,則 443 測(cè)試命令將返回 true。你也可以使用 for 循環(huán)來檢查指定的端口范圍:
for PORT in {20..80}; do  timeout 1 bash -c "</dev/tcp/10.10.8.8/$PORT &>/dev/null" &&  echo "port $PORT is open"done
輸出將如下所示:
port 22 is openport 80 is open
 
結(jié)論
我們?yōu)槟阏故玖藥追N如何使用掃描開放端口的工具,當(dāng)然你也可以使用其它工具來達(dá)到同樣的目的,例如:Python Socket 模塊、Curl、Telnet 或 Wget。
 

相關(guān)文章

IT外包服務(wù)
二維碼 關(guān)閉
主站蜘蛛池模板: 国产精品久久久久久久久岛国 | 欧美性XXXXX极品娇小 | 成全视频在线观看免费高清在线观看 | 7777久久 | 亚洲蜜桃精久久久久久久久久久久 | 992国产精品福利视频 | 人妻互换一二三区激情视频 | 日韩美女一区二区三区在线观看 | 国产日产欧洲无码视频 | 亚洲H在线播放在线观看H | 久久精美日产AA二线三线 | 三年片在线观看免费观看大全一 | 最好看的日本字幕在线观看 | 亚洲综合国产成人无码 | 久久亚洲日韩看片无码 | 粉色视频在线观看免费观看 | 无遮挡十八禁污污网站免费 | 国产男男gaygay同志网站 | 最近在线更新8中文字幕免费 | 成人午夜国产内射主播 | 久久久久亚洲精品无码网址蜜桃 | 日本黄色免费在线 | 无码精品人妻一区二区三区AP | 国产在线精品一区二区在线看 | 国产精品h片在线播放 | 99国产欧美久久久精品蜜芽 | 在线视频爽爽 | 精品欧洲av无码一区二区 | 国产午夜亚洲精品国产成人小说 | 欧洲丰满少妇做爰视频爽爽 | 久热中文字幕在线精品观 | 国产产区一二三产区区别在线 | nxgx100%日本老师 | 精品无码欧美一区二区三区不卡 | 少妇一级毛片免费看 | 最好看的2018国语在线 | 精品无码AV无码专区 | 国产欧美做爰xxxⅹ在线观看 | 日本不卡a不v免费高清 | 黄色在线资源 | 2021亚洲爆乳无码专区 |