CentOS离线升级OpenSSH至9

3、zlib 1.3.1版本

下载地址:zlib Home Site

4、 pam-1.1.8-23和pam-devel-1.1.8-23版本

RPM resource pam下载地址:RPM resource pam=

RPM resource pam-devel(x86-64)")=

三、安装telnet

注:在进行openssh升级之前,建议安装telnet服务,以防止在升级过程中一旦出现中断现象,服务器还可以通过telnet方式登录。

1、下载telnet-client、telnet-server、xinetd安装包

注:如服务器可以访问互联网,则可以使用wget方式下载

RPM resource telnetTelnet-client下载地址:RPM resource telnet

Telnet-server下载地址:RPM resource telnet-server(x86-64)")

RPM resource xinetdXinetd下载地址:RPM resource xinetd

2、安装telnet-client、telnet-server、xinetd

[root@20240322-1149-test1 ~]# rpm -ivh xinetd-2.3.15-14.el7.x86_64.rpm

[root@20240322-1149-test1 ~]# rpm -ivh telnet-0.17-65.el7_8.x86_64.rpm

[root@20240322-1149-test1 ~]# rpm -ivh telnet-server-0.17-65.el7_8.x86_64.rpm

3、查看是否安装成功

[root@20240322-1149-test1 ~]# rpm -qa | grep telnet

[root@20240322-1149-test1 ~]# rpm -qa | grep xinetd

4、启动telnet依赖的xinetd服务,并查看是否正常启

[root@20240322-1149-test1 ~]# systemctl start xinetd

[root@20240322-1149-test1 ~]# ps -ef | grep xinet

5、编辑telnet文件

如果没有telnet文件也没关系,vim直接创建并编辑即可

[root@20240322-1149-test1 ~]# vim /etc/xinetd.d/telnet

添加:

service telnet

{

flags = REUSE

socket_type = stream

wait = no

user = root

server =/usr/sbin/in.telnetd

log_on_failure += USERID

disable = no

}

6、启动telnet服务并设置开机自启

[root@20240322-1149-test1 ~]# systemctl start telnet.socket

[root@20240322-1149-test1 ~]# systemctl enable telnet.socket

[root@20240322-1149-test1 ~]# systemctl status telnet.socket

7、防火墙放行telnet服务的23端口

[root@20240322-1149-test1 ~]# firewall-cmd --zone=public --add-port=23/tcp --permanent

[root@20240322-1149-test1 ~]# firewall-cmd --reload       #刷新防火墙策略

8、通过telnet登录测试

登录失败,这个为正常现象,因为系统默认禁止root用户使用telnet登录终端,我们在日志中查看登录使用的终端并在/etc/securetty中解除禁止即可

9、 telnet登录问题解决方法

查看被禁止登录的终端

[root@20240322-1149-test1 ~]# tail /var/log/secure

编辑/etc/securetty 将禁止登录的终端添加进来即可

[root@20240322-1149-test1 ~]# vim /etc/securetty

10、再次使用telnet登录测试

登录成功

四、卸载老版本OpenSSH、OpenSSL

我们升级OpenSSH采用的是卸载主机中老版本的OpenSSH,再安装新版本的OpenSSH,依此来达成升级并解决漏洞的问题。

1、查看系统中安装的OpenSSH、OpenSSL

[root@20240322-1149-test1 ~]# rpm -qa openssh*

[root@20240322-1149-test1 ~]# rpm -qa openssl*

2、备份/etc/pam.d/sshd

[root@20240322-1149-test1 ~]# mv /etc/pam.d/sshd /etc/pam.d/sshd-bak

3、卸载系统中安装的OpenSSH、OpenSSL

在执行这步时需要确认telnet已经安装并且可以正常通过telnet登录系统

[root@20240322-1149-test1 ~]# rpm -e --nodeps openssh

[root@20240322-1149-test1 ~]# rpm -qa openssh

[root@20240322-1149-test1 ~]# rpm -e --nodeps openssl

[root@20240322-1149-test1 ~]# rpm -qa openssl

五、安装新版本OpenSSH、OpenSSL

1、安装openssl

#解压openssl安装包

[root@20240322-1149-test1 ~]# tar zxvf openssl-1.1.1q.tar.gz

#切换到安装目录

[root@20240322-1149-test1 ~]# cd openssl-1.1.1q/

#进行初始化

[root@20240322-1149-test1 openssl-1.1.1q]# ./config -Wl,-rpath=/usr/lib64 --prefix=/usr/local/openssl --openssldir=/usr/local/openssl --libdir=/usr/lib64

