如何使用 PowerShell 檢查遠端埠是否開啟?


早些時候我們使用 telnet 客戶端來檢查遠端埠連線,事實上,我們現在仍然使用 cmd 和 PowerShell 來進行操作,但是此功能並非作業系統預設安裝,並且一些公司對安裝新功能(包括 telnet)有限制。

我們可以利用 PowerShell 在不安裝 telnet 的情況下測試遠端埠連線,並使用 Test-NetConnection 命令。此命令對於其他診斷也很有用,但我們這裡重點關注遠端埠檢查。

要檢查遠端埠是否開啟,我們可以使用 **Test-NetConnection** 命令,它需要 -ComputerName 引數和 -Port 引數來檢查遠端埠狀態。

Test-NetConnection -ComputerName Test1-Win2k12 -Port 80

輸出

ComputerName     : Test1-Win2k12
RemoteAddress    : 192.168.0.107
RemotePort       : 80
InterfaceAlias   : Ethernet0
SourceAddress    : 192.168.0.106
TcpTestSucceeded : True

以上示例將檢查遠端伺服器 Test1-Win2k12 上的 80 埠連線。

您可以看到 TcpTestSucceeded 屬性為 true,因此埠已開啟。下面顯示的另一個示例是 WInRM https 埠 5986。

Test-NetConnection -ComputerName Test1-Win2k12 -Port 5986

輸出

WARNING: TCP connect to Test1-Win2k12:5986 failed
ComputerName           : Test1-Win2k12
RemoteAddress          : 192.168.0.107 RemotePort : 5986
InterfaceAlias         : Ethernet0
SourceAddress          : 192.168.0.106
PingSucceeded          : True
PingReplyDetails (RTT) : 0 ms
TcpTestSucceeded       : False

您可以看到 WinRM SSL 埠在遠端伺服器上未開啟,並且在第一行以及 TcpTestSucceeded 屬性中都顯示了警告訊息。

更新於: 2020年9月28日

6K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告