CentOS7升级SSH最新版本(9.4p1)详细步骤

这篇具有很好参考价值的文章主要介绍了CentOS7升级SSH最新版本(9.4p1)详细步骤。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

引言

当前操作系统情况

第一步:下载SSH和SSL安装包

第二步:安装配置Telnet(防止ssh安装失败无法连接)

1、安装Telnet

2、运行Telnet服务

3、移除文件

4、使用Telnet远程连接

第三步:卸载旧版本SSH

第四步:安装依赖包

第五步:升级SSL

1、解压源码包 

2、进入源码包执行config文件

3、编译安装

4、配置软连接

5、查看是否安装成功

第六步:升级SSH

1、解压源码包

2、进入源码包目录编译安装 

 3、复制配置文件

4、配置/etc/ssh/sshd_config文件(允许root账户远程登录)

5、添加SSH开机自启动

6、重启ssh服务,查看sshd运行状态

7、查看安装结果

8、删除telnet-server包


引言​​​​​​​

最近接了一个安全服务加固项目,看了一眼大部分是基于SSH与SSL的CVE漏洞,根据修复建议就是升级更高的版本,或者打补丁,于是就对服务器的OpenSSH和OpenSSL进行了升级。(升级了一天,感觉自己就是敲键盘的猴子,手指头酸痛酸痛的😭),废话不多说,记录一下升级的步骤和遇到的坑,希望可以帮助到大家~

OpenSSH9.4P1要求OpenSSH版本最低为1.1

centos7 openssh升级,安全服务加固,linux,运维,服务器

当前操作系统情况

!!!这一步非常重要!!!

先确定服务器操作系统的版本,因为不同版本的操作系统用到的命令存在很大的差异。比如centOS 6版本就需要手动安装很多组件,可以使用下面的命令确定操作系统版本以及OpenSSH与OpenSSL版本:

[root@xiaogu ~]# cat /etc/redhat-release      //查看操作系统版本
CentOS Linux release 7.9.2009 (AltArch)
[root@xiaogu ~]# ssh -V          //查看SSH和SSL版本
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017

这里是本机的操作系统和当前的OpenSSH与OpenSSL版本:

操作系统版本:Centos Linux release 7.9.2009

SSH版本:OpenSSH 7.4p1      SSL版本:OpenSSL 1.0.2k

centos7 openssh升级,安全服务加固,linux,运维,服务器

第一步:下载SSH和SSL安装包

这里下载有两种方式:

1、离线安装一般是自己现在官网上下载好安装包,传到服务器中(笔者安装方式)

2、通过wget下载

!!!离线安装!!!必须先传安装包,因为后面删除旧版本ssh和ssl就无法传文件了

我这里将SSH升级到最新版本9.4p1,SSL升级到1.1.1v,如下图,已将安装包传至服务器中

centos7 openssh升级,安全服务加固,linux,运维,服务器

第二步:安装配置Telnet(防止ssh安装失败无法连接)

1、安装Telnet

一般Linux系统自带Telnet客户端,我们只需要安装服务端即可;另外的,Telnet运行需要依靠xinetd组件,这里我一起下载,命令如下:

[root@xiaogu ~]# yum install telnet-server.x86_64 xinetd.x86_64

2、运行Telnet服务

[root@xiaogu ~]# systemctl enable telnet.socket  
[root@xiaogu ~]# systemctl start telnet.socket      //启动telnet.socket
[root@xiaogu ~]# systemctl start xinetd      //启动telnet.socket
[root@xiaogu ~]# systemctl status telnet.socket    //查看telnet状态
● telnet.socket - Telnet Server Activation Socket
   Loaded: loaded (/usr/lib/systemd/system/telnet.socket; enabled; vendor preset: disabled)
   Active: active (listening) since Wed 2023-08-30 16:41:59 EDT; 6min ago
     Docs: man:telnetd(8)
   Listen: [::]:23 (Stream)
 Accepted: 0; Connected: 0

Aug 30 16:41:59 xiaogu systemd[1]: Listening on Telnet Server Activation Socket.

3、移除文件

Linux系统中默认不允许root账户telnet远程登录,这里需要移除配置文件,保证root账户能够远程登录。

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

4、使用Telnet远程连接

这里我们切换到Telnet协议进行远程连接,防止后面卸载就版本SSH断连。

centos7 openssh升级,安全服务加固,linux,运维,服务器

第三步:卸载旧版本SSH

[root@xiaogu ~]# yum remove openssh -y   //卸载旧版本SSH
[root@xiaogu ~]# rm -rf /etc/ssh/*       //删除原SSH文件

第四步:安装依赖包

[root@xiaogu ~]# yum -y install zlib* pam-* gcc make

第五步:升级SSL

1、解压源码包 

[root@xiaogu ~]# tar -zxvf openssl-1.1.1v.tar.gz

2、进入源码包执行config文件

