背景:
ssh用于linux系统远程,是安全性关注重点,公司要求ssh定期升级到最新版本,增强安全性。
升级步骤:
1、下载相关包地址
zlib-1.3.1.tar.gz
https://github.com/madler/zlib/releases
openssl-3.3.1.tar.gz
https://www.openssl.org/source/
openssh-9.8p1.tar.gz
https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/
2、离线安装
注意,编译时候时间稍长,估计有10分钟,需要耐心等待。
#!/bin/bash
#将下载好的zlib, openssl,openssh 保存在/mysshdata/路径下
## 安装gcc和make
apt install gcc -y
apt install make
tar zxvf zlib-1.3.1.tar.gz
cd zlib-1.3.1/
./configure --shared
make && make install
cd /mysshdata/
tar zxvf openssl-3.3.1.tar.gz
cd openssl-3.3.1/
./config shared zlib
make -j32 && make install
#ln -s /usr/local/bin/openssl /usr/bin/openssl
ln -s /usr/local/include/openssl /usr/include/openssl
#find / -name "libssl.so"
mkdir -p /usr/local/openssl/lib64
ln -s /usr/local/lib64/libssl.so /usr/local/openssl/lib64/libssl.so
echo “/usr/local/openssl/lib64” > /etc/ld.so.conf.d/openssl.conf
ln -s /usr/local/lib64/libssl.so.3 /usr/lib/libssl.so.3
ln -s /usr/local/lib64/libcrypto.so.3 /usr/lib/libcrypto.so.3
ldconfig -v
openssl version
apt-get remove openssh-server openssh-client -y
## 安装libpam0g-dev和build-essential
apt-get update -y
apt-get install libpam0g-dev -y
apt install build-essential -y
cd /mysshdata/
tar zxvf openssh-9.8p1.tar.gz
cd openssh-9.8p1/
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-pam --with-zlib --with-ssl-dir=/usr/include/openssl --with-privsep-path=/var/lib/sshd
make -j32 && make install
ssh -V
systemctl unmask ssh
systemctl restart sshd
ssh -V
OpenSSH_9.8p1, OpenSSL 3.3.1 4 Jun 2024
3、sftp无法链接问题
参考:【起航】centos7升级ssh9.3+sftp配置_ssh升级sftp-CSDN博客
3.1、修改配置文件
vim /etc/ssh/sshd_config
将【Subsystem sftp /usr/libexec/openssh/sftp-server】改为【Subsystem sftp internal-sftp】
3.2、重启ssh
sudo systemctl restart sshd
3.3、重新链接,sftp已经ok