Centos 升级 OpenSSH 到 9.0

近日有安全提示:OpenSSH XMSS Key 解析整数溢出漏洞。

XMSS中使用的签名方案是有状态的,这意味着密钥随时间而变化,此过程需要考虑以前保存的“状态”(如果有)。负责处理XMSS保存的“状态”的函数会由于整数溢出漏洞而导致内存破坏。任何可以解析私有XMSS密钥的OpenSSH函数都容易受到攻击。

披露时间:2019-10-09 00:00:00 CVE编号:CVE-2019-16905

修复方案

升级OpenSSH至8.1及以上版本

需确认机器已安装的软件包中不存在低版本openssh组件,如可通过执行命令:rpm -qa | grep openssh查看组件版本。

准备工作

安装编译所需依赖软件包:

yum install -y wget gcc pam-devel libselinux-devel zlib-devel openssl-devel

复制

下载 OpenSSH 安装包上传至服务器wget 直接下载

cd /usr/local/src
wget -O openssh.tar.gz https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/openssh-9.0p1.tar.gz

复制

备份配置文件 一般卸载的时候都会把配置文件以sshd_config.rpmsave的方式另存一份,但是/etc/pam.d/sshd这个配置文件并没有另存,所以建议都备份一下。

cp /etc/ssh/sshd_config sshd_config.backup
cp /etc/pam.d/sshd sshd.backup

复制

删除低版本OpenSSH的的rpm包

rpm -e --nodeps `rpm -qa | grep openssh`

复制

安装openssh

解压

tar -zxvf openssh.tar.gz
cd openssh-9.0p1

复制

编译配置

./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-tcp-wrappers --with-ssl-dir=/usr/local/ssl --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 ../sshd.backup /etc/pam.d/sshd
mv ../sshd_config.backup /etc/ssh/sshd_config

复制

添加添加自启服务ssh到开机启动项

chkconfig --add sshd
chkconfig sshd on

复制

重启服务

systemctl restart sshd

复制

验证结果

查看下安装结果:

ssh -V

复制

运行结果

OpenSSH_9.0p1, OpenSSL 1.0.2k-fips  26 Jan 2017

复制

到此,升级基本完成。安全起见不要关闭 SSH 窗口,新增一个 SSH 连接,看看能否正常登录。如果不能登录,可以根据 sshd 的日志进行配置调整。

清理源代码

rm -rf /usr/local/src/openssh*

复制

本文基于《CentOS 8 升级 OpenSSH 8.4》进行修改后发布,感谢原作者的分享。本文同步发布在零零博客


最后的最后,还有一个福利。开发者们,欢迎您加入腾云先锋(TDP)反馈交流群,群内有丰富的活动可收获积分和成长值,兑换惊喜福利。加入方式:https://cloud.tencent.com/developer/article/1855195

我们是腾云先锋(TDP)团队,是腾讯云GTS官方组建并运营的技术开发者群体。里有最专业的开发者&客户,能与产品人员亲密接触,专有的问题&需求反馈渠道,有一群志同道合的兄弟姐妹,期待您的加入!

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值