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

打印 上一主题 下一主题

主题 1608|帖子 1608|积分 4824

本文仅是记一次安装成功的履历,内容仅供参考:文中涉及的一些非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
  1. sshd -V 或 openssl version -a 查看
复制代码
安装前可以先安装telnet服务,开启root登录,测试可以通过本机root毗连后再进行OpenSSH升级操作。以免安装过程中SSH不可用导致无法毗连服务器。
如果没条件安装telnet, 建议安装时可以在差异网络的差异设备上打开多个SSH Shell毗连,已备安装意外之需。
实在不行至少在本机多开几个Shell 毗连窗口... 我有关窗好习惯,所以.....哎
 
二、升级步骤

1. 备份配置

  1. sudo cp -r /etc/ssh /etc/ssh.bak
复制代码
2. 安装依赖

  1. sudo yum groupinstall "Development Tools"
  2. sudo yum install -y gcc make zlib-devel openssl-devel pam-devel krb5-devel
复制代码
3. 下载软件包

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

  1. sudo chmod 600 /etc/ssh/ssh_host_ed25519_key
  2. sudo chmod 600 /etc/ssh/ssh_host_*key*
  3. sudo chmod 644 /etc/ssh/ssh_host_*_key.pub
复制代码
  踩坑履历:未授权,编译安装时报如下错误。见权限错误时,授权相关文件重新操作即可。

  5. 移除旧软件包

  1. # yum 安装包移除(本案例yum移除)
  2. sudo yum remove openssh-clients openssh-server
  3. # 源码安装的可以尝试这么移(未实践)
  4. mv /usr/bin/ssh /usr/bin/ssh.bak
  5. mv /usr/sbin/sshd /usr/sbin/sshd.bak
  6. mv /etc/pam.d/sshd  /etc/pam.d/sshd.bak
复制代码
  踩坑履历:没有先移除原安装,安装后启动报 "Bad configuration option: GSSAPIKexAlgorithms" 相关错误
  6. 配置、编译和安装

  1. sudo ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-kerberos5
  2. sudo make
  3. sudo make install
复制代码
7. 修改配置

  1. # 这步可以先确保一下配置文件中是否有相关配置了,如果可以跳过,没有的项开启即可
  2. sudo echo 'X11Forwarding yes' >> /etc/ssh/sshd_config
  3. sudo echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
  4. sudo echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config
  5. sudo cp contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
复制代码
8. 查抄下配置

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

  1. sudo cp contrib/redhat/sshd.init /etc/init.d/sshd
  2. sudo systemctl enable sshd
  3. sudo systemctl restart sshd
复制代码
10. 查抄结果

  1. sudo systemctl status sshd # 看看服务运行状态
  2. sudo sshd -V # 看看版本
  3. 本地Shell连接看看, OK...
复制代码
三、回滚方案

本比方上操作完就安装成功了,未有时机验证回滚方案...实乃憾事...
  1. # 卸载重装系统默认版本
  2. sudo make uninstall
  3. sudo yum reinstall openssh openssh-server openssh-clients
  4. #还原配置
  5. sudo cp /etc/ssh/sshd_config.bak /etc/ssh/sshd_config
  6. #重启
  7. sudo systemctl restart sshd
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

小秦哥

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表