OpenSSH被爆出漏洞来,不停的升级了好几次,不知道这次的8.3能坚持多久,反正小编从7.4升级到7.9,升级到8.1,然后又升级到8.3。经历了几次升级后又些心得分享给大家。最常见的问题就是openssh升级后无法登录。直接被干到外部了。自己都管理不了服务器了。还的用其他方式去管理。
[root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) [root@localhost ~]# [root@localhost ~]# ssh -V OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017 [root@localhost ~]#
首先说一下注意事项:
1、一定要备份一下原有的/ETC/SSH和 、/Etc/pam.d文件夹
2、配置完后需要还原以上配置。
需要安装的包:openssh-8.3p1.tar.gz、zlib-1.2.11.tar.gz、openssl-1.1.1g.tar.gz,本机已经安装过 zlib-1.2.11.tar.gz 和 openssl-1.1.1g.tar.gz,
以下只安装openssh-8.3p1.tar.gz
zlib-1.2.11.tar.gz安装简单介绍(下载地址:http://www.zlib.net/zlib-1.2.11.tar.gz):
#cd zlib-1.2.11 #./configure --prefix=/usr/local/zlib #make && make install
openssl-1.1.1g.tar.gz安装简单介绍(下载地址:https://www.openssl.org/source/openssl-1.1.1g.tar.gz):
#cd openssl-1.1.1g #./configure --prefix=/usr/local/ssl -d shared #make && make install #echo '/usr/local/ssl/lib' >> /etc/ld.so.conf #ldconfig -v
1、下载 openssh-8.3p1.tar.gz 地址
http://FTP.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.3p1.tar.gz
2、解压 openssh-8.3p1.tar.gz
#tar -xvf openssh-8.3p1.tar.gz
3、编译
#cd openssh-8.3p1 #./configure --prefix=/usr/local/openssh --with-ssl-dir=/usr/local/ssl --with-zlib=/usr/local/zlib #make && make instal
4、修改 /usr/local/openssh/etc/sshd_config 文件
找到 #PermitRootLogin prohibit-password 在下一行添加 PermitRootLogin yes,启用允许root 远程登录
找到 #PubkeyAuthentication yes 在下一行添加 PubkeyAuthentication yes,启用公钥身份验证
找到 #PasswordAuthentication yes 在下一行添加 PasswordAuthentication yes,启用隧道明文密码
保存,退出
5、备份 /etc/ssh 原有文件(原来没有的文件,mv 命令提示 :No such file or directory,则跳过 mv 备份),并将新的配置复制到指定目录
#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
6、重启,查看版本
#systemctl restart sshd
#sshd -v