首先确保自己的xshell是7以上, xshell6以下的版本不支持算法会报找不到host key
安装新版本
链接:https://pan.baidu.com/s/1blMNv0MYVezke4Eg5mT6_A
提取码:qyzy
把压缩包放到/home 目录下解压
安装前,可以多开几个ssh窗口,也可以开启telnet服务,防止意外中断无法访问服务器
卸载原有 openssh
rpm -qa | grep -i ssh
rpm -e openssh --nodeps
如果ssl是1.0.2以下要卸载openssl-libs文件
rpm -qa | grep ssl
rpm -e openssl-libs
解压安装包
unzip openssh8.8p1.zip
rpm -ivh openss* --nodeps --force
完成安装后:
恢复/etc/pam.d/sshd文件:
cat /home/openssh8.8p1/etc.pam.d.sshd > /etc/pam.d/sshd
修改sshd_config配置文件 /etc/ssh/sshd_config
sed -i 's|#PermitRootLogin prohibit-password|PermitRootLogin yes|g' /etc/ssh/sshd_config
sed -i 's|#UsePAM no|UsePAM yes|g' /etc/ssh/sshd_config
sed -i 's|#UseDNS yes|UseDNS no|g' /etc/ssh/sshd_config
sed -i -r 's/^(.*pam_nologin.so)/#\1/' /etc/pam.d/sshd
重新创建密钥
rm -f /etc/ssh/ssh*key
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ""
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N ""
ssh-keygen -t rsa -f /etc/ssh/ssh_host_ecdsa_key -N ""
ssh-keygen -t rsa -f /etc/ssh/ssh_host_ed25519_key -N ""
启动sshd服务:
chmod g-r,o-r /etc/ssh/ssh_host*key (假如组和其它组有read权限)
systemctl start sshd
service sshd restart
整个流程下来,其实发现也不难,如果是生产环境,建议做好对应备份!