檢查服務器端口是否打開(telnet)


前提:檢查服務器(linux系統)端口打開,有兩個必要條件:一、服務器上的服務進程開始監聽端口;二、服務器上的服務對應的端口在防火牆上已經放開(關閉防火牆也可以)。

准備工作:安裝telnet客戶端(測試連接的電腦是Windows系統,默認是未安裝的)

控制面板-程序-程序和功能-啟用或者關閉Windows功能-勾選Telnet客戶端-確定

 

 

 

一、以SSH使用的22端口為例,檢查服務器的22端口是否放開

 

1、檢查服務器上SSH服務,同時查看端口監聽狀態

(1)service sshd status  檢查SSH服務當前狀態

(2)lsof -i:22  查看22端口監聽狀態

可以看到SSH服務和監聽已經正常

2、在測試電腦通過telnet ip port進行測試

連接

下圖為可以連接(說明:端口打開)

3、關閉SSH服務,測試端口是否打開驗證第一個條件不滿足時

(1)service sshd stop 停止SSH服務

(2)service sshd status  檢查SSH服務當前狀態

(3)lsof -i:22 查看22端口監聽狀態

可以看到SSH服務和監聽已經停止

下圖為不可以連接(說明:端口未打開)

 

二、以FTP使用的21端口為例,檢查服務器的21端口是否打開

 

1、檢查服務器上FTP服務,同時查看端口監聽狀態

(1)service vsftpd status  檢查FTP服務當前狀態

(2)lsof -i:21  查看21端口監聽狀態

可以看到FTP服務和監聽已經正常

2、在測試電腦通過telnet ip port進行測試

下圖為不可以連接(說明:端口未打開)

3、檢查防火牆設置驗證第二個條件不滿足時

可以看到防火牆只打開了22端口,沒有放開FTP對應的21端口

iptables -nL 查看防火牆filter表

4、關閉防火牆

service iptables stop 關閉防火牆服務

5、在測試電腦通過telnet ip port進行測試

連接

下圖為可以連接(說明:端口打開)

6、退出時一般輸入CTRL+]鍵,再輸入quit或者exit就退出了,但是如果發現無法退出,可以把命令窗口關閉

 

總結:檢查服務器端口是否打開,我們用到的核心命令只有一個telnet(服務器外部視角),本文通過兩個例子,對必要條件進行了說明,另外在實際環境中,一般只知道服務器IP和端口,並不知道服務是否運行、進程是否在監聽,也不知道防火牆的設置,這時如果發現端口無法連接,相信大家已經知道登陸服務器去具體看什么了(是否監聽&是否防火牆放開)。

 

額外補充:如果上述檢查必要條件看起來都沒有問題,但是端口還是無法連接,這時就需要考慮排查傳輸了,另外如果基本的ping檢查也是正常的(傳輸沒問題),建議看下網絡里面的防火牆。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM