翼度科技»论坛 云主机 LINUX 查看内容

OpenSSL升级1.1.1w和OpenSSH 升级 9.5p1 保姆级教程

9

主题

9

帖子

27

积分

新手上路

Rank: 1

积分
27
 
一、 前言

OpenSSH 的加密功能需要用到OpenSSL,所以在升级OpenSSH的时候,大部分情况是需要将OpenSSL一起升级的。
这里我们选择先升级OpenSSL到OpenSSL 1.1.1w  11 Sep 2023
然后再升级OpenSSH 到OpenSSH_9.5p1, OpenSSL 1.1.1w  11 Sep 2023
两个都是最新版本,方便大家食用。
1.1 注意点

在升级之前先将需要的包上传到服务器,以免升级失败后导致上传文件失败。(这里我用的sftp上传,sftp的核心也需要用到SSH),并安装telnet-server服务保证SSH升级失败后,可以继续远程连接。
需要有初始yum源,要不然安装这两个服务众多的依赖包将会是梦魇。
原始版本信息如下。
 

二、升级OpenSSL

2.1 安装依赖

 
  1. yum -y install gcc*
复制代码
 
2.2备份、卸载原有OpenSSL

1、 查找openssl 相关目录,然后备份
 
  1. [root@vm206 etc]# whereis openssl
  2. openssl: /usr/bin/openssl /usr/lib64/openssl /usr/share/man/man1/openssl.1ssl.gz
  3. [root@vm206 etc]# mv /usr/bin/openssl  /usr/bin/openssl.old
  4. [root@vm206 etc]# mv /usr/lib64/openssl /usr/lib64/openssl.old
复制代码
 
2、 卸载 openssl (这一步看个人需要,我有洁癖所以我卸载了)
  1. yum remove openssl
复制代码
2.3安装openssl
  1. tar -xzvf openssl-1.1.1w.tar.gz
  2. cd openssl-1.1.1w/
  3. ./config --prefix=/usr
  4. make && make install
复制代码
#这里我的目录选择了/usr 是因为系统最初始的openssl的目录就是/usr 这样可以省去的软连接、更新链接库的问题
2.4验证

  1. [root@vm206 openssl-1.1.1w]# whereis openssl
  2. openssl: /usr/bin/openssl /usr/lib64/openssl /usr/include/openssl /usr/share/man/man1/openssl.1ssl.gz /usr/share/man/man1/openssl.1
  3. [root@vm206 openssl-1.1.1w]# openssl  version
  4. OpenSSL 1.1.1w  11 Sep 2023
复制代码
#可以看到我这边的目录和老版本的openssl的目录保持了一致,唯一不同的是多了一个/usr/include/openssl 库目录
#如果不加prefix ,openssl的默认路径如下
  1. Bin:  /usr/local/bin/openssl
  2. include库  :/usr/local/include/openssl
  3. lib库:/usr/local/lib64/
  4. engine库:/usr/lib64/openssl/engines
复制代码
 
二、 升级OpenSSH

2.1 安装telnet-server

 
  1. yum install telnet* -y
  2. systemctl  start telnet.socket
  3. systemctl enable telnet.socket
  4. mv /etc/securetty /etc/securetty.bak
复制代码
 
#临时关闭安全登录,否则无法进行远程telnet连接
#有防火墙记得关闭防火墙,并关闭SELinux
 

#如上,已经可以通过telnet远程连接了,这下可以放心大胆的操作了。

2.2 安装依赖包
  1. yum install -y gcc pam-devel rpm-build wget zlib-devel openssl-devel net-tools
复制代码
2.3 备份

 

#通过whereis ssh sshd找出bin文件、源文件,然后备份。 man手册不需要备份。
  1. mv /etc/ssh /etc/ssh.bak
  2. mv /usr/bin/ssh /usr/bin/ssh.bak
  3. mv /usr/sbin/sshd /usr/sbin/sshd.bak
  4. mv /etc/pam.d/sshd  /etc/pam.d/sshd.old
复制代码
#备份pam验证文件
2.4卸载旧版OpenSSH

 
  1. yum remove openssh
复制代码
 
2.5安装新版OpenSSH
  1. tar -xzvf openssh-9.5p1.tar.gz
  2. cd openssh-9.5p1
  3. ./configure --prefix=/usr --sysconfdir=/etc/ssh  --with-pam   --with-ssl-dir=/usr/local/lib64/
复制代码
#其中--prefix --sysconfdir 这两个参数我仍然采用了系统之前的默认路径,避免路径混乱导致的问题
  1. make
  2. make install
  3. cd /etc/pam.d/
  4. mv sshd.old sshd
复制代码
#恢复ssh pam认证
  1. cd openssh-9.5p1/
  2. cp contrib/redhat/sshd.init /etc/init.d/sshd
  3. chkconfig --add sshd
  4. systemctl  enable sshd
  5. systemctl  start sshd
复制代码
 

#可以看到,已经升级成功
2.6修改/etc/ssh/sshd_config 配置文件

       文件修改如下,然后重启sshd服务即可



       登录成功界面

 
 
来源:https://www.cnblogs.com/simendavid/p/17792570.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
来自手机

举报 回复 使用道具