查看linux版本
cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
升级
yum update openssh -y
升级openssl和openssh
下载openssl
https://ftp.openssl.org/source/
下载openssh
http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
yum update openssh -y
升级openssl
我把软件下载到/opt/update
目录下
当前版本
tar -zxvf openssl-1.1.1u.tar.gz
cd openssl-1.1.1u
./config shared && make && make install
报错
gcc: command not found
安装
yum -y install gcc+ gcc-c++
再次安装
进入/opt/update
./config shared && make && make install
备份之前的,不备份会报错说File exists,按顺序操作就行
mv /usr/bin/openssl /usr/bin/openssl_old
ln -s /usr/local/bin/openssl /usr/bin/openssl
如果执行openssl version报下面的错误
openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
执行下面的命令
ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/
ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/
再执行openssl version看依下版本
操作历史如下,升级openssl完成
升级openssh
先看一下当前ssh的版本号
#下载,解压
wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.3p1.tar.gz
tar -zxvf openssh-9.3p1.tar.gz
cd openssh-9.3p1
#备份
mkdir /etc/ssh_old
mv /etc/ssh/* /etc/ssh_old/
#安装
yum install zlib-devel openssl-devel pam-devel -y
./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/lib64/ --with-zlib --with-pam --with-md5-password --with-ssl-engine --with-selinux
make && make install
#验证
ssh -V
配置ssh
修改sshd_config
vim /etc/ssh/sshd_config
#配置root登录
PermitRootLogin yes
启动
#移走以前的ssh服务, 防止与新的冲突
mv /usr/lib/systemd/system/sshd.service /etc/ssh_old/sshd.service
mv /usr/lib/systemd/system/sshd.socket /etc/ssh_old/sshd.socket
#在解压包中拷贝一些文件
cp -a contrib/redhat/sshd.init /etc/init.d/sshd
#重新启动
systemctl daemon-reload
/etc/init.d/sshd restart
#添加自启动
chkconfig --add sshd
chkconfig sshd on
查看版本
ssh -V
升级成功
操作历史
参考文献
主要参考的这篇博客,感谢薛神的指导,自己动手操作记录一下。
https://segmentfault.com/a/1190000022756834