CentOS 7 离线更新升级 openSSH 8.6p1

本文提供了一套详细的步骤来更新SSH服务,包括下载RPM包、上传并解压文件、执行更新脚本及验证更新是否成功的方法。同时针对更新过程中可能出现的问题如重启失败、内网环境下源更新卡顿及配置文件错误等提供了具体的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.先下载编译好的RPM包:

https://wwa.lanzoui.com/iWdoBqa2z7a

2.将文件上传服务器的适当位置

3.使用以下命令更新:

sudo -i
tar zxf openssh8.6p1_el7.tar.gz
cd openssh8.6p1/
chmod +x update_ssh.sh
./update_ssh.sh

4.使用 systemctl status sshd 检查运行状况,另外新建一个 SSH 连接确保能正常连接。

常见问题:

1.重启SSH服务提示failed

使用 systemctl status sshd 检查是否存在以下报错:

 这是由于IPv6地址监听失败导致的,用以下方法解决:

vi /etc/ssh/sshd_config

使用 # 注释掉 ListenAddress :: 

systemctl restart sshd

2.在内网服务器常见(不连通公网)使用 yum localinstall 可能会卡在更新 yum 源的过程中(一直找不到可以连接的镜像源)

可执行下列命令将源暂时清空:

mkdir /etc/yum.repo.d/bak
mv /etc/yum.repo.d/*.repo /etc/yum.repo.d/bak/
yum clean

 然后再执行一次更新脚本。

3.重启服务提示配置文件存在问题,有些情况下更新时会创建一个新的sshd_config.rpmnew,此时需要执行以下命令:

mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
mv /etc/ssh/sshd_config.rpmnew /etc/ssh/sshd_config
sed -i 's/#UsePAM no/UsePAM yes/g' /etc/ssh/sshd_config
sed -i 's/#Port 22/Port 22/g' /etc/ssh/sshd_config
sed -i 's/#PermitRootLogin..*/PermitRootLogin yes/g' /etc/ssh/sshd_config
sed -i 's/#ListenAddress 0.0.0.0/ListenAddress 0.0.0.0/g' /etc/ssh/sshd_config
sed -i 's/#ListenAddress ::/ListenAddress ::/g' /etc/ssh/sshd_config
sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/g' /etc/ssh/sshd_config
sed -i 's/#PermitEmptyPasswords no/PermitEmptyPasswords no/g' /etc/ssh/sshd_config
systemctl restart sshd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值