[root@xiaogu ~]# cd /root/openssl-1.1.1v
[root@xiaogu openssl-1.1.1v]# ./config --prefix=/usr/local/openssl
//这里顺利安装后直接看3、编译安装
  • 可能会遇到的报错信息1:

             Operating system: aarch64-whatever-linux2
             You need Perl 5. 

这是由于未安装perl导致的,只需安装perl后,再重新运行config文件即可。

[root@xiaogu openssl-1.1.1v]# yum install perl*  //安装Perl命令
[root@xiaogu openssl-1.1.1v]# ./config --prefix=/usr/local/openssl  //安装Perl后再重新执行
  • 可能会遇到的报错信息2:

         Can't locate IPC/Cmd.pm in @IN。。。。。

[root@xiaogu openssl-1.1.1v]# yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker
[root@xiaogu openssl-1.1.1v]# ./config --prefix=/usr/local/openssl  //重新执行

3、编译安装

[root@xiaogu openssl-1.1.1v]# make -j4 && make install

4、配置软连接

[root@xiaogu openssl-1.1.1v]# ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
[root@xiaogu openssl-1.1.1v]# ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
[root@xiaogu openssl-1.1.1v]# ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

可能遇到的报错信息:提示已存在。。。。

将参数换成-b即可

5、查看是否安装成功

[root@xiaogu openssl-1.1.1v]# openssl version
OpenSSL 1.1.1v  1 Aug 2023    //出现类似这样的信息说明升级安装成功了

第六步:升级SSH

1、解压源码包

[root@xiaogu ~]# tar -zxvf openssh-9.4p1.tar.gz

2、进入源码包目录编译安装 

[root@xiaogu openssh-9.4p1]# ./configure --prefix=/usr/ --sysconfdir=/etc/ssh  --with-openssl-includes=/usr/local/openssl/include --with-ssl-dir=/usr/local/openssl   --with-zlib   --with-md5-passwords   --with-pam && make -j4&& make install

如果找不到openssl lib,执行:文章来源地址https://www.toymoban.com/news/detail-760374.html

[root@xiaogu openssh-9.4p1]# ./configure --prefix=/usr/ --sysconfdir=/etc/ssh  --with-openssl-includes=/usr/local/openssl/include --with-ssl-dir=/usr/local/openssl   --with-zlib   --with-md5-passwords  CCFLAGS="-I /usr/lib/openssl/openssl/include" LDFLAGS="-L /usr/lib/openssl/openssl/lib64"  --with-pam && make && make install

 3、复制配置文件

[root@xiaogu openssh-9.4p1]# cp -a contrib/redhat/sshd.init /etc/init.d/sshd
[root@xiaogu openssh-9.4p1]# chmod u+x /etc/init.d/sshd

4、配置/etc/ssh/sshd_config文件(允许root账户远程登录)

[root@xiaogu ~]# vim /etc/ssh/sshd_config 
PasswordAuthentication yes     //取消该行注释
PermitRootLogin yes      //添加改行,允许root账户远程登录

5、添加SSH开机自启动

[root@xiaogu ~]# chkconfig --add sshd
[root@xiaogu ~]# chkconfig sshd on

6、重启ssh服务,查看sshd运行状态

[root@xiaogu ~]# systemctl restart sshd       //重启sshd服务
[root@xiaogu ~]# systemctl status sshd        //查看sshd运行状态
● sshd.service - SYSV: OpenSSH server daemon
   Loaded: loaded (/etc/rc.d/init.d/sshd; bad; vendor preset: enabled)
   Active: active (running) since Wed 2023-08-30 19:39:40 EDT; 8s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 31118 ExecStart=/etc/rc.d/init.d/sshd start (code=exited, status=0/SUCCESS)
 Main PID: 31126 (sshd)
    Tasks: 1
   CGroup: /system.slice/sshd.service
           └─31126 sshd: /usr/sbin/sshd [listener] 0 of 10-100 startups

Aug 30 19:39:40 xiaogu systemd[1]: Starting SYSV: OpenSSH server daemon...
Aug 30 19:39:40 xiaogu sshd[31118]: /sbin/restorecon:  lstat(/etc/ssh/ssh_host_dsa_key.pub) failed:  No such file or directory
Aug 30 19:39:40 xiaogu sshd[31126]: Server listening on 0.0.0.0 port 22.
Aug 30 19:39:40 xiaogu sshd[31126]: Server listening on :: port 22.
Aug 30 19:39:40 xiaogu sshd[31118]: Starting sshd:[  OK  ]
Aug 30 19:39:40 xiaogu systemd[1]: Started SYSV: OpenSSH server daemon.

7、查看安装结果

[root@xiaogu ~]# ssh -V
OpenSSH_9.4p1, OpenSSL 1.1.1v  1 Aug 2023        //已升级安装完成

8、删除telnet-server包

[root@xiaogu ~]# yum remove telnet-server -y //只删除服务端,不删除客户端,方便以后安装

