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

相关推荐

  • Linux系统部署BBR服务器加速软件

    一、BBR加速软件介绍  BBR简介:  BBR是谷歌的黑科技,也可以理解为用来加速网络的软件,如果服务器在海外,会发现丢包率很高,线路还会时断时续。所以,不用点黑科技,肯定是没办法使用。而BBR加速能充分利用网络带宽 BBR的作用就是尽量跑满带宽,并且尽量不要有排队的情况。BBR可以起到单边加速TCP连接的效果。通俗来讲就是最大化利用网络上瓶颈线路的带宽。…

    2023年12月1日
    49500
  • linux中为cp和mv命令添加进度条

    安装高级复制补丁以在 Linux 中向 cp 和 mv 命令添加进度条 cp 和 mv 命令是GNU coreutils. 所以你需要GNU coreutils从这里下载最新的。 现在两个新的补丁的二进制文件即cp与mv将在中创建coreutils-9.0/src的文件夹。只需将它们复制到你的 $PATH 中,如下所示: 该cpg和mvg命令有现在进度条的功…

    2023年6月16日
    54600
  • 对象存储

    我们知道,在很长的一段时间里,这三种架构几乎统治了数据存储市场。所有行业用户的数据存储需求,都是在这三者中进行选择。 然而,随着时代的发展,一种新的数据存储形态诞生,开始挑战前面三者的垄断地位。 没错,它就是云计算时代存储技术的新网红——对象存储。 对象存储,也称为“面向对象的存储”,英文是Object-based Storage。现在很多云厂商,也直接称之…

    2024年2月6日
    47900
  • Linux 从 lsof 开始,深入理解 Linux 虚拟文件系统!

    背景 有时会出现这样的情况,磁盘空间显示已经被占满,但是在查看磁盘的具体文件占用情况时,发现磁盘仍然有很大的空余空间。 1. 执行df命令查看磁盘使用情况,发现磁盘已经满了。 2. 执行du命令查看各个目录的磁盘占用情况,把各个目录文件的大小相加,发现并没有占满磁盘,有10多G空间莫名失踪。 3. 为何会出现这样的情况呢? 因为虽然文件已被删除,但是一些进程…

    2024年2月20日
    86100
  • linux(Mac)下查看文件编码及修改编码

    查看文件编码 在Linux中查看文件编码可以通过以下几种方式: 1. 在Vim中可以直接查看文件编码 即可显示文件编码格式。如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在~/.vimrc 文件中添加以下内容: 这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照 fileenc…

    2023年8月15日
    85900

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信