Centos7安装telnet-server并升级安装Openssh9.0p1

背景

HW之前漏洞扫描出来机器的一些OpenSSH安全漏洞,且当前的版本是OpenSSH_7.4p1, OpenSSH <7.5 属实有点老了

需求

  • 更新至OpenSSH_9.0p1
  • 更新OpenSSH前先安装telnet-server服务,防止意外发生

1、安装telnet-server服务

  • 查看本机是否安装telnet客户端及服务端
[root@sre ~]# rpm -qa | grep telnet
[root@sre ~]# rpm -qa telnet-server
[root@sre ~]# rpm -qa xinetd

如果什么都不显示。说明你没有安装telnet

  • yum安装xinetd和telnet-server

xinetd是新一代的网络守护进程服务程序

[root@sre ~]# yum install  xinetd telnet telnet-server telnet
  • 启动并配置自启动

注意:因为是由xinetd管理,这里启动的是telnet.socket而不是telnet.service

[root@sre ~]# systemctl start telnet.socket
[root@sre ~]# systemctl start xinetd

[root@sre ~]# systemctl enable xinetd
[root@sre ~]# systemctl enable telnet.socket
  • 查看服务状态
[root@localhost ~]# netstat -tulp|grep telnet
tcp6      0      0 [::]:telnet           [::]:*               LISTEN 1/systemd
[root@localhost ~]# netstat -tunlp|grep 23
tcp6      0      0 :::23                 :::*                 LISTEN 1/systemd

如果看到上述输出则表明telnet-server正常
  • 配置PAM模块允许root远程登录【可选】

注意: 默认情况下,PAM模块限制root不能telnet到telnet-server,可使用普通用户登录后su切换

#移除securetty文件
验证规则设置在/etc/security文件中,该文件定义root用户只能在tty1-tty6的终端上记录,删除该文件或者将其改名即可避开验证规则实现root用户远程登录。

[root@nodel ~]# mv /etc/securetty /etc/securetty.bak

一般不建议直接用root用户远程通过telnet登陆系统,因为telnet在数据传输过程采用明文方式,如果,数据包被人截获,将会很容易获取root用户的登陆口令;还是建议以普通用户通过telnet远程登陆,然后su到root,这样相对比较安全。如果非要用root用户远程连接,建议采用SSH

  • 使用telnet客户端登录

    注意: 本文使用的普通用户登录

[root@sre ~]# telnet 172.16.200.150
Trying 172.16.200.150...
Connected to 172.16.200.150.
Escape character is '^]'.

Kernel 3.10.0-1160.el7.x86_64 on an x86_64
docker login: fxkj
Password: 
Last login: Mon Sep 12 23:16:28 from ::ffff:172.16.10.37

[fxkj@docker ~]$ who am i
fxkj      pts/3        2022-09-12 23:34 (::ffff:172.16.10.37)

#su 登录到root
[fxkj@sre ~]$ su - root
Password: 

Last login: Mon Sep 12 23:25:02 EDT 2022 from ::ffff:172.16.10.37 on pts/3
Last failed login: Mon Sep 12 23:33:18 EDT 2022 from ::ffff:172.16.10.37 on pts/3
There were 2 failed login attempts since the last successful login.
[root@sre ~]# 

2、升级安装Openssh9.0p1

  • 查看当前版本
