使用 Nmap 進行端口掃描 + 其他使用工具

使用 Nmap 進行端口掃描 + 其他使用工具

Nmap 是一個眾所周知的實用程序,它與許多 Linux 發行版捆綁在一起,也可用於 Windows 和其他幾個平台。本質上是一個掃描和映射工具,Nmap 可以為您做很多事情。

今天,我們來看看使用 Nmap 進行端口掃描,順便提一下,這是該工具的主要用途。端口掃描是網絡管理的一項基本任務,因為它可以確保沒有後門未被解決。它是保護網絡的最基本形式之一。

在我們進入這篇文章的操作方法部分之前,我們將稍微轉移一下,首先介紹 Nmap 和它的 GUI 表親 Zenmap。然後我們將解釋什麼是端口以及您需要如何小心不要在您的設備上打開未使用的端口。然後,我們將進入本文的精髓,向您展示如何使用 Nmap 進行端口掃描。由於有很多其他工具可以替代 Nmap 進行端口掃描——其中一些工具更好或更易於使用——我們最終將回顧一些用於端口掃描的最佳 Nmap 替代方案。

關於地圖

Nmap 代表網絡映射器。它是一種掃描工具,可用於發現主機和服務,從而構建網絡的“地圖”,因此得名。該工具的工作原理是將特製的數據包發送到目標主機——有點像 ping 但不一定使用 ICMP——並通過分析它得到的響應。

Nmap 的主要用途是分析計算機上可用的服務。它還可以用作 IP 地址掃描儀。該工具可以發現主機及其服務,還可以檢測其操作系統等。使用腳本,該工具甚至可以用於高級服務檢測、漏洞檢測等。總的來說,這是一個多功能工具,可以在許多情況下很好地使用。

Nmap 是一個免費的開源命令行工具,最初僅作為 Linux 實用程序使用,但後來被移植到許多其他操作系統,包括 Windows、Solaris、HP-UX、大多數 BSD 變體,包括 OS X、AmigaOS、和愛麗絲。

Nmap的帥哥:Zenmap

如果您更喜歡使用圖形用戶界面,Zenmap 是 Nmap 的開源 GUI 前端。它的用戶界面可能不是最複雜的,但它的工作做得很好。該工具與 Nmap 來自相同的開發人員,因此您可以期望集成很好。您可以使用它來掃描連接到您網絡的所有計算機上的所有端口。然後它會在它發現的開放端口上執行後續測試。您還可以執行完整掃描、掃描所有 TCP 端口或掃描所有 UDP 端口。還有一種使用隱形方法的密集掃描,其中測試不會被測試設備記錄為連接。但是,這些可能需要很長時間。預計一台設備需要超過 90 分鐘。

什麼是端口?

一句話,端口是進入設備的網絡網關。讓我們解釋一下。計算機可以同時做很多不同的事情。其中一些可能需要訪問網絡。但通常,計算機只有一個物理網絡接口。端口的發明是為了讓不同的進程共享一個公共網絡接口。

例如,考慮同時運行 Web 服務器和 FTP 服務器的服務器,這是一個非常常見的組合。當一個請求進來時,操作系統如何知道它是否應該將它發送到 Web 或 FTP 服務器?使用端口。對網絡服務器的請求將使用端口 80,而對 FTP 服務器的請求將使用端口 22。

端口不是物理的東西,它們只是從 0 到 65535 的數字,它們被添加到網絡上傳輸的數據包的頭部。而且它們也不是隨機的。嗯,實際上他們有時是。更多關於他的後來。

對於所有這些工作來說,重要的是每個人都同意使用哪個端口來做什麼。例如,前面提到的網絡服務器期望請求使用端口 80。然後您的網絡瀏覽器必須使用端口 80 將請求發送到網絡服務器。

知名港口

需要通過標準化端口來儘早解決哪個端口的問題。Internet 號碼分配機構(IANA,也是分配 IP 地址的同一組織)負責維護特定用途的端口號的官方分配。

在 IANA 的控制下,前 1024 個端口被正式分配給不同的服務。事實上,這並不完全正確。某些端口分配未經 IANA 正式批准。它們是可用的,並且一些組織開始將它們用於其目的——通常是在 IANA 開始控制它們的分配之前——並且通過使用,它們的使用被卡住了。

今天,我們中的許多人都熟悉其中的幾個端口。如前所述,有用於 Web 的端口和用於 FTP 的 21 端口。我們也熟悉用於 SSH 的端口 22 或用於 DNS 的 53。並非所有的前 1024 個端口都已分配,有些仍然可用,但它們的數量正在減少。

