借鉴:
https://blog.csdn.net/weixin_43846135/article/details/125309399
https://blog.csdn.net/ac__e/article/details/130331574
我当前的系统版本是Ubuntu 18.04 ,ssh版本
OpenSSH_7.6p1 OpenSSL 1.0.2n
想要升级为OpenSSH_9.2
以下为搭建过程
一、下载包装备
zlib-1.2.13.tar.gz https://www.zlib.net/
openssl-1.1.1u.tar.gz https://www.openssl.org/source/
openssh-9.2p1.tar.gz http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
目前我用的是这三个包
二、环境准备
注:下载过程若感觉很慢,建议切换下载源
参考:https://zhuanlan.zhihu.com/p/572556340
(1)安装telnet服务
apt update
apt install openbsd-inetd telnetd
netstat -a | grep telnet
若出现tcp 开头的字段则成功
telnet 设备IP #验证是否成功
(2)装备与设备相同的交叉编译工具链(感觉本次升级不需要版本强关联)
(3)卸载原openssh
apt-get remove openssh-server openssh-client
# 安装libpam0g-dev
apt-get install libpam0g-dev
(4)安装openssh和openssl
将zlib-1.2.13.tar.gz openssl-1.1.1u.tar.gz openssh-9.2p1.tar.gz 拖入设备
我的存放的路径是 /usr/local/src
cd /usr/local/src
# 安装 zlib
tar xvf zlib-1.2.13.tar.gz
cd zlib-1.2.13
mkdir -p /usr/lib/zlib/
./configure --prefix=/usr/lib/zlib/
make clean(若之前编译过,第二次编译时,需要执行,首次编译不需要执行,可跳过)
make && make isntall -j8
# 升级openssl
tar xvf openssl-1.1.1u.tar.gz
cd openssl-1.1.1u
mkdir -p /usr/local/openssl
./config --prefix=/usr/local/openssl share zlib
make clean(若之前编译过,第二次编译时,需要执行,首次编译不需要执行,可跳过)
make && make isntall -j8
# 备份 原来的openssl
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak
cp /usr/local/openssl/bin/openssl /usr/bin/openssl
cp /usr/local/openssl/include/openssl /url/include/openssl -R
echo
由于我的环境中安装了miniforge3
此处有修改,通过find / -name openssl 查看 存在 /root/miniforge3/bin/openssl
mv /root/miniforge3/bin/openssl /root/miniforge3/bin/openssl.bak
mv /root/miniforge3/include/openssl /root/miniforge3/include/openssl.bak
cp /usr/local/openssl/bin/openssl /root/miniforge3/bin/openssl
cp /usr/local/openssl/include/openssl /root/miniforge3/include/openssl -R