升级OpenSSH 9.8/9.8p1 版本说明 升级OpenSSL-3.3.1版本说明

openssh版本说明 OpenSSH

截止到当前,官网最新的openssh稳定版本为 OpenSSH 9.8/9.8p1 (2024-07-01)

官网链接:OpenSSH: Release Notes

基本版官方合作的镜像网站列表:OpenSSH: Mirrors

可移植版官方合作的镜像网站列表:OpenSSH: Portable Release

关于 OpenSSH 9.8/9.8p1 版本区别


原文翻译:

OpenSSH 9.8 基本版 源代码:2024 年 7 月 1 日发布

基本版源代码是专门为 OpenBSD,使其简单、干净、最小和可审计。另一个单独的团队将OpenSSH转换为可移植版本(也就是所有的带p1的版本),可在所有设备上运行 操作系统。

我们再说一遍:对于其他系统,请参阅可移植发布文件!(p1版本)

官方原文:OpenSSH: Mirrors

OpenSSH 9.8 base source code: released July 1, 2024

The base source code is designed specifically for OpenBSD, to make it simple, clean, minimal, and auditable. A separate team converts OpenSSH to a portable release which runs on all operating systems.

We repeat: For other systems, see the portable release files!

 

OpenSSH 9.8 官方原文 OpenSSH: Users

OpenSSH 9.8p1 官方原文 OpenSSH:可移植版本

  • OpenSSH 9.8p1 是 OpenSSH 9.8 系列的一个可移植版本 (p1)。
  • 常规的 OpenSSH 开发会产生一个非常小、安全且易于维护 OpenBSD 项目的基本版本。OpenSSH 可移植性团队采用该纯版本并添加可移植性代码,以便 OpenSSH 可以 在许多其他操作系统上运行。(不幸的是,特别是 由于 OpenSSH 进行身份验证,因此它在 Unix 操作系统之间遇到了*很多*差异。)
  • 可移植版 OpenSSH 跟随官方版本的发展,但发布并不是同步的。可移植版的发布标记有一个 'p'(例如 4.0p1)。官方的 OpenBSD 源代码永远不会使用 'p' 后缀,而是在开发达到稳定的阶段时增加版本号。
  • The OpenSSH provided here is designed to run on the following Unix operating systems: (此处提供的 OpenSSH 设计为在以下 Unix 操作系统上运行,需要装p1可移植版)
    • AIX
    • HP-UX
    • Irix
    • Linux      # 其他的Linux系统,是另一个团队移植的版本,性能不好说,常见的Linux不建议用p1
    • NeXT
    • SCO
    • SNI/Reliant Unix
    • Solaris
    • Digital Unix/Tru64/OSF
    • macOS
    • Cygwin
    • ... and more are being added all the time.

版本区别总结

  • OpenSSH 9.8基本版 官方 OpenBSD 源代码,所有的Linux 、Windows系统都应该安装这个版本(不带p)。
  • OpenSSH 9.8p1便携版 OpenSSH:这是 OpenSSH 的便携版本,另一个单独的团队做的移植可以在其他作系统上编译和运行(p1版本)。

 

说明白这个了,就可以放下载链接了:

OpenSSH 9.8下载路径(基本版)

镜像站下载:openssh安装包下载_开源镜像站-阿里云 (aliyun.com)

官网下载:Index of /pub/OpenBSD/OpenSSH/

OpenSSH 9.8p1下载路径(可移植版)

镜像站下载:openssh-portable安装包下载_开源镜像站-阿里云 (aliyun.com)

官网下载:Index of /pub/OpenBSD/OpenSSH/portable/

 

别急,安装Openssh 需要openssl依赖,官方文档也说明了:

OpenSSH 9.8 Changes since OpenSSH 9.7

 * build: relax OpenSSL version check to accept all OpenSSL 3.x  versions. ——放宽了版本检测,接受所有的OpenSSL 3.x 版本(不再要求3.1.0版本)

OpenSSH 9.7 Changes since OpenSSH 9.6
OpenSSH 9.6 Changes since OpenSSH 9.5
OpenSSH 9.5 Changes since OpenSSH 9.4

在OpenSSH 9.4的说明中提到:  

Potentially incompatible changes  ——可能不兼容的更改

This release removes support for older versions of libcrypto.  ——此版本删除了对旧版本 libcrypto 的支持。
   OpenSSH now requires LibreSSL >= 3.1.0 or OpenSSL >= 1.1.1.  ——OpenSSH 现在需要 LibreSSL >= 3.1.0 或 OpenSSL >= 1.1.1。
   Note that these versions are already deprecated by their upstream vendors.  ——请注意,这些版本已被其上游供应商弃用。

因此,我们必须升级到1.1.1 最好是升级到最新的OpenSSL 3.x 版本

 

openssl版本更新

官网地址:Downloads | Library (openssl-library.org)

官方译文:

