离线升级OpenSSH详细步骤 ——安全漏洞修复(实战篇 Centos 6.5/6.10 操作系统)

Centos 6.5/6.10 操作系统OpeSSH高危漏洞修复、离线升级OpeSSH详细步骤,内外网通用教程,纯手打

升级所需要的所有包下载地址:https://download.csdn.net/download/qq_42626061/12595713

当然也可以自行去下载,清单如下:

1.准备工作,准备好升级安装需要的包,清单如下

telnet-0.17-47.el6.x86_64.rpm

telnet-server-0.17-47.el6.x86_64.rpm

xinetd-2.3.14-34.el6.x86_64.rpm

zlib-1.2.8.tar.gz

openssh-7.4p1.tar.gz

openssl-1.0.1h.tar.gz

上面截图这些包是操作系统版本包,可以先到外网Linux操作系统下载好 ,命令yum install --downloadonly   gcc zlib zlib-devel openssl-devel 下载。

默认下载缓存位置/var/cache/yum/x86_64/7/base/packages  。下载好后再拉到内网。也可以用我发的链接地址里面的包,链接地址已经将所有包下载好

 

1.1查看 openSSH版本

 

 

 

2.安装telnet和守护线程并测试

rpm -ivh --force --nodeps   telnet-0.17-47.el6.x86_64.rpm

rpm -ivh --force --nodeps   telnet-server-0.17-47.el6.x86_64.rpm

rpm -ivh --force --nodeps  xinetd-2.3.14-34.el6.x86_64.rpm

 

rpm -qa | grep telnet 查看是否已经安装了telnet

rpm -qa | grep xinetd 查看是否已经安装了xinetd服务,因为telnet是挂在xinetd下的

 

chkconfig telnet on 设置开机启动,避免升级过程中服务器意外重启后无法远程登录系统

vim /etc/xinetd.d/telnet 修改配置文件将”disable= yes”改成” disable=no”

service xinetd restart 重启xinetd服务

iptables防火墙会阻止telnet,所以需要在iptables允许,用如下命令

当你启动telnet服务后,你可以用netstat –tunlp命令来查看telnet服务所使用的端口,可以发现有23。使用下面命令开启这些端口:

iptables -I INPUT -p tcp --dport 23 -jACCEPT

iptables -I INPUT -p udp --dport 23 -jACCEPT

service iptables save //保存

service iptables restart //重启防火墙

测试登录 telnet ip port (使用非root账户)

3.1 重要文件备份

防止升级失败导致文件丢失,请将重要文件和ssh配置文件备份

ssh配置文件备份:

sudo cp -r /etc/ssh/ /etc/ssh_bak

sudo cp /etc/init.d/sshd /etc/init.d/sshd_bak

sudo cp /usr/sbin/sshd /usr/sbin/sshd_bak

3.2卸载旧版本SSH

1.确认OpenSSH需要删除的rpm包

先查看rpm -qa |grep ssh

2.使用rpm的方式删除

rpm -e openssh-server-5.3p1-124.el6_10.x86_64

rpm -e openssh-clients-5.3p1-124.el6_10.x86_64

rpm -e openssh-5.3p1-124.el6_10.x86_64

 

我在这一步安装操作系统镜像包,第一步准备工作只是在外网上下载,并没有安装,将这些包拉倒内网后,这里才是安装,全部都要一个个安装

例:rpm -ivh --force --nodeps   zlib-1.2.7-18.el7.x86_64

 

3.3 安装ssh新版本

3.3.1 安装zlib

1.解压

sudo tar -zxvf zlib-1.2.11.tar.gz

cd zlib-1.2.11

2.配置

./configure

这个地方安装如果报错则  vim  configure 文件,然后删除以下所有内容

echo “Checking for obsessive-compulsive compiler options…” >>
configure.log

if try $CC -c $CFLAGS $test.c; then : else echo “Compiler error
reporting is too harsh for $0 (perhaps remove -Werror).” | tee -a
configure.log leave 1 fi

3.编译安装

make

make install

3.3.2 安装openssl

1.解压

tar –xf openssl-1.0.1h.tar.gz

cd openssl-1.0.1h

2.配置

./config

3.编译安装

make

make install

4.设置软连接, 这一步会报File exists,忽略,然后进行下一步操作

ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl       

5.查看新安装的openssl版本

openssl version –a

 

 

3.3.3 安装openssh

1.解压

tar –xf openssh-7.4p1.tar.gz

cd openssh-7.4p1

2.配置

./configure 

3.编译安装

make

make install

4.修改配置文件

(1)备份sshd文件

mv /etc/init.d/sshd /etc/init.d/sshd_old (这步可以不做)

(2)复制配置文件

cp /home/upOpenSSH/openssh-8.3p1/contrib/redhat/sshd.init     /etc/init.d/sshd

赋权

chmod u+x /etc/init.d/sshd

添加到开机启动项

chkconfig --add sshd

chkconfig sshd on

设置sshd路径

vim /etc/rc.d/init.d/sshd

SSHD=/usr/local/sbin/sshd

设置运行root用户登录

 vim /usr/local/etc/sshd_config

PermitRootLogin yes

重启服务,注意,这个时候你要确保能通过其他途径进入桌面,比如vnc,否则的话不要进行下一步,因为service sshd restart   

并不会将ssdh服务重启,导致无法通过ssh、xshenll工具连接linux操作系统,这时就只能重装系统!!!,

service sshd restart   

这时候重新用ssh连接会发现连不上,进Linux桌面发现service sshd  status 状态是关的   service sshd start即可

到此升级完成。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

 

 


 

确认升级后的SSH版本可用时,停止telnet服务

1.确认版本

ssh –V 确认升级后的版本信息

2.修改配置文件

将vi /etc/xinetd.d/telnet文件中的disable = no修改为disable = yes

3.设置telnet开机不启动

chkconfig xinetd off

4.关闭telnet服务

/etc/init.d/xinetd stop

5.开启防火墙并设置开机自动启动

service iptables start

chkconfig iptables on

posted @ 2020-07-09 21:45  登风360  阅读(3319)  评论(0编辑  收藏  举报