CentOS 7.9更新openssh版本到9.8p1
openssh官网下载地址:https://cdn.openbsd.org/pub/OpenBSD/OpenSSH
openssl官网下载地址:https://openssl-library.org/source/old/1.1.1/index.html
【安装包下载链接】
https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
https://github.com/openssl/openssl/releases/download/OpenSSL_1_1_1w/openssl-1.1.1w.tar.gz
一、升级openssl-1.1.1w
yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel libselinux-devel wget vim unzip lrzsz perl pam* zlib* mkdir -p /home/openssh mkdir -p /usr/local/openssl cd /home/openssh/ tar xf openssl-1.1.1w.tar.gz cd openssl-1.1.1w/ ./config --prefix=/usr/local/openssl make && make install mv /usr/bin/openssl /usr/bin/openssl.bak mv /usr/include/openssl /usr/include/openssl.bak unlink /usr/lib64/libssl.so ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl ln -s /usr/local/openssl/include/openssl /usr/include/openssl ln -s /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so echo ‘/usr/local/openssl/lib’ >> /etc/ld.so.conf ldconfig -v ----------------------------------------------------------------------- ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1 ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
【注意:这里如果提示文件已存在,请删除重新做软链接】 unlink /usr/lib64/libssl.so.1.1 unlink /usr/lib64/libcrypto.so.1.1
查看版本:openssl version

二、升级openssh-9.8p1
备份配置文件 一般卸载的时候都会把配置文件以sshd_config.rpmsave的方式另存一份,但是**/etc/pam.d/sshd**这个配置文件并没有另存,建议备份一下【非常重要】。
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
cp /etc/pam.d/sshd /etc/pam.d/sshd.backup
删除低版本rpm包
rpm -e --nodeps `rpm -qa | grep openssh`
cd /home/openssh/
tar -zxvf openssh-9.8p1.tar.gz
cd openssh-9.8p1
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-tcp-wrappers --with-ssl-dir=/usr/local/openssl --without-hardening
make && make install
调整文件权限 chmod 600 /etc/ssh/ssh_host_rsa_key /etc/ssh/ssh_host_ecdsa_key /etc/ssh/ssh_host_ed25519_key 配置启动项 cp -a contrib/redhat/sshd.init /etc/init.d/sshd chmod u+x /etc/init.d/sshd mv /etc/pam.d/sshd.backup /etc/pam.d/sshd mv /etc/ssh/sshd_config /home/openssh/ mv /etc/ssh/sshd_config.backup /etc/ssh/sshd_config chkconfig --add sshd chkconfig sshd on systemctl restart sshd
查看版本:ssh -V
至此,版本升级完成。安全起见不要关闭SSH窗口,新建一个SSH连接,看看能否正常登录。如果不能登录,可以根据 sshd 的日志进行配置调整。
三、安装过程遇到的问题

/usr/lib64/libssl.so.1.1、/usr/lib64/libcrypto.so.1.1 需要删除重新做软链接.

**版本升级后出现SFTP无法正常连接的问题**
核实/etc/ssh/sshd_config里的sftp-server文件路径由原/usr/libexec/openssh/下,改动到了/usr/libexec,修改并重启sshd服务后正常。

【版本回退方法】
yum remove -y openssh && yum install -y openssh openssh-clients openssh-server service sshd restart
【注】:建议清理已保存的公私钥配置文件,rm -rf /etc/ssh/ssh_host
征途漫漫,惟有奋斗!
浙公网安备 33010602011771号