其他端口

眾所周知的端口占了前1024個,那麼其他的64512個呢?嗯,端口 1024 到 49151 就是我們所說的註冊端口。這些也由 IANA 控制和分配。任何組織都可以出於特定目的請求它們。例如,這就是端口 1433 成為 Microsoft SQL 服務器端口或端口 47001 成為 Windows 遠程管理服務端口的方式。但互聯網就是這樣,該範圍內的幾個端口未經 IANA 註冊就用於特定目的。

對於 49152 到 65535 範圍內的端口,它們被稱為臨時端口。應用程序臨時使用它們來區分流。想想網絡服務器。多個客戶端可以同時連接到它。如果它們都使用端口 80,則服務器可能很難確保將響應發送給正確的請求者。因此,初始連接是在端口 80 上完成的,之後服務器和客戶端“同意”一個臨時端口號,該端口號將用於他們交換的其餘部分。

忠告:關閉未使用的端口

在計算機上,端口狀態可以是打開、關閉或隱藏。開放端口意味著計算機正在積極“監聽”該端口上的連接請求。它是一個活動端口。一個封閉的端口,顧名思義,不會接受傳入的連接。相反,它將響應端口關閉的任何請求。隱形端口有些不同。嘗試連接到這些端口的設備甚至不會得到響應。

任何打開的端口都是通往計算機的大門。惡意用戶肯定會嘗試利用這些打開的門來訪問計算機。例如,假設您打開了 FTP 端口 21,儘管您並未真正使用 FTP。然後黑客可以使用該開放端口來利用在計算機上運行的 FTP 軟件的漏洞來注入惡意軟件。

如果您甚至沒有使用 FTP,則您可能沒有更新 FTP 服務器,並且它很可能包含可利用的漏洞。這就是為什麼確保未使用的端口關閉或隱藏如此重要的原因。

保護您使用的端口

至於您實際使用的帖子,它們仍然是敞開的大門,可能被用於惡意活動。這就是您需要保護開放端口的原因。它可以通過多種方式完成,其中最基本的方式是使您的操作系統和其他軟件保持最新。大多數軟件發行商會頻繁發布補丁以解決已發現的漏洞。另一種保護自己的方法是使用防火牆和入侵檢測和/或預防系統。

使用 Nmap 進行端口掃描

使用 Nmap 進行端口掃描非常簡單。如果您期待獲得詳細的教程,那麼您會感到驚喜。只是沒有必要。端口掃描是 Nmap 的主要功能,簡單地說,掃描端口只是在命令中鍵入要掃描的設備的 IP 地址或主機名的問題。

# nmap scanme.nmap.org 啟動 nmap ( https://nmap.org ) scanme.nmap.org (64.13.134.52) 的 nmap 掃描報告未顯示:994 個過濾端口 PORT STATE SERVICE 22/tcp open ssh 25/tcp closed smtp 53/tcp open domain 70/tcp closed gopher 80/tcp open http 113/tcp closed auth nmap done: 1 IP address (1 host up) 在 4.99 秒內掃描

夠簡單了吧?不過,也許您需要更複雜的東西。讓我們再次運行該命令,但這一次,我們將添加一些選項。-p0- 指定掃描每個可能的 TCP 端口,-v 指定詳細說明,-A 啟用積極的測試,例如遠程操作系統檢測、服務/版本檢測和 Nmap 腳本引擎 (NSE),-T4 啟用一個更積極的計時策略以加快掃描速度。這是結果。

