人人妻人人澡人人爽人人精品av_精品乱码一区内射人妻无码_老司机午夜福利视频_精品成品国色天香摄像头_99精品福利国产在线导航_野花社区在线观看视频_大地资源在线影视播放_东北高大肥胖丰满熟女_金门瓶马车内剧烈运动

首頁(yè)>國(guó)內(nèi) > 正文

檢查 Linux 上開(kāi)放端口的 5 種簡(jiǎn)單方法

2023-07-11 10:18:13來(lái)源:51CTO.COM

開(kāi)放的網(wǎng)絡(luò)端口是網(wǎng)絡(luò)最簡(jiǎn)單的接入點(diǎn)。很多時(shí)候,我們需要在從 Internet 外部可見(jiàn)的端口上運(yùn)行不需要的服務(wù)。由于每天都會(huì)對(duì)整個(gè)互聯(lián)網(wǎng)進(jìn)行大規(guī)模掃描,以查找開(kāi)放端口上的易受攻擊的服務(wù),因此如果這些服務(wù)容易受到攻擊,我們的網(wǎng)絡(luò)將持續(xù)受到攻擊的威脅。

了解如何掃描和查看 Linux 系統(tǒng)上的開(kāi)放端口,以便保護(hù)網(wǎng)絡(luò)免受威脅。


(資料圖片)

什么是網(wǎng)絡(luò)端口?

網(wǎng)絡(luò)端口是系統(tǒng)的邏輯訪(fǎng)問(wèn)點(diǎn),可用作托管多個(gè)服務(wù)的通道。端口由 16 位整數(shù)表示,因此最大端口號(hào)為 65535。

我們可以將端口想象為房屋的門(mén)窗,所有門(mén)窗都是計(jì)算機(jī)的所有不同入口點(diǎn)。端口分為三種類(lèi)型:系統(tǒng)端口 (1-1023)、注冊(cè)端口 (1024-49151) 和臨時(shí)或動(dòng)態(tài)端口 (49152-65535)。

當(dāng)您啟動(dòng)需要連接到互聯(lián)網(wǎng)的應(yīng)用程序時(shí),它會(huì)使用動(dòng)態(tài)端口通過(guò)網(wǎng)絡(luò)傳輸和接收數(shù)據(jù)。但是,當(dāng)您啟動(dòng) Web 服務(wù)器或 SSH 服務(wù)器時(shí),它通常會(huì)綁定到系統(tǒng)端口或注冊(cè)端口。

對(duì)于 HTTP 服務(wù) Web 服務(wù)器,默認(rèn)系統(tǒng)端口是 80,對(duì)于 SSH,默認(rèn)系統(tǒng)端口是 22。端口范圍等這些規(guī)定是由互聯(lián)網(wǎng)號(hào)碼分配機(jī)構(gòu) (IANA) 制定的。我們可以瀏覽有關(guān)端口的 RFC,以獲得所有端口及其功能的完整列表。

了解最常見(jiàn)的易受攻擊的端口非常重要,這樣您就可以確保它們被關(guān)閉或受到保護(hù)。

1. 使用netstat檢查開(kāi)放端口

netstat 是一個(gè)流行的實(shí)用程序,我們可以使用它來(lái)查看 Linux 系統(tǒng)的網(wǎng)絡(luò)統(tǒng)計(jì)信息。它是 net-tools 包的一部分。

由于開(kāi)發(fā)人員缺乏適當(dāng)?shù)木S護(hù),net-tools 軟件包現(xiàn)已貶值。這也是為什么在 Linux 上運(yùn)行流行的 ifconfig 命令時(shí)可能會(huì)遇到“ifconfig:找不到命令”錯(cuò)誤的原因。

因此,在現(xiàn)代系統(tǒng)上,必須首先安裝 net-tools 軟件包,然后才能運(yùn)行 netstat 命令。以下是使用 netstat 檢查開(kāi)放端口的方法:

netstat -tuln

命令解釋?zhuān)?/p>-t顯示 TCP 端口。-u顯示 UDP 端口。-l顯示監(jiān)聽(tīng)端口。如果您想查看所有端口(無(wú)論其狀態(tài)如何),請(qǐng)將其替換為a 。-n顯示端口的數(shù)值,而不是解析為服務(wù)名稱(chēng)。例如,顯示端口22而不是SSH,即該端口上運(yùn)行的服務(wù)。2. 使用 ss 檢查開(kāi)放端口

ss 是 netstat 工具的現(xiàn)代版本。我們會(huì)發(fā)現(xiàn)它已預(yù)安裝在所有現(xiàn)代 Linux 發(fā)行版中。使用 ss 檢查開(kāi)放端口的語(yǔ)法與 netstat 相同。

以下是使用 ss 檢查開(kāi)放端口的方法:

ss -tuln

命令解釋?zhuān)?/p>-t顯示 TCP 端口。-u顯示 UDP 端口。-l顯示監(jiān)聽(tīng)端口。如果您想查看所有端口(無(wú)論其狀態(tài)如何),請(qǐng)將其替換為a 。-n顯示端口的數(shù)值,而不是解析為服務(wù)名稱(chēng)。例如,顯示端口21而不是FTP,即該端口上運(yùn)行的服務(wù)。3. 使用 Nmap 檢查開(kāi)放端口

