企业网站主页模版,个人搭建网站,济南住房和城乡建设厅网站,免费的推广软件有哪些文章目录 CentOS 7系统 OpenSSH和OpenSSL版本升级指南环境说明当前系统版本当前组件版本 现存安全漏洞升级目标版本升级准备工作OpenSSL升级步骤1. 下载和解压2. 编译安装3. 配置环境 OpenSSH升级步骤1. 下载和解压2. 编译安装3. 创建systemd服务配置4. 更新SSH配置文件5. 设置… 文章目录 CentOS 7系统 OpenSSH和OpenSSL版本升级指南环境说明当前系统版本当前组件版本 现存安全漏洞升级目标版本升级准备工作OpenSSL升级步骤1. 下载和解压2. 编译安装3. 配置环境 OpenSSH升级步骤1. 下载和解压2. 编译安装3. 创建systemd服务配置4. 更新SSH配置文件5. 设置正确的文件权限6. 重启服务7. 验证升级 故障排查指南安全建议总结参考文档 CentOS 7系统 OpenSSH和OpenSSL版本升级指南
在处理服务器安全问题时及时升级关键组件的版本是非常重要的。本文将详细介绍如何在CentOS 7系统上升级OpenSSH和OpenSSL到最新稳定版本以解决已知的安全漏洞。 如果使用红帽系统可以联系厂家打补丁或者升级处理 环境说明
当前系统版本
[roottamkems-yy ~]# cat /etc/redhat-release
CentOS Linux release 7.8.2003 (Core)当前组件版本
[roottamkems-yy ~]# ssh -V
OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
[roottamkems-yy ~]# openssl version
OpenSSL 1.0.2k-fips 26 Jan 2017现存安全漏洞
当前版本存在以下安全漏洞
OpenSSH 安全漏洞(CVE-2023-51767)OpenSSH 安全漏洞(CVE-2023-38408)OpenSSH 命令注入漏洞(CVE-2020-15778)OpenSSH 欺骗安全漏洞(CVE-2019-6110)OpenSSH信息泄露漏洞(CVE-2020-14145)OpenSSH 用户枚举漏洞(CVE-2018-15919)OpenSSH 安全漏洞(CVE-2023-48795)OpenSSH CBC模式信息泄露漏洞(CVE-2008-5161)等多个安全漏洞…
升级目标版本
OpenSSH: 9.6p1OpenSSL: 1.1.1w
升级准备工作
在开始升级之前需要做好以下准备
系统备份
# 创建备份目录
mkdir -p /root/ssh_backup_$(date %Y%m%d)# 备份当前配置
cp -r /etc/ssh/* /root/ssh_backup_$(date %Y%m%d)/
cp /etc/sysconfig/sshd /root/ssh_backup_$(date %Y%m%d)/安装必要的编译工具
# 安装开发工具组
yum groupinstall -y Development Tools# 安装依赖包
yum install -y zlib-devel openssl-devel perl perl-devel pam-develOpenSSL升级步骤
1. 下载和解压
cd /usr/local/src
wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz
tar -zxf openssl-1.1.1w.tar.gz
cd openssl-1.1.1w2. 编译安装
# 配置
./config --prefix/usr/local/openssl shared zlib# 编译和测试
make
make test# 安装
make install3. 配置环境
# 配置动态链接库
echo /usr/local/openssl/lib /etc/ld.so.conf.d/openssl.conf
ldconfig# 替换原有的OpenSSL
mv /usr/bin/openssl /usr/bin/openssl.old
ln -s /usr/local/openssl/bin/openssl /usr/bin/opensslOpenSSH升级步骤
1. 下载和解压
cd /usr/local/src
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.6p1.tar.gz
tar -zxf openssh-9.6p1.tar.gz
cd openssh-9.6p12. 编译安装
# 配置
./configure \--prefix/usr \--sysconfdir/etc/ssh \--with-ssl-dir/usr/local/openssl \--with-zlib \--with-pam \--with-md5-passwords \--with-tcp-wrappers# 编译和安装
make
make install3. 创建systemd服务配置
# 创建 systemd 服务文件
cat /usr/lib/systemd/system/sshd.service EOF
[Unit]
DescriptionOpenSSH server daemon
Documentationman:sshd(8) man:sshd_config(5)
Afternetwork.target[Service]
Typeexec
ExecStart/usr/sbin/sshd -D -e
ExecReload/bin/kill -HUP $MAINPID
KillModeprocess
Restarton-failure
RestartSec3s[Install]
WantedBymulti-user.target
EOF4. 更新SSH配置文件
# 创建新的 sshd_config 配置文件
cat /etc/ssh/sshd_config EOF
# 基本配置
Port 22
AddressFamily any
ListenAddress 0.0.0.0
ListenAddress ::# 协议版本
Protocol 2# 主机密钥
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key# 日志级别
SyslogFacility AUTHPRIV
LogLevel INFO# 认证配置
PermitRootLogin yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication yes
PermitEmptyPasswords no
ChallengeResponseAuthentication no# 其他设置
X11Forwarding yes
PrintMotd no
UsePAM yes
UseDNS no
Subsystem sftp /usr/libexec/openssh/sftp-server
EOF5. 设置正确的文件权限
# 设置关键文件权限
chmod 755 /usr/sbin/sshd
chmod 755 /etc/ssh
chmod 644 /etc/ssh/sshd_config
chmod 600 /etc/ssh/ssh_host_*_key
chmod 644 /etc/ssh/ssh_host_*_key.pub6. 重启服务
# 重新加载 systemd 配置
systemctl daemon-reload# 重启 sshd 服务
systemctl restart sshd# 检查服务状态
systemctl status sshd7. 验证升级
# 检查 SSH 版本
ssh -V# 尝试本地连接测试
ssh -v localhost故障排查指南
如果升级后遇到问题可以按以下步骤排查
检查日志文件
tail -f /var/log/secure
tail -f /var/log/messages检查防火墙设置
firewall-cmd --list-services | grep ssh如需回滚执行以下操作 停止sshd服务从备份目录恢复配置文件重启服务
安全建议
完成升级后建议采取以下安全措施 加强SSH配置 禁用不安全的加密算法限制root用户登录设置登录失败次数限制配置密钥认证 定期维护 检查系统日志监控失败的登录尝试定期检查服务状态
总结
通过以上步骤我们已经成功将OpenSSH和OpenSSL升级到了最新的稳定版本解决了多个安全漏洞。建议在执行升级操作前先在测试环境中进行验证确保升级过程不会影响到生产环境的正常运行。
参考文档
OpenSSH官方文档: https://www.openssh.com/OpenSSL官方文档: https://www.openssl.org/CentOS 7官方文档: https://wiki.centos.org/ 最后愿大家都可以解决工作中和生活中遇到的难题剑锋所指,所向披靡