Loading... --- title: OpenSSL 版本问题导致 SSH 服务无法正常启动的修复方法 date: 2025-03-06 08:44:38 tags: OpenSSH categories: 运维 cover: https://img.wanghaoyu.me/Picture/img/20250306092859236.png ---  > 故障如上图所示,启动 ssh 服务时抛出如下错误 `OpenSSL version mismatch build against xxxxx you have xxxxxx` 这是因为 OpenSSL 与 OpenSSH 服务的版本号不匹配导致的此类问题,经检查 OpenSSL 版本高于 OpenSSH 所需要的版本。 ### 解决方案 > 升级OpenSSH服务 #### 检查并安装相关依赖以及编译工具 ```bash sudo apt install build-essential checkinstall zlib1g-dev libpam0g-dev ``` #### 编译安装 OpenSSH 下载 OpenSSH 源码包并解压 ```bash wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.9p1.tar.gz tar -zxvf openssh-9.9p1.tar.gz cd openssh-9.9p1 mkdir build ``` 使用 `configure` 脚本配置 OpenSSH ```bash ./configure --prefix=$(pwd)/build --sysconfdir=$(pwd)/build/etc/ssh --with-ssl-dir=/usr --with-pam --with-md5-passwords ``` 编译安装 OpenSSH ```bash sudo make ``` #### 更新 `sshd` 二进制文件 需要先将旧版本的二进制文件备份一下 ```bash cp -a /usr/sbin/sshd "/usr/sbin/.sshd_old_$(date +%Y%m%d_%H%M%S)" ``` 将新编译的 `sshd`二进制文件 复制到 `/usr/sbin/`目录 ```bash cd openssh-9.9p1/build cp build/sbin/sshd /usr/sbin/sshd -av chmod 755 /usr/sbin/sshd ``` #### 验证版本号 ```bash sshd -V ``` #### 启动服务 ```bash sshd -t systemctl restart sshd systemctl status sshd ``` Last modification:April 25, 2025 © Allow specification reprint Support Appreciate the author Like 如果觉得我的文章对你有用,请随意赞赏