Nmap 是網(wǎng)絡(luò)安全和網(wǎng)絡(luò)領(lǐng)域最流行的工具之一。當(dāng)涉及到網(wǎng)絡(luò)安全滲透測(cè)試時(shí),它是一個(gè)主要名稱(chēng)。它的主要用例是端口掃描,因此您不僅可以獲得有關(guān)系統(tǒng)中打開(kāi)的端口的信息,還可以獲得它們是否易受攻擊和可利用的信息。

此外,如果您希望檢查已設(shè)置 IDS/IPS 和防火墻的遠(yuǎn)程系統(tǒng)中的開(kāi)放端口,請(qǐng)不要擔(dān)心,因?yàn)?Nmap 還可以使用正確的交換機(jī)繞過(guò)防火墻和 IDS/IPS。

查看這份針對(duì)初學(xué)者的 Nmap 綜合指南,探索 Nmap 的各種功能以及如何使用它們。盡管可以,但不建議嘗試?yán)@過(guò)防火墻,因?yàn)樗⒉煌耆煽?,因此最好通過(guò) SSH 連接到遠(yuǎn)程服務(wù)器,然后在本地運(yùn)行 Nmap。

以下是使用 Nmap 檢查開(kāi)放端口的命令:

nmap -sTU -sV  -T 5 --min-rate 9000 --min-parallelism 9000 --initial-rtt-timeout 50ms --max-rtt-timeout 3000ms --max-retries 50 -Pn --disable-arp-ping -n --script vuln,exploit,auth -v -oX 

命令解釋?zhuān)?/p>-sTU將掃描類(lèi)型設(shè)置為 TCP 連接和 UDP 掃描。-T 5將計(jì)時(shí)模板設(shè)置為激進(jìn),以實(shí)現(xiàn)極快的掃描(不建議在未受保護(hù)的系統(tǒng)上使用,因?yàn)檫@可能會(huì)導(dǎo)致 DoS 攻擊)。-sV打開(kāi)服務(wù)掃描。--min-rate 9000告訴 Nmap 每秒發(fā)送 9000 個(gè)數(shù)據(jù)包。--initial-rtt-timeout 50ms告訴 Nmap 首先等待 50ms 以等待對(duì)其發(fā)送的每個(gè) SYN 數(shù)據(jù)包的響應(yīng)。--max-rtt-timeout 3000ms告訴 Nmap 等待響應(yīng)最多 3000ms。--min-parallelism 9000將同時(shí)運(yùn)行腳本的最小數(shù)量設(shè)置為 9000。--max-retries 50告訴 Nmap 重試 50 次以連接到端口。-Pn禁用 ping 探測(cè)。--disable-arp-ping禁用 ARP 探測(cè)。-n禁用 DNS 解析。--script vuln,exploit,auth運(yùn)行三個(gè)腳本來(lái)測(cè)試已發(fā)現(xiàn)端口中不同類(lèi)型的漏洞。-v返回詳細(xì)輸出。-oX將結(jié)果保存到 XML 文件。-6用于掃描 IPv6 地址的可選參數(shù)。4. 使用 lsof 檢查開(kāi)放端口

Linux 中的 lsof 命令用于列出打開(kāi)的文件。但是,如果我們向其中添加一些交換機(jī),將能夠看到本地計(jì)算機(jī)上開(kāi)放的互聯(lián)網(wǎng)連接和端口。以下是使用 lsof 檢查開(kāi)放端口的方法:

lsof -i -n

命令解釋?zhuān)?/p>-i列出所有網(wǎng)絡(luò)和 Internet 文件。-n不解析主機(jī)名。5. 使用 netcat 檢查開(kāi)放端口

netcat 是一個(gè)命令行實(shí)用程序,可讓您從 TCP/UDP 連接讀取和寫(xiě)入。請(qǐng)注意,這只是 netcat 的一項(xiàng)功能。您可以使用man netcat命令查看其手冊(cè)頁(yè),以探索其所有功能以及如何使用它們。

以下是使用 netcat 掃描開(kāi)放端口的方法:

nc -zv   | grep -v "refused"

命令解釋?zhuān)?/p>-z將 netcat 設(shè)置為掃描儀模式。-v返回詳細(xì)輸出。grep -v "refused"返回不帶單詞“refused”的輸出行。這是為了防止當(dāng) netcat 沒(méi)有從端口接收到輸出時(shí),終端被“連接被拒絕”消息堵塞。2>&1:這是一個(gè)可選開(kāi)關(guān),在詳細(xì)模式下運(yùn)行 netcat 時(shí),您可能需要打開(kāi)該開(kāi)關(guān)才能使 grep 工作。 netcat 將輸出返回到 stderr(用 2 表示)。因此,要 grep 輸出,您必須將 stderr 重定向到 stdout(用 1 表示),然后將其通過(guò)管道傳輸?shù)?grep 中。您對(duì)網(wǎng)絡(luò)了解越深,就越能更好地保護(hù)它

了解哪些端口是開(kāi)放的以及系統(tǒng)上正在運(yùn)行哪些服務(wù)是防御潛在外部攻擊的重要一步。這使我們可以搜索并關(guān)閉不必要的服務(wù),查找過(guò)時(shí)的服務(wù),還可以檢測(cè)系統(tǒng)上是否運(yùn)行任何惡意文件,例如bind或reverse shell后門(mén)。

原文標(biāo)題:5 Easy Ways to Check for Open Ports on Linux

原文作者:DEBARSHI DAS

關(guān)鍵詞:

相關(guān)新聞

Copyright 2015-2020   三好網(wǎng)  版權(quán)所有 聯(lián)系郵箱:435 22 [email protected]  備案號(hào): 京ICP備2022022245號(hào)-21