![使用旧版本的 OpenSSL 安装 OpenSSH](https://linux22.com/image/1187152/%E4%BD%BF%E7%94%A8%E6%97%A7%E7%89%88%E6%9C%AC%E7%9A%84%20OpenSSL%20%E5%AE%89%E8%A3%85%20OpenSSH.png)
出于教育目的,我在 Ubuntu Server 18.04 上下载了 OpenSSH_7.6p1 4-Ubuntu0.1,它应该暴露给 SSH 枚举。
当我运行 ./configure 时,它说 OpenSSL 版本有问题。
如果我在我的 Ubuntu 上运行
openssl version
我明白了
OpenSSL 1.1.1 11 Sep 2018
并且此版本与OpenSSH 7.6p1不兼容。
但是,如果我通过以下方式安装 OpenSSH
sudo apt-get install openssh-server
它会安装,并且 openssh 版本显示:
OpenSSH_7.6p1 Ubuntu-4ubuntu0.7, **OpenSSL 1.0.2n 7 Dec 2017**
我怎样才能使用该 OpenSSL 版本来手动安装 OpenSSH?
谢谢
答案1
OpenSSH 7.6p1 是 OpenSSH 的旧版本,不支持较新版本的 OpenSSL,例如 1.1+。如果您要专门编译该版本的 OpenSSH 而不是较新版本(顺便说一下,最新版本是 9.0p1),您应该能够通过安装 OpenSSL 1.0 开发标头来解决问题,如下所示(请注意,此软件包仅在 Ubuntu 18.04 及以下版本中可用,在 Ubuntu 20.04 或更高版本中不可用):
sudo apt install libssl1.0-dev
请注意,它与libssl-dev
(OpenSSL 1.1 开发标头)冲突,因此如果您需要libssl-dev
构建另一个包,则需要随后重新安装它。但是,-dev
包仅用于编译软件,通常在运行时不需要,所以这应该不会有太大影响。
希望这可以解决您的问题。