一、下载openssh
1、直接通过ssh连接目标主机进行下载(建议将压缩包下载到 /opt 目录下):
// [root@main1]# wget wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.8p1.tar.gz
如果在执行wget后指令提示 command not found,是因为目标机上没有安装wget指令;
wget指令安装
// yum -y install wget
安装成功提示:
2、或者是直接在windows上下载openssh再上传到目标主机上:下载地址:http://www.openssh.com/releasenotes.html
二、解压压缩包
// tar –xvf openssh-7.8p1.tar.gz
解压完成拿到压缩包:
三、删除原有的ssh相关文件
1、先卸载openssh服务,注意!注意!注意!卸载完成服务器ssh服务就会停掉,此时客户端连接的不能断开,在ssh没安装好之前也不可重启ssh服务和服务器,否则断开之后将无法进行远程连接
// yum remove openssh –y
2、手动备份并移除原有ssh相关文件
//[root@main1/etc]mkdir sshbak
[root@main1/etc]mv ssh /etc/sshbak/
四、安装编译新的ssh
1、进入到自己解压好的ssh目录下(根据自己实际情况,每个人解压的目录可能不一样,这里解压后的目录是/opt/openssh-7.8p1/):
//cd /opt/openssh-7.8p1/
2、安装编译:
//./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-openssl-includes=/usr/local/ssl/include --with-ssl-dir=/usr/local/ssl --with-zlib --with-md5-passwords --with-pam && make && make install
注意:如果在安装编译过程中断,且提示:configure: error: PAM headers not found,就需要先手动安装一下PAM
手动安装PAM:
//yum -y install pam-devel
安装完成PAM:
Openssh安装完成图示:
Openssh安装完成后在/openssh-7.8p1目录下执行如下命令:
[root@main1] cp -a contrib/redhat/sshd.init /etc/init.d/sshd
[root@main1] cp -a contrib/redhat/sshd.pam /etc/pam.d/sshd.pam
[root@main1] chmod +x /etc/init.d/sshd
[root@main1] chkconfig --add sshd
[root@main1] chkconfig sshd on
[root@main1] service sshd restart
五、查看Openssh版本
ssh -V
六、openSSH升级后无法远程问题解决
1、进入到目录 /etc/ssh/sshd_config 将 PasswordAuthentication yes 注释打开,启用公钥身份验证;
2、升级完openssh版本后 xshell连接报错 提示“服务器发送了一个意外的数据包。Received:3,expected:20”
修改配置文件 /etc/ssh/sshd_config 在最后一行添加下列密钥
vi /etc/ssh/sshd_config
最后添加一行
KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group14-sha1
重启sshd服务
service sshd restart