1. 安装telnet服务和客户端
yum -y install telnet
yum -y install telnet-server
yum -y install xinetd
systemctl enable xinetd.service
systemctl enable telnet.socket
systemctl start telnet.socket
systemctl start xinetd
systemctl status telnet.socket
systemctl status xinetd
在终端输入telnet ip ,而后输入用户名和密码即可登录服务器。
注意:需要在防火墙放行telnet的缺省端口23,如果是临时使用telnet,可暂时关闭firewalld.
2. 重启telnet服务
- systemctl daemon-reload
- systemctl restart telnet.socket
- firewalld基于端口放行。
firewall-cmd --zone=public --add-port=23/tcp --permanent
firewall-cmd --reload
firewall-cmd --zone=public --list-ports
4. 登录测试。
PS:默认情况下,root用户是被禁止了telnet登录的,需要进行以下操作方可登录。
#开启root的telnet登录。
mv /etc/securetty /etc/securetty.bak
注意事项。
查看23端口是否被监听
netstat -nlt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:26379 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 :::23 :::* LISTEN
tcp6 0 0 :::8089 :::* LISTEN
tcp6 0 0 ::1:25 :::* LISTEN
tcp6 0 0 :::8099 :::* LISTEN
tcp6 0 0 :::3308 :::* LISTEN
这时你发现23端口还是没有监听,怎么回事?
原来需要在xinetd里注册telnet-server,怎么注册呢?
注册telnet服务
cd /etc/xinetd.d
在该目录下添加一个文件叫telnet
vim telnet
service telnet
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
}
重启xinetd
systemctl restart xinetd
添加pts/0并重启
默认情况下linux都是认为pts0是不安全的连接,所以会拒绝掉,那么我可以放行pts0,在这里拉菲不介绍太多,如果要问怎么看,可以去/var/log/securre里面查询是那个被拒绝掉了霍。。。。
cat /etc/securetty //进入这个文件,在最后一行添加pts/0
console
vc/1
vc/2
略。。。。。
pts/0
telnet(密码正确)无法登录
在这里我们telnet但是如果用户密码正确,还是不能登录,那么我们可以直接ssh连接进去进行配置更改
[root@test ~]# cat /etc/pam.d/login //注意这里将第二行auth [...注释掉,然后保存退出
#%PAM-1.0
#auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth substack system-auth
auth include postlogin
account required pam_nologin.so
account include system-auth
password include system-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
session optional pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open
session required pam_namespace.so
session optional pam_keyinit.so force revoke
session include system-auth
session include postlogin
-session optional pam_ck_connector.so