前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Linux】opencloudos系统 OpenSSH升级到 OpenSSH_9.8P1

【Linux】opencloudos系统 OpenSSH升级到 OpenSSH_9.8P1

原创
作者头像
Sync
修改2024-08-19 10:14:40
3971
修改2024-08-19 10:14:40

升级背景:

OpenSSH 9.6之前版本存在安全漏洞,该漏洞源于存在操作系统命令注入漏洞。

漏洞编号:CVE-2023-51385

本次升级系统环境:

opencloudos9.2

其他版本的centos也适用,升级存在一定的风险,没有十足的把握,请务必登录腾讯云控制台进行快照备份后再升级。

操作步骤:

1. 查看当前openssh版本以及openssh相关目录

代码语言:bash
复制
ssh -V
whereis ssh

2. 备份ssh文件及相关目录

代码语言:bash
复制
mv /etc/ssh /etc/ssh.bak
mv /usr/bin/ssh /usr/bin/ssh.bak
mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak
mv /usr/sbin/sshd /usr/sbin/sshd.bak
mv /etc/pam.d/sshd /etc/pam.d/sshd.bak

3. 下载openssh源码包并解压进入源码包。

这里记录下openssh下载地址:下载地址:https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/

代码语言:bash
复制
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
tar -xf openssh-9.8p1.tar.gz
cd openssh-9.8p1/

4. 查询并卸载原来的openssh包

代码语言:bash
复制
rpm -qa | grep openssh 
rpm -e --nodeps `rpm -qa | grep openssh`   #此命令会将找到的openssh相关的rpm包强制删除。
rpm -qa | grep openssh  

5. 安装编译需要依赖环境

代码语言:bash
复制
yum groupinstall "Development Tools"
yum install -y openssl-devel zlib-devel pam-devel

6. 编译安装

代码语言:bash
复制
./configure --prefix=/usr/local/openssh9p6 --sysconfdir=/etc/ssh --with-pam --with-zlib
#如出现类似这类错误,说明系统当前的openssl版本较低,需要更高版本的openssl
#error: OpenSSL >= 1.1.1 required (have "100004df (OpenSSL 1.0.2k-fips 26 Jan 2017)")
#由于本次操作环境是opencloudos9.2环境,该环境自带的openssl版本是OpenSSL 3.0.12,已满足对openssh9.8的支持,所以不在升级opensslp
make
make install

7. 复制新的配置文件到原目录并添加权限

代码语言:bash
复制
cp /usr/local/openssh9p6/sbin/sshd /usr/sbin/sshd
cp /usr/local/openssh9p6/bin/ssh /usr/bin/ssh
cp /usr/local/openssh9p6/bin/ssh-keygen /usr/bin/ssh-keygen
cp -p contrib/redhat/sshd.init /etc/init.d/sshd 
chmod +x /etc/init.d/sshd

8. 将 /etc/ssh/sshd_config中 ,这三个参数 PermitRootLogin 、PubkeyAuthentication、PasswordAuthentication值改为yes.

代码语言:bash
复制
PermitRootLogin yes  #允许root用户通过SSH登录到系统
PubkeyAuthentication yes   #启用公钥身份验证
PasswordAuthentication yes  #启用密码身份验证

9. 开机自启sshd并启动验证。

代码语言:txt
复制
systemctl enable sshd
systemctl restart sshd
sshd -V

至此,完成。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 升级背景:
  • 本次升级系统环境:
  • 操作步骤:
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档