Linux 服务器升级 openssh9.8 详解!!
创始人
2024-09-26 08:49:17
0

2024年7月1日,openssh 发布了最新版 9.8,但是下载最新版openssh9.8,也需要将 openssl 也一并进行升级。

一、下载 openssh 最新版本与 openssl 对应版本

openssh 最新版本下载地址:https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable//

openssl 对应版本下载地址(下载 OpenSSL 1.1.1v)

Release OpenSSL 1.1.1v · openssl/openssl · GitHub

二、 Openssl 安装

  1. 安装前的检查:

查看 Centos 系统版本信息

[root@reece ~]# cat /etc/redhat-release  CentOS Linux release 7.9.2009 (Core)

查看 openssl 版本信息

[root@reece ~]# openssl version OpenSSL 1.0.2k-fips  26 Jan 2017

查看 ssh 版本信息

[root@reece ~]# ssh -V OpenSSH_7.4p1, OpenSSL 1.0.2k-fips  26 Jan 2017
  1. 注意 openssh9.8p1 要求 openssl 版本大于等于 1.1.1,所以需要先安装openssl。

将 openssl-1.1.1v 解压到 /usr/local 目录下

[root@reece ~]# ls anaconda-ks.cfg  openssh-9.8p1.tar.gz  openssl-1.1.1v.tar.gz [root@reece ~]# tar xzf openssl-1.1.1v.tar.gz -C /usr/local

查看是否解压到当前目录

[root@reece ~]# ll /usr/local/ | grep openssl drwxrwxr-x. 19 root root 4096 Aug  1  2023 openssl-1.1.1v

创建安装目录

[root@reece ~]# mkdir /opt/openssl [root@reece ~]# ll /opt/openssl/ total 0

进入 openssl-1.1.1v 目录

[root@reece ~]# cd /usr/local/openssl-1.1.1v/ [root@reece openssl-1.1.1v]# ls ACKNOWLEDGEMENTS  config.com      engines   LICENSE        NOTES.VMS      test apps              Configurations  e_os.h    ms             NOTES.WIN      tools appveyor.yml      Configure       external  NEWS           os-dep         util AUTHORS           CONTRIBUTING    FAQ       NOTES.ANDROID  README         VMS build.info        crypto          fuzz      NOTES.DJGPP    README.ENGINE  wycheproof CHANGES           demos           include   NOTES.PERL     README.FIPS config            doc             INSTALL   NOTES.UNIX     ssl

预编译之前的依赖

[root@reece openssl-1.1.1v]# yum -y install pam-devel zlib zlib-devel gcc make

配置编译和安装过程 “--prefix=选项配置安装目录”

[root@reece openssl-1.1.1v]# ./config --prefix=/opt/openssl

构建程序所需指令和依赖

[root@reece openssl-1.1.1v]# make

安装编译好的 openssl-1.1.1v

[root@reece openssl-1.1.1v]# make install

注:上面的几步必须全部没有报错(error)才可以进行下一步,无报错才视为安装成功。

  1. 更新lib文件

检查 openssl-1.1.1v 所需要的函数库

[root@reece openssl-1.1.1v]# ldd /opt/openssl/bin/openssl     linux-vdso.so.1 =>  (0x00007ffe0c941000)     libssl.so.1.1 => not found     libcrypto.so.1.1 => not found     libdl.so.2 => /lib64/libdl.so.2 (0x00007f6ef4997000)     libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6ef477b000)     libc.so.6 => /lib64/libc.so.6 (0x00007f6ef43ad000)     /lib64/ld-linux-x86-64.so.2 (0x00007f6ef4b9b000)

添加 openssl-1.1.1v 的库文件路径到 ld.so.conf

[root@reece openssl-1.1.1v]# echo "/opt/openssl/lib" >> /etc/ld.so.conf

更新系统函数库

[root@reece openssl-1.1.1v]# ldconfig --verbose

查看旧版本的 openssl 命令路径

[root@reece openssl-1.1.1v]# which openssl /usr/bin/openssl

重名了为 openssl.old

[root@reece openssl-1.1.1v]# mv /bin/openssl /bin/openssl.old

使用软连接的方式更新 openssl 命令

[root@reece openssl-1.1.1v]# ln -s /opt/openssl/bin/openssl /bin/openssl

查看 openssl 版本

[root@reece openssl-1.1.1v]# openssl version OpenSSL 1.1.1v  1 Aug 2023

三、Openssh9.8 安装

  1. 解压下载的安装包,卸载原来包

[root@reece ~]# tar xzf openssh-9.8p1.tar.gz 

卸载 openssh 的 rpm 包

[root@reece ~]# for i in $(rpm -qa | grep openssh);do rpm -e $i --nodeps;done
  1. 配置解压文件,开始编译

[root@reece ~]# ls anaconda-ks.cfg  openssh-9.8p1  openssh-9.8p1.tar.gz  openssl-1.1.1v.tar.gz [root@reece ~]# cd openssh-9.8p1

配置编译和安装过程,"--prefix=" 配置安装目录,"--sysconfdir=" 配置文件路径,"--with-ssl-dir=" openssl 的安装路径

[root@reece openssh-9.8p1]# ./configure --prefix=/usr/local/openssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/opt/openssl --with-md5-passwords --mandir=/usr/share/man --with-zlib=/usr/local/zlib --without-hardening

构建程序所需指令和依赖关系

[root@reece openssh-9.8p1]# make

