1、删除旧版本(如果是远程连接升级,不能卸载旧版本,否则连接会断开。安装8.3完也不能卸载7.4,否则要到服务器直连重新安装8.3。)
# rpm -qa |grep openssh
#rpm -e openssh openssh-clients openssh-server
2、下载安装包
2.1 zlib-1.2.11.tar.gz 下载地址:http://www.zlib.net/zlib-1.2.11.tar.gz
2.2 openssl-1.1.1g.tar.gz 下载地址:https://www.openssl.org/source/openssl-1.1.1g.tar.gz
2.3 openssh-8.3p1.tar.gz 下载地址:http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.3p1.tar.gz
3、安装 zlib-1.2.11.tar.gz
#tar -xvf zlib-1.2.11.tar.gz
#cd zlib-1.2.11
#./configure --prefix=/usr/local/zlib
#make && make install
4、安装 openssl-1.1.1g.tar.gz
#tar -xvf openssl-1.1.1g.tar.gz
#cd openssl-1.1.1g
#./config --prefix=/usr/local/ssl -d shared
#make && make install
#echo '/usr/local/ssl/lib' >> /etc/ld.so.conf
#ldconfig -v
5、安装 openssh-8.3p1.tar.gz
解压:
#tar -xvf openssh-8.3p1.tar.gz
编译:
#cd openssh-8.3p1
#./configure --prefix=/usr/local/openssh --with-ssl-dir=/usr/local/ssl --with-zlib=/usr/local/zlib
#make && make install
修改 /usr/local/openssh/etc/sshd_config 文件:
找到 #PermitRootLogin prohibit-password 在下一行添加 PermitRootLogin yes,启用允许root 远程登录
找到 #PubkeyAuthentication yes 在下一行添加 PubkeyAuthentication yes,启用公钥身份验证
找到 #PasswordAuthentication yes 在下一行添加 PasswordAuthentication yes,启用隧道明文密码
备份 /etc/ssh 原有文件(原来没有的文件,mv 命令提示 :No such file or directory,则跳过 mv 备份),并将新的配置复制到指定目录
#mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
#cp -f /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config
#mv /usr/sbin/sshd /usr/sbin/sshd.bak
#cp -f /usr/local/openssh/sbin/sshd /usr/sbin/sshd
#mv /usr/bin/ssh /usr/bin/ssh.bak
#cp -f /usr/local/openssh/bin/ssh /usr/bin/ssh
#mv /usr/bin/ssh-keygen /usr/bin/ssh-keygen.bak
#cp -f /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 -f /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub
6、重启,查看版本
#systemctl restart sshd
#sshd -v