前言
centos7自带的ssh是7.4的,公司漏洞扫描出漏洞了,要求升级。
文中升级所用的版本号为:
- openssh-9.3p1
- openssl-1.1.1u
可以去官网下载最新版,替换上述版本号
一、查看已安装的版本号
查看ssl版本号
[root@localhost home]# openssl version
OpenSSL 1.1.1k FIPS 25 Mar 2021
查看ssh版本号
[root@localhost home]# ssh -V
OpenSSH_9.0p1, OpenSSL 1.0.2u 20 Dec 2019
二、升级openssl
下载解压安装
cd /home
wget https://www.openssl.org/source/openssl-1.1.1u.tar.gz
tar zxvf openssl-1.1.1u.tar.gz
cd openssl-1.1.1u && ./config --prefix=/usr/local/ssl shared && make && make install
建立软链接
mv /usr/bin/openssl /usr/bin/openssl.bak
ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/ssl/bin/openssl /usr/local/bin/openssl #仅适用Centos6
ln -s /usr/local/ssl/include/openssl /usr/include/openssl
结果验证
[root@localhost home]# openssl version
OpenSSL 1.1.1u 30 May 2023 (Library: OpenSSL 1.1.1k FIPS 25 Mar 2021)
三、升级openssh
下载解压安装
cd /home
wget https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.3p1.tar.gz
tar zxvf openssh-9.3p1.tar.gz
cd openssh-9.3p1
./configure --without-openssl-header-check --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-pam && make && make install
结果验证
[root@localhost ssh]# service sshd restart
Restarting sshd (via systemctl): [ OK ]
[root@localhost ssh]# ssh -V
OpenSSH_9.3p1, OpenSSL 1.1.1k FIPS 25 Mar 2021
不要断掉当前的ssh链接,另外再开一个新的链接测试一下,有可能会链接失败,失败的话看下面的问题处理方法
四、可能出现的问题
1. 提示秘钥文件权限过度开放
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0640 for '/etc/ssh/ssh_host_ed25519_key' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
修改一下秘钥文件的权限,改为700即可
cd /etc/ssh/
chmod 700 ssh_host_ed25519_key
chmod 700 ssh_host_ecdsa_key
chmod 700 ssh_host_rsa_key
chmod 700 ssh_host_dsa_key
2.输入正确的密码但是一直提示密码错误
可能是启动了ssh但是sshd未启动
[root@localhost ssh]# service sshd restart
Restarting sshd (via systemctl): [ OK ]
如果提示Failed to start sshd.service: Unit sshd.service not found.
需要重装一下sshd
yum -y install openssh-server
systemctl enable sshd
service sshd start
参考
https://blog.csdn.net/huangbaokang/article/details/89887001
https://blog.csdn.net/m0_37656834/article/details/102389241