安装并编译 openssh9.8p1

[root@reece openssh-9.8p1]# make install

注:上面的几步必须全部没有报错(error)才可以进行下一步,无报错才视为安装成功。

四、修改启动 sshd,init 脚本

从源码目录下复制 sshd.init 到 /etc/init.d/

[root@reece ~]# cp /root/openssh-9.8p1/contrib/redhat/sshd.init /etc/init.d/

查看并修改 sshd 的新路径,将新的 openssh 安装路径更新

[root@reece ~]# cat /etc/init.d/sshd.init | grep sshd
[root@reece ~]# sed -i "s/SSHD=\/usr\/sbin\/sshd/SSHD=\/usr\/local\/openssh\/sbin\/sshd/g" /etc/init.d/sshd.init
[root@reece ~]# cat /etc/init.d/sshd.init | grep SSHD SSHD=/usr/local/openssh/sbin/sshd     $SSHD -t     $SSHD $OPTIONS && success || failure     killproc $SSHD -TERM     killproc $SSHD -HUP         status $SSHD

查看并修改 ssh-keygen 的新路径,将新的 ssh-keygen 安装路径更新

[root@reece ~]# cat -n /etc/init.d/sshd.init | grep ssh-keygen     41      /usr/bin/ssh-keygen -A
[root@reece ~]# sed -i "s#/usr/bin/ssh-keygen -A#/usr/local/openssh/bin/ssh-keygen -A#g" /etc/init.d/sshd.init
[root@reece ~]# cat -n /etc/init.d/sshd.init | grep ssh-keygen     41      /usr/local/openssh/bin/ssh-keygen -A

五、启动 openssh,并设置开机启动

复制 ssh 的相关命令

[root@reece ~]# cp -arp /usr/local/openssh/bin/* /usr/bin

启动ssh服务

[root@reece ~]# /etc/init.d/sshd.init

查看版本

[root@reece ~]# ssh -V

添加开机启动

[root@reece ~]# chmod +x /etc/rc.d/rc.local
[root@reece ~]# echo "/etc/init.d/sshd.init start" >> /etc/rc.d/rc.local

报错解决

如果启动不成功,通过命令查看,是什么原因导致的

#通过 systemctl status sshd 查看 sshd 是否正常启动

[root@reece ~]# systemctl status sshd

如果执行上边命令也不可以,那么需要执行:

[root@reece ~]# yum install -y openssh-server 

执行后,如果显示 activing 或者 dead 没有正常启动,那么需要执行命令,查看具体异常原因:

[root@reece ~]# tail -f /var/log/messages

报错二:

解决报错:

[root@reece ~]# vim /etc/ssh/sshd_config

取消注释

重启sshd

[root@reece ssh]# systemctl restart sshd

阿里云解决方案(参考):

通过SSH客户端登录Linux实例时提示“Permission denied, please try again”错误怎么办?_云服务器 ECS(ECS)-阿里云帮助中心

相关内容

热门资讯

IA解析/牛牛房卡代理新星游/... 新星游/凤凰大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:33...
科技实测!金花房卡批发价新永和... 科技实测!金花房卡批发价新永和/皇豪互娱/房卡最便宜的中心Sa9Ix苹果iPhone 17手机即将进...
一分钟了解!怎么买斗牛房卡芝麻... 您好!微信芝麻大厅大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(芝麻大厅)大厅介绍:...
玩家攻略,牛牛充值房卡皇豪互众... 今 日消息,皇豪互众/新道游房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更...
头条推荐!牛牛房卡怎么购买朱雀... 朱雀大厅房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3、根...
玩家攻略,金花房卡制作链接海航... 微信游戏中心:海航大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
ia攻略/金花房卡代理零售龙王... ia攻略/金花房卡代理零售龙王大厅/微信链接哪里购买房卡Sa9Ix苹果iPhone 17手机即将进入...
我来教你/斗牛房间怎么创建的新... 您好!微信新蜜瓜大厅/随意玩大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(新蜜瓜大厅...
一分钟了解!金花房卡批发价九酷... 九酷大厅/随意玩房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 ...
IA解析/金花微信链接市场价格... 微信游戏中心:逍遥大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
科技实测!斗牛房卡充值大众互娱... 大众互娱是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
推荐一款!斗牛房间怎么创建的新... 推荐一款!斗牛房间怎么创建的新海贝大厅/新神兽/房卡批发市场价格表Sa9Ix苹果iPhone 17手...
重大通报,怎么买斗牛房卡嫦娥大... 今 日消息,嫦娥大厅房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
我来教你/金花房卡批发价新西游... 新西游/飞鹰互娱房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 ...
一分钟了解!金花房卡怎么购买龙... 一分钟了解!金花房卡怎么购买龙马大厅/房卡最便宜的中心龙马大厅是一款非常受欢迎的游戏,咨询房/卡添加...
重大通报,金花房卡出售起点大厅... 微信游戏中心:起点大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
正规平台有哪些,金花房卡出售水... 您好!微信水仙大厅大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(水仙大厅)大厅介绍:...
IA解析/牛牛房卡游戏平台加盟... 微信游戏中心:玉兔大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
一分钟了解!斗牛房卡充值鸿狐大... 鸿狐大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
我来教你/牛牛房卡哪里有卖的新... 我来教你/牛牛房卡哪里有卖的新道游/新皇豪/微信小游戏充值房卡Sa9Ix苹果iPhone 17手机即...