龙空技术网

OpenSSH安全漏洞修复版本升级详解步骤参考

IT老良 1108

前言:

今天大家对“查看openssh版本号”大致比较关切,朋友们都想要了解一些“查看openssh版本号”的相关文章。那么小编在网络上网罗了一些有关“查看openssh版本号””的相关资讯,希望咱们能喜欢,兄弟们快快来了解一下吧!

OpenSSH是SSH(Secure SHell)协议的免费开源实现。SSH协议簇可以用来进行远程控制,或在计算机之间传送文件。而实现此功能的传统方式,如telnet、rcp、ftp、rlogin等都是极为不安全的,并且会使用明文传送密码。OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的数据,并由此来代替原来的类似服务。

但是OpenSSH也经常会被爆出一些安全漏洞,我们需要升级OpenSSH版本以修复这些漏洞。

现需要将OpenSSH升级到最新9.6p1版本,Openssl升级到1.1.1版本修复这些漏洞。相关环境:

OpenSSH下载地址:

Openssl下载地址:

Zlib下载地址:

为防止远程中断升级前可以多开几个ssh终端或者采用telnet方式远程到主机(升级完记得关闭telnet服务),如果可以直接进入终端建议在终端下进行操作。

1.上传并解压升级包。

tar -xvf zlib.tar.gz

tar -xvf openssl-1.1.1w.tar.gz

tar -xvf openssh-9.6p1.tar.gz

2.编译安装zlib。

cd zlib-1.3.1

./configure --prefix=/usr/local/zlib

make && make install

echo '/usr/local/zlib/lib' >> /etc/ld.so.conf

ldconfig -v

验证zlib安装是否成功,要包含include、lib、share三个目录。

3.编译安装openssl。

cd openssl-1.1.1w

./config --prefix=/usr/local/ssl -d shared

make && make install

echo '/usr/local/ssl/lib' >> /etc/ld.so.conf

ldconfig -v

4.升级openssh。

停ssh服务,备份ssh配置文件:

systemctl stop sshd

cp -r /etc/ssh /etc/ssh.bak

cp -r /etc/pam.d /etc/pam.d.bak

查看原openssh版本:

cat /etc/redhat-release

rpm -qa|grep openssh

根据上面查询结果,卸载系统里原有Openssh,一般有三个包全部卸载:

rpm -e --nodeps openssh-clients-7.4p1-21.el7.x86_64

rpm -e --nodeps openssh-7.4p1-21.el7.x86_64

rpm -e --nodeps openssh-server-7.4p1-21.el7.x86_64

rpm -qa | grep openssh

编译安装openssh:

cd openssh-9.6p1

./configure --prefix=/usr/local/openssh --with-zlib=/usr/local/zlib --with-ssl-dir=/usr/local/ssl

make && make install

5.sshd_config文件修改。

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

6.将新的配置复制到指定目录。

cp /usr/local/openssh/etc/sshd_config /etc/ssh/sshd_config

cp /usr/local/openssh/sbin/sshd /usr/sbin/sshd

cp /usr/local/openssh/bin/ssh /usr/bin/ssh

cp /usr/local/openssh/etc/ssh_host_ecdsa_key.pub /etc/ssh/ssh_host_ecdsa_key.pub

7.设置ssh服务开机自启动。

cp -p contrib/redhat/sshd.init /etc/init.d/sshd

chmod +x /etc/init.d/sshd

chkconfig --add sshd

chkconfig sshd on

重启sshd服务:

systemctl restart sshd

查看sshd服务状态:

systemctl status sshd -l

验证ssh版本:

ssh -V

8.重启服务器,测试ssh能否登录服务器成功。

reboot

标签: #查看openssh版本号