# nmap -p0- -v -A -T4 scanme.nmap.org 啟動 nmap ( https://nmap.org ) 在 00:03 完成 Ping 掃描,經過 0.01 秒(總共 1 個主機)掃描 scanme.nmap.org ( 64.13.134.52) [65536 端口] 在 64.13.134.52 發現開放端口 22/tcp 在 64.13.134.52 發現開放端口 53/tcp 在 64.13.134.52 發現開放端口 80/tcp 在 64.13.134.52 上掃描完成;Tim 完成 % SYN 20 ETC:00:11(剩餘 0:07:33)在 00:10 完成 SYN Stealth Scan,經過 463.55s(65536 個總端口)在 00:10 完成服務掃描,經過 6.03s(1 台主機上的 3 個服務)啟動操作系統檢測(嘗試 #1)針對 scanme.nmap.org (64.13.134.52) 在 00:10 64.13.134.52 啟動 Traceroute:猜測跳躍距離在 9 完成 SCRIPT ENGINE 在 00:10,4.04 秒過去了主機 scanme.nmap.org 64.13.134.52) 似乎上漲了......很好。scanme.nmap.org (64.13.134.52) 的 Nmap 掃描報告未顯示:65530 過濾端口 PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 4.3 (protocol 2.0) 25/tcp closed smtp 53/tcp open domain ISC BIND 9.3.4 70/tcp closed gopher 80/tcp open http Apache httpd 2.2. Fedora)) |_HTML 標題:繼續 ScanMe!113/tcp 封閉身份驗證設備類型:通用運行:Linux 2.6.X 操作系統詳細信息:Linux 2.6.20-1(Fedora Core 5)正常運行時間猜測:2.457 天(自 2008 年 9 月 18 日星期四 13:13:24 起)TCP 序列預測:難度=204(祝你好運!)IP ID 序列生成:全零 TRACEROUTE(使用端口 80/tcp)HOP RTT 地址 [前八跳為簡潔起見] 9 10.36 Metro0.sv.svcolo.com (208.185.168.173) 10 10.29 scanme.nmap.org (64.13.134.52) Nmap done: 1 IP address (1 host up) 在 477.23 秒內掃描 原始數據包發送:131432 (5.783MB) | 接收數據:359 (14.964KB) 0) 25/tcp 關閉 smtp 53/tcp 開放域 ISC BIND 9.3.4 70/tcp 關閉 gopher 80/tcp 打開 http Apache httpd 2.2.2 ((Fedora)) |_HTML 標題:繼續掃描我!113/tcp 封閉身份驗證設備類型:通用運行:Linux 2.6.X 操作系統詳細信息:Linux 2.6.20-1(Fedora Core 5)正常運行時間猜測:2.457 天(自 2008 年 9 月 18 日星期四 13:13:24 起)TCP 序列預測:難度=204(祝你好運!)IP ID 序列生成:全零 TRACEROUTE(使用端口 80/tcp)HOP RTT 地址 [前八跳為簡潔起見] 9 10.36 Metro0.sv.svcolo.com (208.185.168.173) 10 10.29 scanme.nmap.org (64.13.134.52) Nmap done: 1 IP address (1 host up) 在 477.23 秒內掃描 原始數據包發送:131432 (5.783MB) | 接收數據:359 (14.964KB) 0) 25/tcp 關閉 smtp 53/tcp 開放域 ISC BIND 9.3.4 70/tcp 關閉 gopher 80/tcp 打開 http Apache httpd 2.2.2 ((Fedora)) |_HTML 標題:繼續掃描我!113/tcp 封閉身份驗證設備類型:通用運行:Linux 2.6.X 操作系統詳細信息:Linux 2.6.20-1(Fedora Core 5)正常運行時間猜測:2.457 天(自 2008 年 9 月 18 日星期四 13:13:24 起)TCP 序列預測:難度=204(祝你好運!)IP ID 序列生成:全零 TRACEROUTE(使用端口 80/tcp)HOP RTT 地址 [前八跳為簡潔起見] 9 10.36 Metro0.sv.svcolo.com (208.185.168.173) 10 10.29 scanme.nmap.org (64.13.134.52) Nmap done: 1 IP address (1 host up) 在 477.23 秒內掃描 原始數據包發送:131432 (5.783MB) | 接收數據:359 (14.964KB) 通用運行:Linux 2.6.X 操作系統詳細信息:Linux 2.6.20-1 (Fedora Core 5) 正常運行時間猜測:2.457 天(自 2008 年 9 月 18 日星期四 13:13:24 起) TCP 序列預測:難度 = 204(祝你好運! ) IP ID 序列生成:全零 TRACEROUTE(使用端口 80/tcp) HOP RTT 地址 [前八跳為簡潔起見] 9 10.36 Metro0.sv.svcolo.com (208.185.168.173) 10 10.29 scanme.nmap13.org .134.52) Nmap 完成:在 477.23 秒內掃描了 1 個 IP 地址(1 個主機)發送的原始數據包:131432 (5.783MB) | 接收數據:359 (14.964KB) 通用運行:Linux 2.6.X 操作系統詳細信息:Linux 2.6.20-1 (Fedora Core 5) 正常運行時間猜測:2.457 天(自 2008 年 9 月 18 日星期四 13:13:24 起) TCP 序列預測:難度 = 204(祝你好運! ) IP ID 序列生成:全零 TRACEROUTE(使用端口 80/tcp) HOP RTT 地址 [前八跳為簡潔起見] 9 10.36 Metro0.sv.svcolo.com (208.185.168.173) 10 10.29 scanme.nmap13.org .134.52) Nmap 完成:在 477.23 秒內掃描了 1 個 IP 地址(1 個主機)發送的原始數據包:131432 (5.783MB) | 接收數據:359 (14.964KB) 168.173) 10 10.29 scanme.nmap.org (64.13.134.52) Nmap done: 1 IP address (1 host up) 在 477.23 秒內掃描 原始數據包發送:131432 (5.783MB) | 接收數據:359 (14.964KB) 168.173) 10 10.29 scanme.nmap.org (64.13.134.52) Nmap done: 1 IP address (1 host up) 在 477.23 秒內掃描 原始數據包發送:131432 (5.783MB) | 接收數據:359 (14.964KB)

