今天要做实验要用到telnet,发现用Centos6可以用telnet连接Centos7,但是Centos7不能连接Centos6, 分享一下解决方案。
Centos6中的telnet服务是非独立式服务,在centos6中有些服务使用很少,关掉又不合适,这些服务依赖于xinetd —— 超级守护进程。
当服务托管于xinetd时,当有人访问该服务时,xinetd会把该服务唤醒。让该服务工作。
配置文件: /etc/xinetd.conf、 /etc/xinetd.d/<service>
首先要开启telnet服务要安装两个包
telnet
telnet-server
Centos7 启动服务systemctl start telnet.socket 23端口打开
在Centos6上启动服务时,会报错:
[[email protected] ~]# service telnet start
telnet: unrecognized service
可是明明已经安装了包,而且在启动服务时还是用TAB命令补全,都能补出来的服务怎么会启动不了,因为telnet服务是默认不托管于xinetd的,telnet是非独立服务,service telnet start 服务起不来,xinetd又不能唤醒该服务。telnet就不能开启服务
解决方法1:编辑该文件 /etc/xinetd.d/telnet
将disable =yes 一行改为 disable = no
即让telnet服务托管于xinetd
重启xinetd服务 service xinetd restart
还要注意防火墙策略 iptables -F 清除所有防火墙策略
service iptables stop 关闭防火墙
再次连接即可成功
解决方法2: chkconfig telnet on
这命令执行完也是将/etc/xinetd.d/telnet 中 yes 变为 no
当然对应的命令 chkconfig telnet off ,后面方法参照解决方法1
注释:由于telnet命令不安全,抓包时可直接获得用户名和口令,逐渐被ss命令替代