备份现有配置
cp -rf /etc/ssh /etc/ssh.bak
cp -rf /usr/bin/openssl /usr/bin/openssl.bak
cp -rf /etc/pam.d /etc/pam.d.bak
cp -rf /usr/lib/systemd/system /system.bak
安装依赖
yum -y install gcc pam-devel zlib-devel openssl-devel net-tools
下载源码包
cd /opt/
wget https://www.openssl.org/source/openssl-3.3.1.tar.gz
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
解压
cd /opt/
tar -zxvf openssl-3.3.1.tar.gz
tar -zxvf openssh-9.9p1.tar.gz
安装OpenSSL
cd /opt/openssl-3.3.1
./config --prefix=/usr/local/src/openssl
make -j 4 && make install
mv /usr/bin/openssl /usr/bin/oldopenssl
ln -s /usr/local/src/openssl/bin/openssl /usr/bin/openssl
ln -s /usr/local/src/openssl/lib64/libssl.so.3 /usr/lib64/libssl.so.3
ln -s /usr/local/src/openssl/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3
echo "/usr/local/src/openssl/lib64" >> /etc/ld.so.conf
ldconfig
openssl version -v
安装OpenSSH
卸载旧版本OpenSSH服务
yum remove -y openssh
rm -rf /etc/ssh/*
安装最新版Openssh服务
cd /opt/openssh-9.9p1
./configure --prefix=/usr/local/src/ssh --sysconfdir=/etc/ssh --with-pam --with-ssl-dir=/usr/local/src/openssl
make -j 4 && make install
/usr/local/src/ssh/bin/ssh -V
cp -rf /opt/openssh-9.9p1/contrib/redhat/sshd.init /etc/init.d/sshd
cp -rf /opt/openssh-9.9p1/contrib/redhat/sshd.pam /etc/pam.d/sshd
cp -rf /usr/local/src/ssh/sbin/sshd /usr/sbin/sshd
cp -rf /usr/local/src/ssh/bin/ssh /usr/bin/ssh
cp -rf /usr/local/src/ssh/bin/ssh-keygen /usr/bin/ssh-keygen
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config
/etc/init.d/sshd restart
/etc/init.d/sshd status
chkconfig --add sshd
ssh -V