• Hi, I’m @Merbelue

大家好,这篇为大家介绍二进制方式对OpenSSH版本升级,在生产环境中可用于解决版本升级、漏洞修复等。

@

1、环境

  • 系统版本:CentOS 7.6

  • OpenSSH、OpenSSL版本:OpenSSH_7.4p1、OpenSSL 1.0.2k-fips

2、安装telnet

由于生产环境中对OpenSSH升级会存在一定风险,导致SSH连不上,所以在升级前可安装telnet服务,在升级失败时可以telnet进行恢复。

2.1、检查是否安装
rpm -qa telnet-server
rpm -qa xinetd
2.2、安装telnet包
yum -y install telnet
yum -y install xinetd

2.3、启动服务(可不用加入开机启动,根据自己需求来决定)
systemctl start xinetd.service
systemctl start telnet.socket
2.4、测试连接

3、升级OpenSSH版本

3.1、安装依赖
yum install wget gcc openssl-devel pam-devel rpm-build
3.2、下载二进制包
  • OpenSSH最新版本包

下载地址:OpenSSH阿里云源地址

  • OpenSSL包

下载地址:OpenSSL官网


  • Zlib包

下载地址:Zlib下载地址

3.3、编译安装Zlib包
# 解压
tar -xvf zlib-1.3.tar.gz
cd zlib-1.3/
# 编译安装
./configure --prefix=/usr/local/zlib
make && make install
3.4、编译安装OpenSSL包
# 解压
tar -xvf openssl-1.1.1u.tar.gz
# 编译安装
./config --prefix=/usr --shared
make && make install
3.5、编译安装OpenSSH包
# 备份现有SSH
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
cp /usr/bin/sshd /usr/bin/sshd.bak
cp /usr/sbin/sshd /usr/sbin/sshd.bak
# 解压
tar -xvf openssh-9.4p1.tar.gz
# 编译安装
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib=/usr/local/zlib --with-md5-passwords
make && make install

4、版本升级验证

# 重启ssh服务
systemctl restart sshd
# 查看版本
ssh -V

5、可能遇到得问题及解决

5.1、编译有报错,可能是没装gcc,请参考3.1安装依赖

5.2、编译OpenSSH时报证书无法加载,可能需要修改权限

解决方式:

chmod 700 /etc/ssh/ssh_host_rsa_key
chmod 700 /etc/ssh/ssh_host_ecdsa_key
chmod 700 /etc/ssh/ssh_host_ed25519_key
5.3、重启ssh服务,无法启动或者一直重启,可能sshd不兼容systemd造成的

解决方式:

# 在OpenSSH安装包目录下
cp contrib/redhat/sshd.init /etc/init.d/sshd
# 移除sshd.service文件
mv /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.service.bak
# 重新加载配置
systemctl daemon-reload
# 添加开机启动
chkconfig sshd on

结束:OpenSSH版本升级结束,希望文章对大家有所帮助,喜欢的大佬三连支持一下,感谢!

