小秦哥 发表于 2025-4-8 05:37:52

源码安装,OpenSSH升级到9.9p2(CentOS/Red Hat 系列)

本文仅是记一次安装成功的履历,内容仅供参考:文中涉及的一些非OpenSSH安装的额外操作请自行在网络搜索

原版本:体系默认的 OpenSSH_8.0p1, OpenSSL 1.1.1k  FIPS 25 Mar 2021
安装后版本:OpenSSH_9.9p2, OpenSSL 1.1.1k  FIPS 25 Mar 2021
一、留意事项

OpenSSL 版本确保 1.1.1 版本,如果不是,建议先升级 OpenSSL
sshd -V 或 openssl version -a 查看 安装前可以先安装telnet服务,开启root登录,测试可以通过本机root毗连后再进行OpenSSH升级操作。以免安装过程中SSH不可用导致无法毗连服务器。
如果没条件安装telnet, 建议安装时可以在差异网络的差异设备上打开多个SSH Shell毗连,已备安装意外之需。
实在不行至少在本机多开几个Shell 毗连窗口... 我有关窗好习惯,所以.....哎
 
二、升级步骤

1. 备份配置

sudo cp -r /etc/ssh /etc/ssh.bak 2. 安装依赖

sudo yum groupinstall "Development Tools"
sudo yum install -y gcc make zlib-devel openssl-devel pam-devel krb5-devel 3. 下载软件包

sudo cd /opt
sudo wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.9p2.tar.gz
sudo tar -zvxf openssh-9.9p2.tar.gz
sudo cd openssh-9.9p2 4. 修改文件权限

sudo chmod 600 /etc/ssh/ssh_host_ed25519_key
sudo chmod 600 /etc/ssh/ssh_host_*key*
sudo chmod 644 /etc/ssh/ssh_host_*_key.pub   踩坑履历:未授权,编译安装时报如下错误。见权限错误时,授权相关文件重新操作即可。
https://i-blog.csdnimg.cn/direct/99f160bb7c0b467faa4bbaa7c2effbfb.png
5. 移除旧软件包

# yum 安装包移除(本案例yum移除)
sudo yum remove openssh-clients openssh-server

# 源码安装的可以尝试这么移(未实践)
mv /usr/bin/ssh /usr/bin/ssh.bak
mv /usr/sbin/sshd /usr/sbin/sshd.bak
mv /etc/pam.d/sshd/etc/pam.d/sshd.bak   踩坑履历:没有先移除原安装,安装后启动报 "Bad configuration option: GSSAPIKexAlgorithms" 相关错误
6. 配置、编译和安装

sudo ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-kerberos5

sudo make

sudo make install 7. 修改配置

# 这步可以先确保一下配置文件中是否有相关配置了,如果可以跳过,没有的项开启即可
sudo echo 'X11Forwarding yes' >> /etc/ssh/sshd_config
sudo echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
sudo echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config

sudo cp contrib/redhat/sshd.pam /etc/pam.d/sshd.pam 8. 查抄下配置

sudo sshd -t   # 没有任何信息返回就是最好的结果,有错误会报错 9. 设置开机启动&启动

sudo cp contrib/redhat/sshd.init /etc/init.d/sshd

sudo systemctl enable sshd
sudo systemctl restart sshd 10. 查抄结果

sudo systemctl status sshd # 看看服务运行状态
sudo sshd -V # 看看版本

本地Shell连接看看, OK...

三、回滚方案

本比方上操作完就安装成功了,未有时机验证回滚方案...实乃憾事...
# 卸载重装系统默认版本
sudo make uninstall
sudo yum reinstall openssh openssh-server openssh-clients

#还原配置
sudo cp /etc/ssh/sshd_config.bak /etc/ssh/sshd_config

#重启
sudo systemctl restart sshd
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 源码安装,OpenSSH升级到9.9p2(CentOS/Red Hat 系列)