发现很多人学了telnet,然后就天天拿这个命令去测试端口,用法当然是没问题的,但是现在容器网络,虚拟网络各种复杂,我觉得不能理解透telnet原理,就通过这个命令下结论是不严谨的。就好像在k8s中,iptables下,ping svc 是不通一样,我也查了一些资料,但是还有一些疑问想请教一下
- telnet 介绍说,这个是用来做远程登录的,是不是可以理解为一种 ssh 呢?那大家都是用ssh登陆的,telnet有什么特殊的作用吗?
- 如果是登陆用,在某台机器上 telnet 192.168.1.100 是不是就能登陆到 192.168.1.100 这台服务器了呢?我是没测试成功,按照我的理解,被登陆的服务端,要保证23端口能访问,可能还要再做什么配置吧
- telnet 192.168.1.100 8080 能测试端口,原理是进行了tcp握手,是这样吧?有没有专门的就是用来测端口的工具呢
想查查telnet的原理,但是呢全是教你测端口的,感觉真正的知识被埋没了。如果有人知道这块希望能答疑解惑,或者给一下资料地址
可以把telnet分为应用协议和某个具体的软件
第一个问题,telnet协议通常是用来做远程登录登录的,和ssh类似,都可以用来登录远程终端。现在基本上只能在交换机路由器上能看到telnet协议的应用(现在也在慢慢被ssh代替,也快淘汰了),telnet特点就是协议简单,传输没有加密,正因为这个原因,现在用telnet作为远程终端的越来越少。
第二个问题,linux理论上也能支持telnet登录管理,这个其实也和ssh类似,当你使用ssh管理服务器的时候,服务器上有一个sshd的程序监听22端口。如果要用telnet管理服务器的话,就需要一个telnet-server的程序在服务器上监听23端口,并且以telnet协议提供服务,有了服务之后你就可以用telnet软件登录服务器了。
第三个问题,就是进行tcp握手,同理curl \ nc 甚至 ssh 都可以用来测试端口是否能通。不知道nmap算不算专用的端口测试工具。