CentOS7.4 搭建和使用telnet
1.先检查是否安装了telnet
rpm -qa | grep telnet //检查你的CentOS是否安装了telnet和telnet-server
rpm -qa xinetd //检查你的CentOS是否安装了xinetd,telnet的自启动依赖它
如果执行结果没有任何输出,那么说明你的机器上没有安装telnet和xinetd
2.安装telnet并设置开机自启动
yum list |grep telnet //列出当前可用的rpm包
yum install telnet-server //安装telnet-server 服务端
yum install telnet //安装telnet 客户端
3.如果没有安装xinetd,则安装它
yum install -y xinetd
systemctl enable xinetd.service //设置xinetd开机自启动
4.开启xinetd服务并设置为开机自启。
[root@CentOs64- conf]# systemctl enable xinetd.service
[root@CentOs64- conf]# systemctl status xinetd.service
● xinetd.service - Xinetd A Powerful Replacement For Inetd
Loaded: loaded (/usr/lib/systemd/system/xinetd.service; enabled; vendor preset: enabled)
Active: inactive (dead)
[root@CentOs64- conf]# systemctl start xinetd.service
[root@CentOs64- conf]# systemctl status xinetd.service
● xinetd.service - Xinetd A Powerful Replacement For Inetd
Loaded: loaded (/usr/lib/systemd/system/xinetd.service; enabled; vendor preset: enabled)
Active: active (running) since Thu -- :: CST; 17s ago
Process: ExecStart=/usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid $EXTRAOPTIONS (code=exited, status=/SUCCESS)
Main PID: (xinetd)
CGroup: /system.slice/xinetd.service
└─ /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid Oct :: CentOs64-7.4 xinetd[]: removing discard
Oct :: CentOs64-7.4 xinetd[]: removing discard
Oct :: CentOs64-7.4 xinetd[]: removing echo
Oct :: CentOs64-7.4 xinetd[]: removing echo
Oct :: CentOs64-7.4 xinetd[]: removing tcpmux
Oct :: CentOs64-7.4 xinetd[]: removing time
Oct :: CentOs64-7.4 xinetd[]: removing time
Oct :: CentOs64-7.4 xinetd[]: xinetd Version 2.3. started with libwrap loadavg labeled-networking options compiled in.
Oct :: CentOs64-7.4 xinetd[]: Started working: available services
Oct :: CentOs64-7.4 systemd[]: Started Xinetd A Powerful Replacement For Inetd.
经过上面的启动命令和查看xinted装态命令,可以看到xinted已经被成功启动了。
5.测试telnet是否可用,使用的命令和结果如下
[root@CentOs64- conf]# telnet localhost
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
Trying ::...
telnet: connect to address ::: No route to host
这说明,当前telnet是并不可用的。这是因为telnet的端口是23,而CentOS默认这个端口是关闭的,我们可以使用命令来查看一下23这个端口的装态,如下:
[root@CentOs64- conf]# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0.0.0.0: 0.0.0.0:* LISTEN /sshd
tcp 0.0.0.0: 0.0.0.0:* LISTEN /java
tcp 0.0.0.0: 0.0.0.0:* LISTEN /java
tcp6 ::: :::* LISTEN /mysqld
udp 172.16.85.47: 0.0.0.0:* /ntpd
udp 127.0.0.1: 0.0.0.0:* /ntpd
udp 0.0.0.0: 0.0.0.0:* /ntpd
udp6 ::: :::* /ntpd
可以看到TCP并没有23 这个端口号,当然你也可以在服务器本地使用nmap ip地址 -p 23 查看telnet状态是关闭的。
6.设置telnet服务开机启动。
systemctl enable telnet.socket
7.重启服务(telnet服务依赖xinetd守护,安装telnet-server后启动时需要重启xinetd服务)。
systemctl start telnet.socket
systemctl start xinetd
8.开启端口
CentOS采用了 firewalld 防火墙,查询是否开启23端口
# firewall-cmd --query-port=23/tcp
no
显示23端口没有开启使用下面命令开启23端口
# firewall-cmd --zone=public --add-port=23/tcp --permanent
success
重新加载firewall-cmd
# firewall-cmd --complete-reload
success
重新查询23端口是否开放
# firewall-cmd --query-port=23/tcp
yes
success表示已开启!现在可以用telnet命令远程登陆CentOS7快乐玩耍了!
注:telnet使用的是文明密码,为安全建议使用SSH加密登陆!
9.telnet默认是不开启的,所以你得telnet不能使用也可能不是第8步的原因,例如我的机器就没有开防火墙,所以执行第9步。
telnet服务之后,默认是不开启服务,修改文件/etc/xinetd.d/telnet来开启服务:
注:如有则修改,第一次修改,此文件若不存在,可自己vim创建修改:
修改 disable = yes 为 disable = no
修改后的telnet文件为:
#default:yes
# description: The telnet server servestelnet sessions; it uses \
# unencrypted username/password pairs for authentication.
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server =/usr/sbin/in.telnetd
log_on_failure += USERID
disable = no
}
查看xinetd是否启动
[root@CentOs64-7 xinetd.d]# ps -ef | grep xinetd
root 27304 1 0 01:33 ? 00:00:00 /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid
root 27378 27017 0 02:01 pts/0 00:00:00 grep --color=auto xinetd
说明已经启动
10.使用telnet localhost检测telnet是否正常,密码正确,但是总是提示Login incorrect
telnet是除了SSH之外另一种远程登录服务器的办法,但是它并不安全,因为是明文的。
[root@CentOs64- xinetd.d]# telnet localhost
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'. Kernel 3.10.-693.2..el7.x86_64 on an x86_64
CentOs64- login: root
Password:
Login incorrect CentOs64- login: root
Password:
Login incorrect CentOs64- login: Connection closed by foreign host.
解决办法:
解决1:注释/etc/pam.d/remote的第一行,
即:auth required pam_securetty.so
先进入 /etc/pam.d/目录
[root@CentOs64- xinetd.d]# cd /etc/pam.d/
[root@CentOs64- pam.d]# pws
-bash: pws: command not found
[root@CentOs64- pam.d]# pwd
/etc/pam.d
修改结果如下:
然后再使用telnet localhost就可以成功登录你指定的用户了。
最新文章
- uva 10375
- Android图形显示之硬件抽象层Gralloc(hal 转)
- paoracle中的包头(Package)与包体(Package body)
- 高性能MySQL --- 读书笔记(1) - 2016/8/2
- C++发送邮件和附件
- Struts2 文件的上传与下载
- TOGAF架构内容框架之架构制品(下)
- Python学习日记:day7-----集合
- 为Jupyter只安装目录的扩展包
- Zabbix (三)
- R语言学习网址
- Python — 字典dict 和 集合set
- hdu-6333-莫队
- SQL注入之Sqli-labs系列第十二关
- 使用ssh-keygen生成ssh公钥和私钥
- arduino 串口命令解析
- 打开eclipse编译后的.class文件
- 关于一个页面的tab切换整体页面刷新而tab标签处是同一个文件怎么做焦点的问题
- Spring boot 、mybatis 和 swagger 整合
- JS计算十万块钱 分31期 利息万分之五 每个月的还款数
热门文章
- Kerberos原理和基础小结
- 安装使用electron辛路历程
- python代码覆盖率coverage简介与用法
- 题解报告:hdu 4907 Task schedule
- $.each遍历json对象(java将对象转化为json格式以及将json解析为普通对象)
- Struts2 表单提交与execute()方法的结合使用
- SpringCloud开发学习总结(三)—— 服务治理Eureka
- 关于react native在window下运行安卓的时候报 could not connect to development server
- mysql执行语句汇总
- rem手机端页面自适应完美解决方案(最新)