CentOS7 编译安装telnet服务

背景

  • 由于是局域网环境,服务器不能连上公网,编译安装 telnet 服务
  • 如果需要 root 登录需要修改配置,本人不推荐 root 登录,因为 telnet 是明文传输,建议用其它账号登录切换到 root

下载依赖包

https://pkgs.org/ 下载这三个rpm包,使用rpm命令安装 telnet

telnet-server

xinetd

安装

编辑 /etc/xinetd.d/telnet(文件不存在则创建)

service telnet
{
    flags = REUSE
    socket_type = stream
    wait = no
    user = root
    server = /usr/sbin/in.telnetd #whereis in.telnetd查看位置
    log_on_failure += USERID
    disable = no
}

开启 23 端口

firewall-cmd --zone=public --add-port=23/tcp --permanent

重新载入防火墙

firewall-cmd --reload

重启服务关闭 firewalld

systemctl restart iptables 
systemctl disable firewalld 
systemctl stop firewalld

注册服务

systemctl enable telnet.socket 
systemctl start telnet.socket 
systemctl enable xinetd 
systemctl start xinetd

由于 telnet 服务也是由 xinetd 守护的,所以要启动 telnet 服务就必须重新启动 xinetd

service xinetd restart            #centos6
systemctl restart xinetd.service  #centos6

测试

我们先来查看 TCP 的 23 端口是否开启正常

netstat -tnl |grep 23 
tcp 0 0 0.0.0.0:23 0.0.0.0:* LISTEN

测试 telnet 服务

telnet localhost

如果遇到此错误:telnet: /lib64/libc.so.6: version `GLIBC_2.15’ not found (required by telnet)

解决 /lib64/libc.so.6: version `GLIBC_2.15’ not found 问题(亲测) 参考: https://www.jianshu.com/p/5bb21028cde1

登录成功