liunx系统之SSH版本7.4p1升级至9.8p1

admin 2024年8月15日22:10:08评论36 views字数 2734阅读9分6秒阅读模式

环境准备:

1、此次升级的环境是CentOS-7.6.1810   ssh版本7.4p1 

 liunx系统之SSH版本7.4p1升级至9.8p1

2、准备好升级包后上传至/home 目录,上图红色字体就是上传上去的升级包,共计三个,分别是:

   openssh-9.8p1.tar.gz 

   openssl-3.2.2.tar.gz 

   zlib-1.3.1.tar.gz

操作步骤:

第一步:安装编译环境,以及vim等,此次CentOS-7.6是最小化安装,几乎没有安装多余的包,包括vim也没有安装。

#yum install -y vim gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel zlib-devel tcp_wrappers-devel tcp_wrappers libedit-devel perl-IPC-Cmd wget tar lrzsz nano

liunx系统之SSH版本7.4p1升级至9.8p1

备注:一共需要安装78个包

第二步:备份现有的配置

此步对于生产环境非常重要,如果失败回退很重要,如果你的系统还有免密登录 你还需要备份和免密登录相关的文件

cp -rf /etc/ssh /etc/ssh.bakcp -rf /usr/bin/openssl /usr/bin/openssl.bakcp -rf /etc/pam.d /etc/pam.d.bakcp -rf /usr/lib/systemd/system /usr/lib/systemd/system.bak

第三步:解压缩升级包文件

[root@localhost home]# tar -zxvf openssl-3.2.2.tar.gz[root@localhost home]# tar -zxvf openssh-9.8p1.tar.gz[root@localhost home]# tar -zxvf zlib-1.3.1.tar.gz

第四步:安装zlib

[root@localhost home]# cd zlib-1.3.1/[root@localhost zlib-1.3.1]#./configure --prefix=/usr/local/src/zlib[root@localhost zlib-1.3.1]# make -j 4 && make install

liunx系统之SSH版本7.4p1升级至9.8p1

备注:上面过程很快,几秒而已

第五步:安装openssl-3.2.2

[root@localhost home]# cd openssl-3.2.2/[root@localhost openssl-3.2.2]# ./config --prefix=/usr/local/src/openssl

liunx系统之SSH版本7.4p1升级至9.8p1

接下来,更新动态库

make -j 4 && make installmv /usr/bin/openssl /usr/bin/oldopensslln -s /usr/local/src/openssl/bin/openssl /usr/bin/opensslln -s /usr/local/src/openssl/lib64/libssl.so.3 /usr/lib64/libssl.so.3ln -s /usr/local/src/openssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3

liunx系统之SSH版本7.4p1升级至9.8p1

到这里你的openssl-3.2.2安装好了

第六步:安装升级到openssh-9.8p1

    先卸载老的ssh 此处提醒一旦卸载老的ssh,如果您是通过ssh连接,不是直连就不可以掉线、断网、重启,否则您就去机房插上键盘鼠标吧。    

[root@localhost openssh-9.8p1]# yum remove -y openssh[root@localhost openssh-9.8p1]# rm -rf /etc/ssh/*

此时虽然卸载了ssh但是只要不重启ssh ,未退出ssh就能一直用

第七步:配置openssh-9.8p1

#cd openssh-9.8p1#./configure --prefix=/usr/local/src/ssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/usr/local/src/openssl --with-zlib=/usr/local/src/zlib

liunx系统之SSH版本7.4p1升级至9.8p1

第八步:编译安装openssh-9.8p1

#make -j 4 && make install

#/usr/local/src/ssh/bin/ssh -V #查看ssh版本

至此安装完成,查看ssh版本为OpenSSH_9.8p1, OpenSSL 3.2.2 4 Jun 2024,如下图所示

liunx系统之SSH版本7.4p1升级至9.8p1

此处还需要进行一些配置,注意此处我用的是相对路径,因为我此时就在/home openssh-9.8p1目录    

cp -rf contrib/redhat/sshd.init /etc/init.d/sshdcp -rf contrib/redhat/sshd.pam /etc/pam.d/sshdcp -rf /usr/local/src/ssh/sbin/sshd /usr/sbin/sshdcp -rf /usr/local/src/ssh/bin/ssh /usr/bin/sshcp -rf /usr/local/src/ssh/bin/ssh-keygen /usr/bin/ssh-keygen

liunx系统之SSH版本7.4p1升级至9.8p1

[root@localhost openssh-9.8p1]# /etc/init.d/sshd restart  #重启sshd服务

[root@localhost openssh-9.8p1]# systemctl status sshd  #查看ssh状态

liunx系统之SSH版本7.4p1升级至9.8p1

[root@localhost openssh-9.8p1]# chkconfig --add sshd  #一定要添加到启动项

    此时就算是完整了的从7.4升级到了9.8,此次升级如果中途发生意外断网,将会造成无法连接服务器,也可以通过管理口登录服务器进行升级,也有一些人建议临时安装telnet,升级成功后再卸载telnet   这个方案是一个万全之计。

    再就是升级后root将会禁止直接ssh登录,如果您有需要root直接ssh登录的需求可以使用如下命令允许root直接登录(建议禁止root用户ssh登录)

echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config

echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config

liunx系统之SSH版本7.4p1升级至9.8p1

原文始发于微信公众号(老五说网络):liunx系统之SSH版本7.4p1升级至9.8p1

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年8月15日22:10:08
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   liunx系统之SSH版本7.4p1升级至9.8p1https://cn-sec.com/archives/3069542.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息