CentOS 7.6 Telnet服务搭建过程(Openssh升级之战 第一任务备用运输线搭建)
有不明的问题的时候,都来博客园转转,总能找到答案或者灵感,开博3个月都没发一篇帖(不晓得管理员有何感想,不会封我的号吧),不能只是索取没有付出。小白一枚琢磨了半天才扒拉明白Telnet服务搭建(照葫芦画瓢,也要知道葫芦从哪里来的),去繁就简,简单整理一下,分享一下。
Linux上的ssh那么好用为什么还要用Telnet这么老旧的东东呢?最近被SSH暴力枚举漏洞弄得头疼,奈何CentOS7最后版本是7.7(里面只openssh7.4,想升级到openssh8.0),用yum升级ssh是没戏了,rpm的依赖关系(擦汗)。。。。。。,所以只能学编译安装了,第一次使用编译安装这种神器,真怕失手把sshd整挂了,弄个备胎,Telnet是也!
正文:
Setup1系统信息安装
贴下系统信息[图1]
[root@azeroth~]#cat/etc/redhat-release CentOSLinuxrelease7.6.1810(Core)
下面是已经安装完成的Telnet版本查询,如果还没有安装的是没有包信息显示的。[图2]
[root@azeroth~]#rpm-qa|greptelnet telnet-server-0.17-64.el7.x86_64 telnet-0.17-64.el7.x86_64 [root@azeroth~]#rpm-qa|grepxinetd xinetd-2.3.15-13.el7.x86_64
Telnet远程登陆工具,Windows里面常常用来测试端口用(-.-!),Xinetd第一次看见,百科里说是监视网络需求的守护进程(不晓得除了telnet以外还有什么网络服务会用这个?求教),等下有个叫telnet的配置文件要写在这里面。
安装
果断YUM哇!(呵呵,没有网?ISO,光驱这两样总得有一样吧,手工挂载制作CentOS-Media.repo源)[图3]
[root@azeroth~]#yuminstalltelnettelnet-serverxinetd-y Loadedplugins:fastestmirror Loadingmirrorspeedsfromcachedhostfile *c7-media: ......
执行完就可以查看到[图2]的结果了。
Setup2Telnet进程配置
配置(重点来了)
安装完以上会在/etc/xinetd.d/目录下生成很多配置文件,ls看是否有一个名为telnet的配置文件,尝试过两台设备一台安装完会出现telnet的默认配置,一台则没有,具体原因不详,暂时没查明原因,不过这个不重要可以参看百科xinetd制作一个,也可以copy一个。[图4]
[root@azeroth~]#ll/etc/xinetd.d/telnet -rw-r--r--.1rootroot342Oct2121:21/etc/xinetd.d/telnet [root@azeroth~]#cat/etc/xinetd.d/telnet #default:on ##description:Thetelnetserverservestelnetsessions;ituses\ ##unencryptedusername/passwordpairsforauthentication. #servicetelnet #{ #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登陆和另外一个配置有关系下文叙述Setup6),此配置文件理解的更多的是和Telnet的服务进程有关,哪么问题来了,此配置文件有存在的意义吗?当然,Xinet是用来监视守护网络进程的,Telnet是被Xinetd监视守护的对象,类似于监听的意思,但是比监听功能更强,如上的配置就是用作如何监视,用什么权限监视的配置。
Setup3可以启动了
完成上面的安装和Xinetd配置检查,接下来就该添加自启动和运行服务了[图5图6]
[root@azeroth~]#systemctlenablexinetd.service
[root@azeroth~]#systemctlstartxinetd.service
[root@azeroth~]#systemctlstatusxinetd.service
●xinetd.service-XinetdAPowerfulReplacementForInetd
Loaded:loaded(/usr/lib/systemd/system/xinetd.service;enabled;vendorpreset:enabled)
Active:active(running)sinceTue2019-10-2222:07:22CST;4min29sago
MainPID:6883(xinetd)
CGroup:/system.slice/xinetd.service
└─6883/usr/sbin/xinetd-stayalive-pidfile/var/run/xinetd.pid
Oct2222:07:22azerothsystemd[1]:StartedXinetdAPowerfulReplacementForInetd.
Oct2222:07:22azerothxinetd[6883]:removingdiscard
Oct2222:07:22azerothxinetd[6883]:removingdiscard
Oct2222:07:22azerothxinetd[6883]:removingecho
Oct2222:07:22azerothxinetd[6883]:removingecho
Oct2222:07:22azerothxinetd[6883]:removingtcpmux
Oct2222:07:22azerothxinetd[6883]:removingtime
Oct2222:07:22azerothxinetd[6883]:removingtime
Oct2222:07:22azerothxinetd[6883]:xinetdVersion2.3.15startedwithlibwraploadavglabeled-networkingoptionscompiledin.
Oct2222:07:22azerothxinetd[6883]:Startedworking:0availableservices
[root@azeroth~]#systemctlenabletelnet.socket
[root@azeroth~]#systemctlstarttelnet.socket
[root@azeroth~]#systemctlstatustelnet.socket
●telnet.socket-TelnetServerActivationSocket
Loaded:loaded(/usr/lib/systemd/system/telnet.socket;enabled;vendorpreset:disabled)
Active:active(listening)sinceTue2019-10-2222:07:06CST;6minago
Docs:man:telnetd(8)
Listen:[::]:23(Stream)
Accepted:1;Connected:0
Oct2222:07:06azerothsystemd[1]:ListeningonTelnetServerActivationSocket.
Setup4 防火墙放行
最容易感觉到的却也是最容易被遗忘的,捣鼓了半天咋还不能登陆,防火墙忘记放行啦!什么Selinux还没关闭呢?(很多配置Telnet的帖子都提到需要关闭Selinux,不知道是何用意)不存在的,Firewall放行了还需要关闭Selinux嘛?,亲测是不需要关闭的,Selinux安全上下文毕竟是Redhat系列系统的安全防护重点,不论配置什么应用建议都不要随意关闭,毕竟安全问题不能忽略。[图7]
[root@azeroth~]#firewall-cmd--add-port=23/tcp--permanent success [root@azeroth~]#firewall-cmd--reload success
Setup5完成
完成以上步骤,基本实现了Telnet服务的搭建,快到CMD里面使用Telnet连接一下试试看吧!请使用普通用户,root权限还没开,如果不行请按照步骤检查或reboot。[图8]
[root@azeroth~]#telnet192.168.11.130 Trying192.168.11.130... Connectedto192.168.11.130. Escapecharacteris'^]'. Kernel3.10.0-957.5.1.el7.x86_64onanx86_64 azerothlogin:zym Password: Lastlogin:TueOct2220:09:08from::ffff:192.168.11.1 [zym@azeroth~]$
Setup6Root权限登陆配置
(不建议开启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~]#systemctlrestarttelnet.socket
以上关于CentOS7.6系统Telnet服务的配置就全部介绍完了。感谢!
第一次发表随笔博文有点捉襟见肘,写博文一是让自己学习的更扎实;二是希望能有路过看见的大神或者和我一样的小白切磋一二,相互学习指引;技术是用来共享造福人类的。而不是闭门造车,也不只是用来挣钱的工具,这不该是信息共享的本意;三是在网上看见很多的帖子要么叙述不完整,要么有坑,如果有需要的和我一样的小白可以搜索到,这样就能少走一点点弯路节约时间。
总结
以上所述是小编给大家介绍的CentOS7.6Telnet服务搭建过程(Openssh升级之战第一任务备用运输线搭建),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!