前提准备
查看系统当前软件版本
# rpm -q zlib
# openssl version
# ssh -V
安装以下依赖
yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel pcre-devel pam-devel
以下操作全部在root用户下
tar -xzvf openssh-8.4p1.tar.gz
tar -xzvf openssl-1.1.1h.tar.gz
tar -xzvf zlib-1.2.11.tar.gz
cd openssl-1.1.1h
./config --prefix=/usr/local/ssl -d shared
# 编译&安装
make && make install
echo '/usr/local/ssl/lib' >> /etc/ld.so.conf
ldconfig -v
cd ../zlib-1.2.11
./configure --prefix=/usr/local/zlib
./configure && make && make install
cd ../openssh-8.4p1
./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl
make && make install
echo $? ##确认无报错##
###sshd_config文件修改,新版本SSH默认禁止ROOT账户登录###
echo 'PermitRootLogin yes' >>/usr/local/openssh/etc/sshd_config
echo 'PubkeyAuthentication yes' >>/usr/local/openssh/etc/sshd_config
echo 'PasswordAuthentication yes' >>/usr/local/openssh/etc/sshd_config
mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
mv /usr/sbin/sshd /usr/sbin/sshd.bak
cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd
mv /usr/bin/ssh /usr/bin/ssh.bak
cp /usr/local/openssh/bin/ssh /usr/bin/ssh
mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak
cp /usr/local/openssh/bin/ssh-keygen /usr/bin/ssh-keygen
mv /etc/ssh/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub.bak
cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub
service sshd restart
ssh -V
cd /usr/bin/
./ssh -V
提示:OpenSSH_8.4p1, OpenSSL 1.1.1h
表示升级成功!
升级前:
升级后:
chkconfig --add sshd
chkconfig --list sshd
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。