1.升级前的openssh版本
2.下载软件包(离线包)
openssh 源码下载地址
https://mirrors.aliyun.com/pub/OpenBSD/OpenSSH/portable/
下载 openssh-9.8p1.tar.gz
openssl源码下载
https://www.openssl.org/source/
下载:openssl-3.3.1.tar.gz
github编译项目
源码地址
https://github.com/boypt/openssh-rpms/
直接下载压缩包
wget https://github.com/boypt/openssh-rpms/archive/refs/heads/main.zip
4.解压压缩包
unzip openssh-rpms-main.zip
cd openssh-rpms-main/
5.修改openssl版本
修改openssl版本否会编译失败
cat version.env
如有必要,编辑 version.env 文件
6.拉取源码并编辑打包
下载源码包
查看下载文件,文件夹是download
7.运行脚本来构建 RPM。
./compile.sh

8.升级openssh到9.8p1
update_openssh9.8p1.sh
#原有openssh配置文件备份
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
cp /etc/pam.d/sshd /etc/pam.d/sshd.backup
cp /etc/pam.d/system-auth /etc/pam.d/system-auth.backup
#先删除原有版本
rpm -qa | grep openssh
rpm -qa | grep openssh|xargs rpm -e --nodeps
#openssh9.8p1 RPM包文件目录执行安装
yum install -y openssh-*.rpm
#检查相应配置文件后,还原备份文件(可选)
#cp /etc/ssh/sshd_config.backup /etc/ssh/sshd_config
#cp /etc/pam.d/sshd.backup /etc/pam.d/sshd
#cp /etc/pam.d/system-auth.backup /etc/pam.d/system-auth
#可能出现的报错 :Permissions 0640 for '/etc/ssh/ssh_host_ed25519_key' are too open.
解决办法:权限变成600
chmod 0600 /etc/ssh/ssh_host_rsa_key
chmod 0600 /etc/ssh/ssh_host_ecdsa_key
chmod 0600 /etc/ssh/ssh_host_ed25519_key
#重启sshd服务
#systemctl enable sshd
systemctl restart sshd
#检查SSH版本
ssh -V
9.ssh连接测试