关于当前和未来的版本,OpenSSL项目具有 采取了以下政策:

  • 版本 3.3 的支持截止日期为 2026-04-09
  • 版本 3.2 的支持截止到 2025-11-23
  • 版本 3.1 的支持截止日期为 2025-03-14
  • 版本 3.0 的支持将持续到 2026-09-07 (LTS)。
  • 版本 1.1.1 和 1.0.2 不再受支持。对 1.1.1 的扩展支持 和 1.0.2 以获取对这些版本的安全修复的访问权限是可用的
  • 版本 1.1.0、1.0.1、1.0.0 和 0.9.8 不再受支持。

注意:最新的稳定版本是 3.3 系列,支持到 2026 年 4 月 9 日。此外,3.2 系列仍支持到 2025 年 11 月 23 日 ,3.1 系列支持至 2025 年 3 月 14 日,以及 3.0 系列,它是长期支持 (LTS) 版本,并且支持截止日期为 2026 年 9 月 7 日。所有旧版本(包括 1.1.1、1.1.0、1.0.2、1.0.0 和 0.9.8)现在已经不再支持,不应该继续使用。使用这些旧版本的用户被鼓励尽快升级到 3.3 版本。对于 1.1.1 和 1.0.2 版本,可以通过购买扩展支持服务来获得必要的安全修复。是可用的

The following OpenSSL version(s) are FIPS validated: ——以下 OpenSSL 版本经过了 FIPS 验证:

 OpenSSL Version   Certificate   Security Policy 
3.0.9 certificate security policy
3.0.8 certificate security policy
3.0.0 certificate security policy

关于FIPS认证:(跟咱们无关)

联邦信息处理标准 140-2 (FIPS 140-2) 是美国和加拿大共同发起的硬件、软件和固件解决方案安全标准。 在美国政府的采购中,所有使用加密技术的解决方案都必须完成 FIPS 140-2 验证,以确保最终用户获得高度的安全性、保障性和可靠性。

因此,强烈建议升级到 OpenSSL 3.3版本,避免有漏洞无法修复支持。因为我们更新SSH和SSL 本身就是为了打漏洞。

 

关于openssl 和 openssl-libs 的区别

以安装openssl11和openssl11-libs为例

  • openssl11  包含了 OpenSSL 1.1.1 系列的完整功能,包括命令行工具和库文件。适合需要使用命令行工具的场景。(比如自签证书就会用到这个工具)
  • openssl11-libs 只包含库文件,适用于只需要链接库文件的应用程序,没有命令行工具。

所以,大家以后遇到这种疑问,就安装openssl就好了,省的后期缺少命令行工具。但是请注意:像你yum安装Nginx时,会给你安装openssl11-libs,这里就只有库文件,没有命令行工具。

以下列表程序,会在安装程序时,依赖Openssl,应该都会带各种版本的openssl-libs,请注意识别:

Nginx:
Nginx 用于提供 HTTPS 服务时,会依赖 OpenSSL 来处理 SSL/TLS 加密。
OpenSSH:
OpenSSH 用于提供安全的远程登录服务时,会依赖 OpenSSL 来处理 SSH 加密。
Apache HTTP Server:
Apache HTTP Server 用于提供 HTTPS 服务时,也会依赖 OpenSSL 来处理 SSL/TLS 加密。
MySQL/MariaDB:
MySQL 和 MariaDB 数据库管理系统可以使用 SSL 加密连接客户端与服务器之间的通信,这通常依赖于 OpenSSL。
PostgreSQL:
PostgreSQL 数据库管理系统同样可以使用 SSL 加密连接客户端与服务器之间的通信,这通常依赖于 OpenSSL。
Dovecot:
Dovecot 邮件服务器用于提供 IMAP/POP3 加密服务时,会依赖 OpenSSL。
Exim:
Exim 邮件传输代理 (MTA) 用于发送和接收邮件时,如果启用了 TLS/SSL 加密,则会依赖 OpenSSL。
OpenVPN:
OpenVPN 用于提供基于 SSL 的虚拟专用网络 (VPN) 服务时,会依赖 OpenSSL。
LibreSSL:
LibreSSL 是 OpenSSL 的一个替代品,某些服务和应用程序可能使用 LibreSSL 替代 OpenSSL。
GnuTLS:
GnuTLS 是一个替代 OpenSSL 的库,用于处理 TLS/SSL 加密,某些服务和应用程序可能使用 GnuTLS。

我们不能轻易删除之前的openssl版本,比如你的Apache、MySQL版本并不支持高版本ssl,你只是为了Openssh的版本升级,就更改或删除了默认Openssl的版本,那么会严重影响其他程序的依赖。也因此,在编译安装高版本程序的时候(比如openssh),先安装高版本的openssl,编译安装时指定openssl的路径安装。

如果你不需要保留之前的openssl版本,可以借鉴

CentOS编译安装OpenSSL 3.3.1-CSDN博客

编译安装时需要的依赖应该包含以下:

yum install -y gcc gcc-c++ zlib-devel libtool autoconf automake perl perl-IPC-Cmd perl-Data-Dumper perl-CPAN

 

posted @ 2024-08-20 19:59  Magiclala  阅读(2452)  评论(2编辑  收藏  举报