端口掃描的一些 Nmap 替代方案

和 Nmap 一樣好——也一樣簡單——就像一個端口掃描工具。也許您會想要考慮其他選擇。有很多產品可以掃描端口。讓我們回顧一下我們能找到的一些最好的工具。許多是免費的或提供免費試用,所以請隨意嘗試其中任何一個,看看它如何滿足您的需求。

1. SolarWinds 免費端口掃描器(免費下載)

SolarWinds是網絡工具領域的主要參與者之一。它也以發布不少非常有用的免費工具而聞名。該SolarWinds的免費端口掃描器就是其中之一。該軟件僅適用於 Windows,將通過 GUI 或作為命令行工具運行。

使用 Nmap 進行端口掃描 + 其他使用工具

默認情況下,SolarWinds Free Port Scanner將掃描您的網絡以檢測所有 IP 地址。然後選擇掃描所有設備或更改範圍設置掃描設備的子集。您還可以指定要測試的端口。默認情況下,它只會測試眾所周知的端口,但您可以覆蓋它,指定您自己的範圍或端口號列表。更高級的設置將讓您僅掃描 TCP 或 UDP 端口、執行 ping 檢查、DNS 解析或操作系統識別測試。

因此,軟件將返回所有測試設備的狀態列表。你可以想像這可能是一個很長的清單。幸運的是,該系統允許您應用過濾器,例如,僅列出具有開放端口的設備。單擊設備會顯示端口詳細信息面板。同樣,它將列出掃描範圍內的所有端口,並且您可以應用過濾器並僅顯示打開的端口。

2. PortChecker 端口掃描器

PortChecker端口掃描器是一個基於網絡的掃描儀。這是一個很棒的工具,儘管並非所有端口都經過檢查。該服務將測試 36 個最重要且易受攻擊的知名端口,以便從 Internet 訪問。它還將測試服務是否在每個開放端口上運行。還有一個選項可以運行更短的掃描,只測試 13 個端口。

使用 Nmap 進行端口掃描 + 其他使用工具

測試的端口包括 FTP 數據和控制、TFTP、SFTP、SNMP、DHCP、DNS、HTTPS、HTTP、SMTP、POP3、POP3 SSL、IMAP SSL、SSH 和 Telnet,僅舉出主要端口。掃描結果在網頁上顯示為表格。如果您需要對最常見的端口進行快速而骯髒的測試,免費的 PortChecker Port Scanner 可能正是您的合適工具。

3. WebToolHub 開放端口掃描器

開放端口掃描器WebToolHub是另一個免費的在線端口檢查。系統要求您輸入 IP 地址和要檢查的端口列表。您一次只能輸入 10 個端口號,因此您需要多次運行它以進行更多測試。不過,您不必輸入單獨的端口號。該系統將支持一個範圍——例如 21-29——只要它不超過 10。它似乎是一個比完整的漏洞評估工具更好的快速檢查特定端口的工具。

使用 Nmap 進行端口掃描 + 其他使用工具

掃描完成後(相當快),結果將以表格格式顯示,其中包含每個端口的狀態以及在該端口註冊的服務。結果表可以導出為 CSV 文件。當您訪問 WebToolHub 站點時,您可能想查看一些其他免費工具,例如 IP 位置檢查器、反向鏈接檢查器、WHOIS 查找工具和 Ping 測試。

4. IP指紋網絡端口檢查器

IP Fingerprints是另一個網站,您可以在其中找到一定數量的免費且有用的工具,其中包括Network Port Checker。要使用它,您只需輸入 IP 地址和要檢查的端口範圍。儘管掃描端口的數量沒有限制,但會警告您,超過 500 個端口的數量可能需要一段時間才能掃描,並且大範圍將開始可能永遠不會結束的掃描。