[root@sre ~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017
  • 下载安装包
[root@sre ~]# wget https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.0p1.tar.gz
  • 解压安装包
[root@sre ~]# tar -xvf openssh-9.0p1.tar.gz
  • 安装前环境准备
[root@sre ~]# yum install -y pam* zlib* openssl-devel gcc make
  • 备份
[root@sre ~]# cp -r /etc/ssh /tmp/
  • 编译安装
[root@sre ~]# cd openssh-9.0p1
[root@sre openssh-9.0p1]# ./configure  --prefix=/usr --sysconfdir=/etc/ssh --with-zlib --with-pam  --without-openssl-header-check --with-ssl-dir=/usr/local/ssl --with-privsep-path=/var/lib/sshd

[root@sre openssh-9.0p1]# make

[root@sre openssh-9.0p1]# rm -rf /etc/ssh/*
[root@sre openssh-9.0p1]# make install
  • 修改SSH配置文件【可选】

    注意: 允许使用root用户远程登录,是否使用PAM认证

[root@sre openssh-9.0p1]# sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config
[root@sre openssh-9.0p1]# sed -i 's/#UsePAM yes/UsePAM yes/g' /etc/ssh/sshd_config
  • 配置systemd管理
[root@sre openssh-9.0p1]# cp -a  contrib/redhat/sshd.init /etc/init.d/sshd
[root@sre openssh-9.0p1]# chkconfig sshd on
[root@sre openssh-9.0p1]# chkconfig --add sshd
[root@sre openssh-9.0p1]# systemctl enable sshd
[root@sre openssh-9.0p1]# systemctl restart sshd
  • 查看升级后版本
[root@sre ~]# ssh -V
OpenSSH_9.0p1, OpenSSL 1.0.2k-fips  26 Jan 2017
  • 使用SSH客户端登录

    注意: 本文使用的普通用户登录

[root@sre ~]# ssh fxkj@172.16.200.150
fxkj@172.16.200.150's password: 
Last login: Mon Sep 12 23:34:06 2022 from ::ffff:172.16.10.37

[fxkj@sre ~]$ su - root
Password: 

Last login: Mon Sep 12 23:35:00 EDT 2022 on pts/3
[root@sre  ~]# 

3、升级后关闭telnet-server服务

  • 关闭telnet-server并取消自启动
[root@sre ~]# systemctl stop telnet.socket
[root@sre ~]# systemctl stop xinetd

[root@sre ~]# systemctl disable xinetd
[root@sre ~]# systemctl disable telnet.socket

4、其他&注意事项

  • 使用普通用户登录系统,需要提前创建用户并设置密码
  • 使用root用户登录系统,需要修改文章中对应的配置文件

5、参考

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/6761

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023年1月20日 下午2:50
下一篇 2023年1月20日 下午2:50

相关推荐

  • Sar—Linux 上最为全面的系统性能分析工具之一

    sar(System Activity Reporter 系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘 I/O、CPU 效率、内存使用状况、进程活动及 IPC 有关的活动等。 我们可以使用sar命令来获得整个系统性能的报告。这有助于我们定位系统性能的瓶…

    2023年4月13日
    8400
  • Linux查看磁盘UUID的几种方式

    查看/dev/disk/by-uuid目录命令: 可以查看系统全部磁盘挂载信息 blkid命令命令: 也可以指定磁盘查看,命令: tune2fs和dumpe2fs配合grep命令: 修改磁盘挂载ID,可以参考:https://help.aliyun.com/document_detail/199739.html挂载磁盘千万不要使用 这种方式,linux系统从…

    2023年7月28日
    7700
  • mysql程序结构 【思维导图】

     一条SQL语句的执行过程 连接层 (1)提供连接协议:TCP/IP 、SOCKET (2)提供验证:用户、密码,IP,SOCKET (3)提供专用连接线程:接收用户SQL,返回结果 通过以下语句可以查看到连接线程基本情况 mysql> show processlist;  SQL层 (重点) (1)接收上层传送的SQL语句 (2)…

    2023年2月7日
    19100
  • Linux下安装配置maven仓库

    1、安装wget命令 如果需要通过使用wget命令,直接通过网络下载maven安装包时,需要在linux系统中安装wget命令。 2、下载maven安装包 在/usr/local/下创建一个maven文件: mkdir /usr/local/maven 切换到安装目录,即新建的文件中: 下载安装: 3、解压缩maven 4、配置maven环境变量 添加环境变…

    2022年6月20日
    65000
  • cobbler搭建

    什么是cobbler Cobbler是一个Linux系统安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。 Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。 Cobbler是较早前的kickstart的升…

    2022年11月26日
    20700

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信