跨境派

跨境派

跨境派,专注跨境行业新闻资讯、跨境电商知识分享!

当前位置:首页 > 卖家故事 > Centos7.9-升级openssh9.7p1,修复安全漏洞

Centos7.9-升级openssh9.7p1,修复安全漏洞

时间:2024-04-18 07:55:28 来源:网络cs 作者:焦糖 栏目:卖家故事 阅读:

标签: 修复  安全  漏洞  升级 
阅读本书更多章节>>>>

Centos7.9-升级openssh9.7p1,修复安全漏洞

说明:ssh服务可以说是最重要的服务之一,远程管理基本都是使用这个了。然而如果出现漏洞,就存在很大的风险,需要及时升级ssh版本来修复漏洞。

主要方法:利用ansible批量源码编译安装openssh

                    

思路:

首先在ansible主控端,创建个关于升级openssh的目录,将需要升级的ssh9.7p1tar包下载至该目录;在/etc/ansible/hosts主机清单填写想要升级的那些主机,可写ip地址,域名;在上述目录中编写shell安装openssl3-1.5,openssh-9.7p1一键安装脚本;最后撰写playbook剧本:首先调用yum模块在所有主机通过安装所需要升级的依赖,再调用copy模块将主控端的tar包,脚本分发到目标主机,脚本分发过去时并没有执行权限,再调用file模块授权分发过去的脚本赋予执行权限,最后调用shell模块执行被控端的脚本升级openssh9.7p1版本。 在运行playbook剧本前检查主控端与被控端是否做好ssh免密通信!!!

问:为什么升级openssh时也要同时升级openssl?

       答:升级 OpenSSH 时需要升级 OpenSSL,是因为 OpenSSH 使用 OpenSSL 库来实现加密通信功能。OpenSSL 是一个开源的加密库,为许多应用程序提供了加密功能。OpenSSH 作为一个安全的远程登录工具,使用 OpenSSL 提供的加密算法来保护通信数据的安全性。因此,为了确保 OpenSSH 在进行加密通信时能够使用最新的加密算法和安全漏洞修复,升级 OpenSSH 时也需要升级 OpenSSL。这样可以保证系统在进行远程登录和文件传输时的安全性和稳定性。

主控端: 以下操作都在/openssh_upgrade_9.7/目录下

1.下载所需软件包

       mkdir -p /openssh_upgrade_9.7/

       wget -P /openssh_upgrade_9.7/ https://www.openssl.org/source/openssl-3.1.5.tar.gz --no-check-certificate       #下载openssl3.1.5

       wget -P /openssh_upgrade_9.7/ https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.7p1.tar.gz --no-check-certificate       #下载openssh9.7p1

---------------------------------------------------------------------------

2.撰写一键安装openssl-3.1.5 shell脚本

       vim upgrade_openssl.sh

              #!/bin/bash

                cd /usr/local/src/

                mv /usr/lib64/openssl /usr/lib64/openssl.old

                yum -y remove openssl

                tar xf openssl-3.1.5.tar.gz

                cd /usr/local/src/openssl-3.1.5

                ./config --prefix=/usr

                make && make install

---------------------------------------------------------------------------

3.撰写一键安装openssh-9.7p1 shell脚本

       vim upgrade_openssh.sh

              #!/bin/bash

                cd /usr/local/src/

                tar xf openssh-9.7p1.tar.gz

                mkdir /etc/ssh.bak

                mv /etc/ssh/ /etc/ssh.bak

                cd /usr/local/src/openssh-9.7p1

                ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/openssl --with-md5-passwords

                make && make install

                cp /usr/local/src/openssh-9.7p1/contrib/redhat/sshd.init /etc/init.d/sshd

                mv /usr/lib/systemd/system/sshd.service /usr/lib/systemd/system/sshd.service.bak

                cp /etc/ssh/sshd_config{,.bak}

                sed -i 's/^PermitRootLogin/#&/' /etc/ssh/sshd_config

                sed -i '32i PermitRootLogin yes' /etc/ssh/sshd_config

                chkconfig --add sshd

                systemctl daemon-reload

                systemctl restart sshd

---------------------------------------------------------------------------

4.撰写playbook剧本

       vim one-click-upgrade.yml

---

- hosts: all

  tasks:

  - name: yum安装所需升级依赖

    yum:

      name: "{{ packages }}"

    vars:

      packages:

        - gcc

        - gcc-c++

        - openssl-devel

        - libstdc++*

        - libcap*

        - pam-devel

        - zlib-devel

        - perl

        - perl-IPC-Cmd

  - name: copy所需安装包,脚本到目标主机

    copy:

      src: /ssh_upgrade_9.7/

      dest: /usr/local/src/

  - name: 授权copy过去的脚本赋予执行权限

    file:

      path: /usr/local/src/upgrade_openss*

      mode: '0755'

  - name: 调用shell脚本升级ssl3.1.5

    shell: /usr/local/src/upgrade_openssl.sh

  - name: 调用shell脚本升级ssh9.7p1

shell: /usr/local/src/upgrade_openssh.sh

5.主机清单撰写

vim /etc/ansible/hosts

上述playbook中-hosts:all 代表所有主机,如果想升级某个区段可写-host:web

6.运行playbook剧本

上述全绿代表运行成功

7.在主控端调用command模块查看被控端openssl,openssh是否升级成功 例:

上述代表运行成功

阅读本书更多章节>>>>

本文链接:https://www.kjpai.cn/gushi/2024-04-18/159911.html,文章来源:网络cs,作者:焦糖,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

文章评论