CentOS7.4 离线升级openssh8.4
前言
工作中需要离线升级openssh。网上一些资料说要先安装telnet,这里省略。大家可以先安装telnet ,预防更新ssh失败。
下载openssl安装包
去https://www.openssh.com/portable.html下载openssh安装包,这里要注意,openssh本来是给FreeBSD开发的,所以这里要下载的是它的Portable版本,这个版本才能在linux下安装,这个版本名字里面都带p1。
我们下载openssh-8.4p1.tar.gz,然后运行:
tar zxvf openssh-8.4p1.tar.gz
cd openssh-8.4p1
开始升级
先关闭ssh(我升级时未关闭也可)
systemctl stop sshd
如果没有特殊需求,就是三个命令:
./configure
make
make install
遇到问题
1.“error: *** zlib.h missing - please install first or check config.log ”,这是由于缺少zlib-devel所致,只需安装zlib-devel即可。
解压CentOS7操作系统安装镜像,进入到CentOS-7-x86_64-DVD-1708.iso\Packages目录,这下面存储了很多rpm包。找到zlib-devel-1.2.7-17.el7.x86_64.rpm,上传到服务器,运行安装:
rpm -Uvh ./*.rpm --nodeps --force
2.“*** working libcrypto not found”,于问题1一样,因为缺少openssl-devel包。系统安装镜像里找到openssl-devel-1.0.2k-8.el7.x86_64.rpm包,上传服务器后运行安装:
rpm -Uvh ./*.rpm --nodeps --force
正常结束
运行 :
ssh -V
更新完成。
最后运行:
systemctl restart sshd
开启服务。