使用 Nmap 進行端口掃描 + 其他使用工具

該工具聲稱能夠繞過防火牆。它是通過使用 SYN 請求完成的。因此,真正的連接永遠不會打開,許多防火牆會讓 SYN 請求通過。它是否確實通過防火牆並不完全相關。無論如何,這仍然是一個很好的測試,因為它是黑客常用的方法。

5. 免費端口掃描器

免費端口掃描器是一個Windows的免費軟件,可以從下載主要極客網站。您可以使用此工具掃描端口範圍。掃描端口的數量不受限制,因此如果您有時間殺死,您可以決定掃描所有端口。

使用 Nmap 進行端口掃描 + 其他使用工具

默認情況下,該工具將要從其自己的默認端口列表中掃描您自己的 IP 地址以查找開放端口。如您所料,掃描的持續時間與掃描的端口數成正比。在不同設備上測試端口時速度較慢。例如,測試路由器上的所有端口可能需要一整天的時間。結果可以顯示打開或關閉的端口或兩者。該工具沒有文檔,也不清楚使用了什麼測試方法。此外,它似乎只測試 TCP 端口,而不是 UDP。

6. 端口檢查器

不要將Port Checker與上面介紹的PortChecker Port Scanner混淆。它是最好從Softpedia下載的 Windows 工具。該軟件沒有安裝程序。您只需下載其 zip 文件,解壓縮可執行文件並運行它。可執行文件很小,不需要安裝意味著您可以從 U 盤運行它。

使用 Nmap 進行端口掃描 + 其他使用工具

該工具的用戶界面簡單易用。您只需輸入一個 IP 地址並從下拉列表中選擇一個端口號。此工具的兩個主要限制是您無法掃描任何端口,只能掃描列表中的端口,並且每次運行只會掃描一個端口。儘管有其局限性,但當您只需要檢查特定端口是否打開時,端口檢查器是一個很好的工具。


6 個跟踪性能的最佳網絡管理工具

6 個跟踪性能的最佳網絡管理工具

網絡管理軟件市場非常擁擠。按照我們推薦的最佳網絡管理工具來縮短您的搜索。

10 個最佳 Ping 掃描工具,讓您了解更多有關網絡的信息

10 個最佳 Ping 掃描工具,讓您了解更多有關網絡的信息

Ping 掃描可以通過多種方式為您帶來好處。請繼續閱讀,我們將討論如何操作並介紹您能找到的 10 種最佳 Ping 掃描工具。

6 個最佳網站監控工具

6 個最佳網站監控工具

網站很重要,必須不斷密切監控以獲得足夠的性能。以下是一些用於監控網站的最佳工具。

2022 年開發團隊最佳軟件部署工具

2022 年開發團隊最佳軟件部署工具

以下是一些最好的軟件部署工具,可以減輕管理任意數量機器的痛苦

HIPAA 合規檢查表和使用工具

HIPAA 合規檢查表和使用工具

如果您從事健康行業或以某種方式參與該行業的 IT,您很有可能聽說過 HIPAA。健康保險的便攜性

2021 年審查的最佳免費 sFlow 收集器和分析器

2021 年審查的最佳免費 sFlow 收集器和分析器

sFlow 是一種內置於眾多網絡設備中的流分析協議。我們回顧了前五名的最佳免費 sFlow 收集器和分析器。

2021 年最佳無代理基礎設施監控工具和軟件

2021 年最佳無代理基礎設施監控工具和軟件

為了幫助您選擇合適的工具,我們引入了最好的無代理基礎設施監控工具,並讓您快速查看每個工具。

在 Linux 上監控帶寬:2021 年排名前 5 的工具

在 Linux 上監控帶寬:2021 年排名前 5 的工具

隨著 Linux 在數據中心變得越來越流行,他們正在研究 Linux 上的帶寬監控,同時也在審查最佳工具。

SolarWinds Mail Assure – 2021 年回顧

SolarWinds Mail Assure – 2021 年回顧

電子郵件安全是託管服務提供商的一項重要任務。正在審查 SolarWinds Mail Assure,這是為此目的的最佳工具之一。

Windows PowerShell 命令備忘單 - 您需要的終極指南

Windows PowerShell 命令備忘單 - 您需要的終極指南

如果您是 Windows 高級用戶,您可能知道並了解如何在您的 PC 上執行各種操作可以有不止一種方法和