到了这里,关于CentOS7升级SSH最新版本(9.4p1)详细步骤的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CentOS7 OpenSSL升级1.1.1w;OpenSSH 升级 9.5p1 保姆级教程

      OpenSSH 的加密功能需要用到OpenSSL,所以在升级OpenSSH的时候,大部分情况是需要将OpenSSL一起升级的。 这里我们选择先升级OpenSSL到OpenSSL 1.1.1w  11 Sep 2023 然后再升级OpenSSH 到OpenSSH_9.5p1, OpenSSL 1.1.1w  11 Sep 2023 两个都是最新版本,方便大家食用。 在升级之前先将需要的包上传到

    2024年02月08日
    浏览(50)
  • CentOS离线升级OpenSSH至9.6p1版本

    一、问题背景         目前经过安全部门漏洞扫描设备扫描出CentOS系统存在OpenSSH相关漏洞,现修复建议是OpenSSH过低版本升级至9.6p1版本,但是升级过程中其他依赖也需安装,例如OpenSSL、zlib等。 二、下载安装包         需要下载对应版本安装包后,上传至服务器上(

    2024年04月23日
    浏览(30)
  • 【Linux】 OpenSSH_7.4p1 升级到 OpenSSH_9.4p1(亲测无问题,建议收藏)

    👨‍🎓 博主简介   🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊 交流社区: 运维交流社区 欢迎大家的加入! 🐋 希望大家多多支持,我们一起进步!😄 🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏

    2024年02月05日
    浏览(39)
  • Centos7安装部署k8s(kubernetes)最新v1.27.1版本超详细安装教程

    从零开始的k8s安装 硬件配置要求 cpu = 2核 硬盘 = 20G 内存 = 2G 节点数量建议为奇数(3, 5, 7, 9等)(1台好像也能搭,没试过) 以下命令出除特殊要求外,其余都建议在master主机执行 本教程配置如下 主机名 IP 配置 master 192.168.42.150 2核+2G+20G node1 192.168.42.151 2核+2G+20G node2 192.168.

    2024年02月11日
    浏览(47)
  • CentOS 7 源码制作openssh 9.4p1/9.5p1 rpm包 —— 筑梦之路

    参考之前的博客: centos 7 制作openssh8.7/8.8/8.9/9.0/9.1/9.2/9.3 p1 rpm包升级——筑梦之路_openssh rpm包_筑梦之路的博客-CSDN博客 需要说明的是9.4及以上版本必须要openssl 1.1.1,低于此版本无法完成编译 。这也是单独写这篇文章的必要性。  参考这篇编译安装最新版openssl CentOS 7 源码编

    2024年02月06日
    浏览(44)
  • Linux OpenSSH最新版9.7p1升级操作详细教程

    原创声明:非本人许可,谢绝转载! 前几天与朋友闲聊中得知他朋友圈有服务器因OpenSSH漏洞遭受攻击的事情,OpenSSH重要性这里就不废话了,在网上一查,公布的漏洞还真不少,其中还有不少利用难度很低的漏洞。查了下自已管辖服务器的OpenSSH版本,天啊,这不妥妥的是待宰

    2024年04月27日
    浏览(56)
  • CentOS 7 源码制作openssh 9.4p1 rpm包 —— 筑梦之路

    参考之前的博客: centos 7 制作openssh8.7/8.8/8.9/9.0/9.1/9.2/9.3 p1 rpm包升级——筑梦之路_openssh rpm包_筑梦之路的博客-CSDN博客 需要说明的是9.4及以上版本必须要openssl 1.1.1,低于此版本无法完成编译 。这也是单独写这篇文章的必要性。  参考这篇编译安装最新版openssl CentOS 7 源码编

    2024年02月09日
    浏览(39)
  • 【Linux】 OpenSSH_9.3p2 升级到 OpenSSH_9.4p1(亲测无问题,建议收藏)

    👨‍🎓 博主简介   🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊 交流社区: 运维交流社区 欢迎大家的加入! 🐋 希望大家多多支持,我们一起进步!😄 🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏

    2024年02月05日
    浏览(32)
  • 史诗级详细离线更新centos系统的openssh,升级到9.3p1!!

    前言 一、openssh是什么? 二、更新步骤 1.查看相关组件版本是否存在(代码包已全部打包) 2.进行openssh离线更新 总结(安装时可能出现的问题等)   OpenSSH是 Secure SHell(安全外壳协议,简称SSH)协议的免费开源实现。SSH协议族可以用来进行远程控制, 或在计算机之间传送文件

    2024年02月14日
    浏览(41)
  • centos7 升级 gcc 版本

    GNU Mirror List 查看动态库版本 查找gcc生成的最新动态库 查看libstdc++.so 进入libstdc++.so配置目录 CentOS 7官方源的gcc最新版本是4.8.5,发布于2015年,年代久远且不支持c++14。要编译c++14及以上项目,必须要升级现有版本或者安装高版本的gcc。红帽其实已经编译好了高版本的gcc,但未

    2023年04月26日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包