#执行安装

[root@20240322-1149-test1 openssl-1.1.1q]# make -j 4 && make install

#创建软链接

[root@20240322-1149-test1 openssl-1.1.1q]# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

#安装完成,查看版本

[root@20240322-1149-test1 openssl-1.1.1q]# openssl version

2、安装zlib

#解压安装包

[root@20240322-1149-test1 ~]# tar zxvf zlib-1.3.1.tar.gz

#进入安装目录

[root@20240322-1149-test1 ~]# cd zlib-1.3.1/

#添加prefix路径

[root@20240322-1149-test1 zlib-1.3.1]# ./configure --prefix=/usr/local/zlib

#编译并安装

[root@20240322-1149-test1 zlib-1.3.1]# make && make install

#写入动态库路径

[root@20240322-1149-test1 zlib-1.3.1]# echo “/usr/local/zlib/lib/” >> /etc/ld.so.conf

[root@20240322-1149-test1 zlib-1.3.1]# ldconfig –v

#查看软链接

[root@20240322-1149-test1 zlib-1.3.1]# ll /lib64/libz.*

#进入编译目录下

[root@20240322-1149-test1 zlib-1.3.1]# cd /usr/local/zlib/lib/

#复制执行目录到/lib64下

[root@20240322-1149-test1 lib]# cp libz.so.1.3.1 /lib64/libz.so.1.3.1

#进入lib64目录下创建软链接

[root@20240322-1149-test1 lib]# cd /lib64

[root@20240322-1149-test1 lib64]# ln -snf libz.so.1.3.1  /lib64/libz.so

[root@20240322-1149-test1 lib64]# ln -snf libz.so.1.3.1  /lib64/libz.so.1

3、安装pam、pam-devel

#将安装包放置在/usr/local下并执行安装命令

[root@20240322-1149-test1 ~]# cd /usr/local/

[root@20240322-1149-test1 ~]# rpm -ivh pam-1.1.8-23.el7.x86_64.rpm

[root@20240322-1149-test1 ~]# rpm -ivh pam-devel-1.1.8-23.el7.x86_64.rpm

4、安装openssh

#解压安装包

[root@20240322-1149-test1 ~]# tar -xzvf openssh-9.6p1.tar.gz

#进入openssh安装目录

[root@20240322-1149-test1 ~]# cd openssh-9.6p1

#编译安装

[root@20240322-1149-test1 openssh-9.6p1]# ./configure --prefix=/usr/ --sysconfdir=/etc/ssh --with-pam --with-md5-passwords --with-tcp-wrappers --with-ssl-dir=/usr/local/openssl --with-zlib=/usr/local/zlib --mandir=/usr/share/man

CentOS 6.8 离线环境下升级 OpenSSH 到版本 9.8,您需要先下载新的 OpenSSH 安装包,然后手动安装。因为官方已经停止对 CentOS 6的支持,所以这可能会比较复杂,建议使用较旧的稳定版本。以下是步骤概述: 1. **下载安装包**: - 访问 OpenSSH 的官方网站 (<https://www.openbsd.org/ftp.html>) 或者第三方存储库(如 EPEL),找到适合 CentOS 6 的 OpenSSH 9.x 版本的 tarball。 2. **创建本地镜像目录**: - 下载到一个易于访问的目录,例如 `/media/your_disk/centos_updates`。 3. **解压并准备安装**: - 使用 `tar` 解压缩安装文件,例如 `tar xvf openssh-9.8p1.tar.gz` - 进入解压后的目录,比如 `cd openssh-9.8p1` 4. **编译并安装**: - 配置编译选项,通常不需要做太多修改,但确认`--prefix=/usr`以安装到系统默认位置。 ``` ./configure --prefix=/usr make && sudo make install ``` 5. **更新配置文件**: - 将新安装的 SSH 服务配置文件复制到/etc/ssh目录下替换原有的。 ```bash sudo cp /path/to/new/sshd_config /etc/ssh/sshd_config ``` 6. **重启服务**: - 重启 SSH 服务以便应用新的配置。 ```bash sudo systemctl restart sshd ``` 7. **验证升级**: - 使用 `sshd_config` 检查配置,运行 `sshd` 启动检查是否有错误提示。 由于这是一个非正式的过程,并且可能因为依赖项或其他因素导致问题,所以在尝试之前务必做好数据备份。此外,由于 CentOS 6 已不再支持,升级过程中遇到的技术问题可能需要社区支持解决,而不是通过官方渠道获取帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值