学习笔记,CentOS 7.6 Telnet服务搭建
正文:
setup 1 系统信息 安装
贴下系统信息 [图1]
[root@azeroth ~]# cat /etc/redhat-release
centos linux release 7.6.1810 (core)
下面是已经安装完成的telnet版本查询,如果还没有安装的是没有包信息显示的。[图2]
[root@azeroth ~]# rpm -qa|grep telnet
telnet-server-0.17-64.el7.x86_64
telnet-0.17-64.el7.x86_64
[root@azeroth ~]# rpm -qa|grep xinetd
xinetd-2.3.15-13.el7.x86_64
telnet 远程登陆工具,windows里面常常用来测试端口用(- .- !),xinetd 第一次看见,百科里说是监视网络需求的守护进程(不晓得除了telnet以外还有什么网络服务会用这个?求教) ,等下有个叫telnet的配置文件要写在这里面。
安装
果断yum哇!(呵呵,没有网?iso,光驱这两样总得有一样吧,手工挂载制作centos-media.repo源)[图3]
[root@azeroth ~]# yum install telnet telnet-server xinetd -y
loaded plugins: fastestmirror
loading mirror speeds from cached hostfile
* c7-media:
......
执行完就可以查看到 [图2] 的结果了 。
setup 2 telnet进程配置
配置 (重点来了)
安装完以上会在 /etc/xinetd.d/ 目录下生成很多配置文件,ls 看是否有一个名为 telnet 的配置文件,尝试过两台设备 一台安装完会出现 telnet的默认配置,一台则没有,具体原因不详,暂时没查明原因,不过这个不重要可以参看 百科 xinetd制作一个,也可以copy一个。[图 4]
[root@azeroth ~]# ll /etc/xinetd.d/telnet
-rw-r--r--. 1 root root 342 oct 21 21:21 /etc/xinetd.d/telnet
[root@azeroth ~]# cat /etc/xinetd.d/telnet
# default: on
# # description: the telnet server serves telnet sessions; it uses \
# # unencrypted username/password pairs for authentication.
# service telnet
# {
# disable = yes
# flags = reuse
# socket_type = stream
# wait = no
# user = root
# server = /usr/sbin/in.telnetd
# log_on_failure += userid
# }
配置解释(解释不对的地方,请大神指点):
存在此配置文件的情况下, 无需修改,是可以正常使用普通用户登陆telnet服务器的亲测。
说明部分:默认情况下telnet服务为开启, telnet 服务器为 telnet 会话提供服务(废话),它使用未加密的用户名/密码对进行身份验证(试了一下创建一个没有分配密码的用户也没登陆上去)。
{ }部分
# disable = yes //我理解的意思大概是说 { } 内的字段默认情况下是不被使用的(这个理解似乎有问题,原文:”用在默认的 {} 中 禁止服务“,希望有大神指引一下)
# flags = reuse //没有理解这里的意思是什么,请大神帮忙解答 “标识 = 可重复使用” ?
# socket_type = stream // 网络套接字类型
# user = root //使用root用户运行服务
# server = /usr/sbin/in.telnetd //执行进程路径
# log_on_failure += userid //登陆失败日志
注:# disable = yes 此字段为 yes 或者 no 都不是决定能否使用root登陆的条件(此处被度娘搜索到的帖子误导了)
其实,setup3 说了这么多,做了很多次实验和测试,此配置文件和是否能使用root登陆telnet并没有直接的关系(决定是否能使用root登陆和另外一个配置有关系下文 叙述setup 6),此配置文件理解的更多的是和telnet的服务进程有关,哪么问题来了,此配置文件有存在的意义吗?当然,xinet是用来监视守护网络进程的,telnet是被xinetd监视守护的对象,类似于监听的意思,但是比监听功能更强,如上的配置就是用作如何监视,用什么权限监视的配置。
setup3 可以启动了
完成上面的安装和xinetd配置检查,接下来就该添加自启动和运行服务了 [图 5 图 6 ]
[root@azeroth ~]# systemctl enable xinetd.service
[root@azeroth ~]# systemctl start xinetd.service
[root@azeroth ~]# 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 tue 2019-10-22 22:07:22 cst; 4min 29s ago
main pid: 6883 (xinetd)
cgroup: /system.slice/xinetd.service
└─6883 /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid
oct 22 22:07:22 azeroth systemd[1]: started xinetd a powerful replacement for inetd.
oct 22 22:07:22 azeroth xinetd[6883]: removing discard
oct 22 22:07:22 azeroth xinetd[6883]: removing discard
oct 22 22:07:22 azeroth xinetd[6883]: removing echo
oct 22 22:07:22 azeroth xinetd[6883]: removing echo
oct 22 22:07:22 azeroth xinetd[6883]: removing tcpmux
oct 22 22:07:22 azeroth xinetd[6883]: removing time
oct 22 22:07:22 azeroth xinetd[6883]: removing time
oct 22 22:07:22 azeroth xinetd[6883]: xinetd version 2.3.15 started with libwrap loadavg labeled-networking options compiled in.
oct 22 22:07:22 azeroth xinetd[6883]: started working: 0 available services
[root@azeroth ~]# systemctl enable telnet.socket
[root@azeroth ~]# systemctl start telnet.socket
[root@azeroth ~]# systemctl status telnet.socket
● telnet.socket - telnet server activation socket
loaded: loaded (/usr/lib/systemd/system/telnet.socket; enabled; vendor preset: disabled)
active: active (listening) since tue 2019-10-22 22:07:06 cst; 6min ago
docs: man:telnetd(8)
listen: [::]:23 (stream)
accepted: 1; connected: 0
oct 22 22:07:06 azeroth systemd[1]: listening on telnet server activation socket.
setup 4 防火墙放行
最容易感觉到的却也是最容易被遗忘的,捣鼓了半天咋还不能登陆,防火墙忘记放行啦!什么 selinux还没关闭呢?(很多配置telnet的帖子都提到需要关闭selinux,不知道是何用意)不存在的,firewall 放行了还需要关闭selinux嘛?,亲测是不需要关闭的,selinux安全上下文毕竟是redhat系列系统的安全防护重点,不论配置什么应用建议都不要随意关闭,毕竟安全问题不能忽略。[图 7 ]
[root@azeroth ~]# firewall-cmd --add-port=23/tcp --permanent
success
[root@azeroth ~]# firewall-cmd --reload
success
setup 5 完成
完成以上步骤,基本实现了telnet服务的搭建,快到cmd里面使用telnet 连接一下试试看吧!请使用普通用户,root权限还没开 ,如果不行请按照步骤检查或reboot。[图 8]
[root@azeroth ~]# telnet 192.168.11.130
trying 192.168.11.130...
connected to 192.168.11.130.
escape character is '^]'.
kernel 3.10.0-957.5.1.el7.x86_64 on an x86_64
azeroth login: zym
password:
last login: tue oct 22 20:09:08 from ::ffff:192.168.11.1
[zym@azeroth ~]$
setup 6 root权限登陆配置
(不建议开启root权限,以上使用普通用户登陆之后即可su切换root了,一省事,二安全,两全其美)如果需要使用root权限登陆telnet,还需要配置 /etc/securetty,将root允许使用telnet登陆的pts字段添加进配置文件。[图 9 图10]
[root@azeroth ~]# echo 'pts/0' >>/etc/securetty
[root@azeroth ~]# echo 'pts/1' >>/etc/securetty
[root@azeroth ~]# tail -f /etc/securetty
hvc4
hvc5
hvc6
hvc7
hvsi0
hvsi1
hvsi2
xvc0
pts/0
pts/1
[root@azeroth ~]# systemctl restart telnet.socket
以上关于centos7.6 系统telnet服务的配置就全部介绍完了。感谢!
第一次发表随笔博文有点捉襟见肘
推荐阅读
-
学习笔记,CentOS 7.6 Telnet服务搭建
-
基于Windows 7(本地)和CentOS7.6(云端)的Minecraft服务器(无Forge/有Forge)搭建方法
-
Centos 7.6搭建LNMP环境的web服务器
-
《Zabbix企业级分布式监控系统》学习笔记(零)——Zabbix2.2.22+Centos6.10服务器+Windows客户端搭建
-
#后端笔记#在CentOS上利用nginx+nginx-rtmp-module搭建基于RTMP协议的直播服务器
-
基于Windows 7(本地)和CentOS7.6(云端)的Minecraft服务器(无Forge/有Forge)搭建方法
-
微服务学习笔记(2)——搭建consul 集群
-
nginx学习笔记1 使用nginx搭建简单的HTTP服务器
-
node.js学习笔记——搭建一个简单的服务器
-
云服务器Centos7搭建MySQL数据库(学习记录)