OpenSSH版本升级漏洞修复问题的更多相关文章

  1. Openssh版本升级修复漏洞

    一.由于openssh版本过低当用扫描软件检测时会出现以下漏洞: 二.解决方案是升级高版本,下面是升级的步凑. 1.安装telnet工具,因为升级过程中怕失败或者重启ssh失败.我们直接yun安装即可 ...

  2. Struts2漏洞修复总结

    Struts2的S2-016漏洞是之前比较重大的漏洞,也是一些老系统的历史遗留问题 此漏洞影响struts2.0-struts2.3的所有版本,可直接导致服务器被远程控制从而引起数据泄漏,影响巨大 漏 ...

  3. 织梦dedecms漏洞修复大全(5.7起)

    很多人说dedecms不好,因为用的人多了,找漏洞的人也多了,那么如果我们能修复的话,这些都不是问题. 好,我们来一个一个修复.修复方法都是下载目录下该文件,然后替换或添加部分代码,保存后上传覆盖(记 ...

  4. Jsp万能密码漏洞修复例子

    更多详细内容请查看:http://www.111cn.net/jsp/Java/58610.htm 如果网站出现这种“万能密码”漏洞该怎么办呢 'or'='or' 漏洞修复 方法有很多在这里介绍两种, ...

  5. appscan 安全漏洞修复办法

    appscan 安全漏洞修复办法http://www.automationqa.com/forum.php?mod=viewthread&tid=3661&fromuid=21

  6. 腾讯云发布runC容器逃逸漏洞修复公告

    尊敬的腾讯云客户,您好:  近日,腾讯云安全中心监测发现轻量级容器运行环境runc被爆存在容器逃逸漏洞,攻击者可以在利用该漏洞覆盖Host上的runc文件,从而在Host上以root权限执行代码. 为 ...

  7. Mysql漏洞修复方法思路及注意事项

    [系统环境] 系统环境:Red Hat Enterprise Linux Server release 5.4 (Tikanga)  +  5.7.16 MySQL Community Server  ...

  8. Web常见漏洞修复建议

    一.SQL注入修复建议 1.过滤危险字符,例如:采用正则表达式匹配union.sleep.and.select.load_file等关键字,如果匹配到则终止运行. 2.使用预编译语句,使用PDO需要注 ...

  9. java中xxe漏洞修复方法

    java中禁止外部实体引用的设置方法不止一种,这样就导致有些开发者修复的时候采用的错误的方法 之所以写这篇文章是有原因的!最早是有朋友在群里发了如下一个pdf, 而当时已经是2019年1月末了,应该不 ...

  10. 360软件的木马查杀、漏洞修复等组件不能使用,提示runtime error

    一.故障现象:1.360软件的木马查杀.漏洞修复等组件不能使用,提示runtime error2.暴风影音等很多软件不能正常使用3.设备管理器不能打开,提示“MMC 不能打开文件”4.部分https安 ...

随机推荐

  1. sql server 删除带依赖的列 由于一个或多个对象访问此 列

    --SELECT * FROM LJEL005H--ALTER TABLE LJEL005H add el_req int default 15 not null --消息 5074,级别 16,状态 ...

  2. nginx发布vue 项目

    在本次使用nginx发布vue项目遇到 配置location 始终404 和 在项目子目录点击浏览器刷新出现404问题 使用nginx发布vue项目,为了方便测试就下载了一个nginx 放置自己目录下 ...

  3. 发布 markdown 小功能:指定图片尺寸

    之前园子的 markdown 功能多年落后,这两年我们正在努力赶上. 今天发布一个 markdown 小功能,可以通过 markdown 语法指定图片尺寸. 指定宽度 =200x ![](https: ...

  4. 一次 SSH 攻击与处理小记

    这是我在简书看到的一个作者经历,结合小编自己的一些实践,抛砖引玉,给大家分享一下. 有段时间发现集群异常卡顿.担心的事情终于发生了,使用命令 lastb 查看了一下,我的天呢,好多未知的 IP,我随便 ...

  5. 逍遥自在学C语言 | for循环详解

    前言 C语言中的循环结构时,for循环是最常用的一种.它允许重复执行一段代码,直到满足特定条件为止. 本文将详细介绍for循环的用法,并提供相关的可编译运行的C代码示例. 一.人物简介 第一位闪亮登场 ...

  6. 2023-06-10:给定一个由 n 个节点组成的网络,用 n x n 个邻接矩阵 graph 表示 在节点网络中,只有当 graph[i][j] = 1 时,节点 i 能够直接连接到另一个节点 j。

    2023-06-10:给定一个由 n 个节点组成的网络,用 n x n 个邻接矩阵 graph 表示 在节点网络中,只有当 graph[i][j] = 1 时,节点 i 能够直接连接到另一个节点 j. ...

  7. Journal of Electronic Imaging投稿分享

    Journal of Electronic Imaging投稿分享 在研究生阶段中的第一篇论文,前后总共三个月,还是很开心的!!! 附下中稿图片 这个期刊从二月份开始投的,然后三月份给了大修,大修时间 ...

  8. Go-变量篇

    一.变量的声明方式(三种) 1.var a int = num 2.var a = num 3.a := num 二.字符类型使用细节 *Golang的字符使用UTF-8. 英文 -1 字节:汉字-3 ...

  9. 从头学Java17-Lambda表达式

    Lambda表达式 这一系列教程,旨在介绍 lambda 的概念,同时逐步教授如何在实践中使用它们. 回顾表达式.语句 表达式 表达式由变量.运算符和方法调用组成,其计算结果为单个值.您已经看到了表达 ...

  10. Centos7配置fstp

    Centos7配置fstp 1 创建用户   useradd -m -d /data/sftp_data/user1 -s /usr/sbin/nologin -g sftp user1 -m:自动创 ...