SSH版本升级-openssh-9.8p1
深度学习0407 2024-07-14 17:37:01 阅读 100
SSH版本升级-openssh-9.8p1
1、查看当前版本2、安装openssl2.1、编译安装ssl
3、下载新版本SSH4、备份原有的SSH配置5、上传文件并解压6、安装依赖7、编译安装openssh7.1、在解压后的目录,初始化openssh7.2、替换密钥文件7.3、修改配置文件7.4、重启SSH服务
漏洞描述
OpenSSH(OpenBSD Secure Shell)是加拿大OpenBSD计划组的一套用于安全访问远程计算机的连接工具。该工具是SSH协议的开源实现,支持对所有的传输进行加密,可有效阻止窃听、连接劫持以及其他网络级的攻击。OpenSSH 9.6之前版本存在安全漏洞,该漏洞源于存在操作系统命令注入漏洞。
项目 | Value |
---|---|
CVE编号 | CVE-2023-51385 |
CNNVD编号 | CNNVD-202312-1665 |
1、查看当前版本
<code>[root@test003 ~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
2、安装openssl
下载入口:新版本ssl
<code>[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配置
<code>[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
<code>#PermitRootLogin prohibit-password 改为 PermitRootLogin yes
启动新版SSH
<code>/usr/local/openssh/sbin/sshd
从其他服务器上测试:ssh IP -p 222
7.4、重启SSH服务
1)恢复配置文件:<code>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
`
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。