使用telnet測試指定端口的連通性

你們好,我是良許。linux

你們知道,telnet 是一個閹割版的 ssh ,它數據不加密,數據容易被盜竊,也容易受中間人攻擊,因此默認狀況下 telnet 端口是必需要被關閉的。程序員

telnet爲用戶提供了在本地計算機上完成遠程主機工做的能力,所以能夠經過telnet來測試端口的連通性。面試

確認遠程主機的端口

在測試端口的連通性以前,咱們先使用 nmap 命令來查看目標服務器的端口開放狀態。bash

$ nmap lxlinux.net複製代碼

使用telnet測試端口的連通性

在確認了目標服務器的端口開放性以後,咱們就可使用 telnet 來測試端口的連通性了。測試的格式是:服務器

$ telnet server port複製代碼

好比咱們想要測試 http 的端口(80)連通性,咱們能夠這樣測試:架構

$ telnet lxlinux.net 80複製代碼

從提示中咱們能夠看出來,它顯示 Connected to lxlinux.net. ,這說明這個端口是是連通的。ssh

若是端口是不連通的,那麼它將提示 unable connect to remote host: Connection timed out工具

如今咱們再來試試關閉的端口。咱們來測試一下 22 端口,這個端口沒有被 nmap 掃描出來,因此應該是關閉的。爲了保險起見,咱們能夠用 nmap 再來確認一下,這時咱們要加上 -p 選項。學習

$ nmap -p 22 lxlinux.net複製代碼

因此如今確認了 22 端口是關閉的了,咱們就可使用 telnet 來測試它的連通性。測試

$ telnet lxlinux.net 22複製代碼

提示裏顯示Connection refused ,這說明這個端口也是不連通的。

當你用 telnet 鏈接上某個端口後,能夠按 CTRL+] 進入到交互界面:

telnet>複製代碼

而後再輸入 quit 再敲下回車,便可退出鏈接。

利用 telnet 的這個特性,咱們能夠寫個腳原本測試多個主機及端口的連通性。

好比咱們寫了下面這個腳本 multipletelnet.sh

#!/bin/bash
telnet lxlinux.net 80
telnet baidu.com 80
telnet lxlinux.net 443複製代碼

而後咱們再使用 chmod 命令賦予它可執行權限:

$ chmod +x multipletelnet.sh複製代碼

固然,若是你想要同時測試多個端口的話,那麼這個腳本就有點力不從心了,在這種狀況下,你就須要用到 nmap 及其它類似工具了。


最後,最近不少小夥伴找我要Linux學習路線圖,因而我根據本身的經驗,利用業餘時間熬夜肝了一個月,整理了一份電子書。不管你是面試仍是自我提高,相信都會對你有幫助!目錄以下:

免費送給你們,只求你們金指給我點個贊!

電子書 | Linux開發學習路線圖

也但願有小夥伴能加入我,把這份電子書作得更完美!

有收穫?但願老鐵們來個三連擊,給更多的人看到這篇文章

推薦閱讀:

相關文章
相關標籤/搜索