SSH版本升级-openssh-9.8p1
漏洞描述
OpenSSH(OpenBSD Secure Shell)是加拿大OpenBSD计划组的一套用于安全访问远程计算机的连接工具。该工具是SSH协议的开源实现,支持对所有的传输进行加密,可有效阻止窃听、连接劫持以及其他网络级的攻击。OpenSSH 9.6之前版本存在安全漏洞,该漏洞源于存在操作系统命令注入漏洞。
项目ValueCVE编号CVE-2023-51385CNNVD编号CNNVD-202312-1665
1、查看当前版本
[root@test003 ~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
2、安装openssl
下载入口:新版本ssl
[root@test003 tmp]# tar -zxvf openssl-3.3.0.tar.gz[root@test003 tmp]# yum install cpan -y[root@test003 tmp]# cpan
cpan[1]>install IPC::Cmd
[root@test003 tmp]# yum install gcc-c++ zlib-devel
2.1、编译安装ssl
[root@test003 ]# mv /usr/bin/openssl /usr/bin/openssl_old.bak[root@test003 ]# mv /usr/include/openssl /usr/include/openssl_old.bak[root@test003 tmp]# cd openssl-3.3.0[root@test003 openssl-3.3.0]# ./config --prefix=/usr/local/openssl[root@test003 openssl-3.3.0]# make && make install[root@test003 ]# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl[root@test003 ]# ln -s /usr/local/openssl/include/openssl /usr/include/openssl[root@test003 ]# echo "/usr/local/openssl/lib/" >> /etc/ld.so.conf[root@test003 ]# ldconfig -v[root@test003 ]# ln -s /usr/local/openssl/lib64/libssl.so.3 /usr/lib64/libssl.so.3[root@test003 ]# ln -s /usr/local/openssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3[root@test003 ]# ln -s /usr/local/openssl/lib64/libcrypto.so /usr/lib64/libcrypto.so
# 查看安装情况
openssl version
3、下载新版本SSH
下载入口:新版本SSH
4、备份原有的SSH配置
[root@test003 ~]# mv /usr/sbin/sshd /usr/sbin/sshd.old[root@test003 ~]# mv /usr/bin/ssh /usr/bin/ssh.old# 如果旧版本是源码安装的 OpenSSH,建议备份整个 openssh 目录:[root@test003 ~]# mv /usr/local/openssh /usr/local/openssh.old
5、上传文件并解压
[root@test003 tmp]# tar -zxvf openssh-9.8p1.tar.gz
6、安装依赖
[root@test003 ~]# yum -y install zlib-devel gcc
7、编译安装openssh
7.1、在解压后的目录,初始化openssh
[root@test003 ~]# cd /tmp/openssh-9.8p1[root@test003 openssh-9.8p1]# ./configure --prefix=/usr/local/openssh[root@test003 openssh-9.8p1]# make[root@test003 openssh-9.8p1]# make install
7.2、替换密钥文件
# 备份密钥[root@test003 openssh-9.8p1]# cp -r /usr/local/openssh/etc /usr/local/openssh/etc.bak# 替换为旧版密钥[root@test003 openssh-9.8p1]# cp /etc/ssh/ssh_host_* /usr/local/openssh/etc
7.3、修改配置文件
vim /usr/local/openssh/etc/sshd_config
将 Port 改为 222
#PermitRootLogin prohibit-password 改为 PermitRootLogin yes
启动新版SSH
/usr/local/openssh/sbin/sshd
从其他服务器上测试:ssh IP -p 222
7.4、重启SSH服务
1)恢复配置文件:
vim /usr/local/openssh/etc/sshd_config
将 Port 改回 22
2)创建新版 ssh 软连接
ln-s /usr/local/openssh/sbin/sshd /usr/sbin/
ln-s /usr/local/openssh/bin/ssh /usr/bin/
3)
systemctl restart sshd
`
版权归原作者 深度学习0407 所有, 如有侵权,请联系我们删除。