使用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开发学习路线图

也但愿有小伙伴能加入我,把这份电子书作得更完美!

有收获?但愿老铁们来个三连击,给更多的人看到这篇文章

推荐阅读:

相关文章
相关标签/搜索