1. 程式人生 > >判斷445端口是否已經關閉的方法

判斷445端口是否已經關閉的方法

耗時 ctr listen med ont 系統管理員 公網 目前 命令行工具

當我們按照某個關閉445端口的教程操作完之後,我們如何去檢測是否真的已經關閉了445端口呢?本文給你介紹一個常用的又是最簡單的方法。

按 WIN+R 組合鍵打開運行對話框(不知道哪個是WIN鍵?),輸入 cmd ,按回車鍵,打開 dos 窗口。

然後輸入如下命令:

netstat -ano -p tcp | find "445"

如果沒有返回任何記錄,則說明已經成功關閉了445端口。如圖:

技術分享

檢測是否關閉445端口

不過如果是從防火墻關閉445端口的(參考此文:win7在防火墻入站規則關閉445端口的教程【也適用其他端口如3389】),那麽這個命令就不能準確反映是否關閉445端口了,我的理解是,因為從“入站規則”關閉445端口,設置“何時應用該規則”時,說是“計算機連接到公網位置時應用”、“計算機連接到其企業域時應用”和“計算機連接到專用網絡位置時應用”,因此,剛才的檢測命令是不在“應用”範圍內的,但是此防火墻一樣是可以防止外部通過445端口進行入侵的。

關閉445端口,我推薦的方法是從組策略關閉端口(445/135/137/138/139/3389等),這個方法適用於所以windows系統,是一個最常用又是最有效的關閉任何一個端口的方法。

知識擴展

netstat 命令簡介

Netstat 是一款命令行工具,可用於列出系統上所有的網絡套接字連接情況,包括 tcp, udp 以及 unix 套接字,另外它還能列出處於監聽狀態(即等待接入請求)的套接字。如果你想確認系統上的 Web 服務有沒有起來,你可以查看80端口有沒有打開。以上功能使 netstat 成為網管和系統管理員的必備利器。下面教大家如何使用 netstat 去查找網絡連接信息和系統開啟的端口號。

netstat 各參數及含義:

C:\Users\Administrator>netstat /?

顯示協議統計和當前 TCP/IP 網絡連接。

NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [interval]

-a 顯示所有連接和偵聽端口。
-b 顯示在創建每個連接或偵聽端口時涉及的可執行程序。
在某些情況下,已知可執行程序承載多個獨立的
組件,這些情況下,顯示創建連接或偵聽端口時涉
及的組件序列。此情況下,可執行程序的名稱
位於底部[]中,它調用的組件位於頂部,直至達
到 TCP/IP。註意,此選項可能很耗時,並且在您沒有
足夠權限時可能失敗。
-e 顯示以太網統計。此選項可以與 -s 選項結合使用。
-f 顯示外部地址的完全限定域名(FQDN)。
-n 以數字形式顯示地址和端口號。
-o 顯示擁有的與每個連接關聯的進程 ID。
-p proto 顯示 proto 指定的協議的連接;proto 可以是下列任
何一個: TCP、UDP、TCPv6 或 UDPv6。如果與 -s 選
項一起用來顯示每個協議的統計,proto 可以是下列任
何一個: IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP
或 UDPv6。
-r 顯示路由表。
-s 顯示每個協議的統計。默認情況下,顯示
IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6
的統計;-p 選項可用於指定默認的子網。
-t 顯示當前連接卸載狀態。
interval 重新顯示選定的統計,各個顯示間暫停的間隔秒數。
按 CTRL+C 停止重新顯示統計。如果省略,則 netstat
將打印當前的配置信息一次。

1、查看所有的端口占用情況

C:\>netstat -ano

協議 本地地址 外部地址 狀態 PID

TCP 127.0.0.1:1434 0.0.0.0:0 LISTENING 3236
TCP 127.0.0.1:5679 0.0.0.0:0 LISTENING 4168
TCP 127.0.0.1:7438 0.0.0.0:0 LISTENING 4168
TCP 127.0.0.1:8015 0.0.0.0:0 LISTENING 1456
TCP 192.168.3.230:139 0.0.0.0:0 LISTENING 4
TCP 192.168.3.230:1957 220.181.31.225:443 ESTABLISHED 3068
TCP 192.168.3.230:2020 183.62.96.189:1522 ESTABLISHED 1456
TCP 192.168.3.230:2927 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2929 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2930 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2931 117.79.91.18:80 ESTABLISHED 4732

2、查看指定端口的占用情況

C:\>netstat -aon|findstr "9050"

協議 本地地址 外部地址 狀態 PID

TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING 2016

看到了嗎,端口被進程號為2016的進程占用,繼續執行下面命令: (也可以去任務管理器中查看pid對應的進程)

3、查看PID對應的進程

C:\>tasklist|findstr "2016"

映像名稱 PID 會話名 會話# 內存使用
========================= ======== ================
nf.exe 2016 Console 0 16,064 K

很清楚吧,nf占用了你的端口。

4、結束該進程

C:\>taskkill /f /t /im nf.exe

netstat 命令的功能是顯示網絡連接、路由表和網絡接口信息,可以讓用戶得知目前都有哪些網絡連接正在運作。

判斷445端口是否已經關閉的方法