centos系统ssh7.4升级9.6

编译安装 OpenSSL

  1. 下载 OpenSSL 源代码

    bash 复制代码
    wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz

    这个命令从 OpenSSL 的官方网站下载指定版本(1.1.1w)的源代码压缩包。

  2. 解压源代码

    bash 复制代码
    tar zxvf openssl-1.1.1w.tar.gz

    使用 tar 命令解压下载的压缩包。

  3. 编译和安装

    bash 复制代码
    cd /usr/local/openssl-1.1.1w
    chmod +x ./config
    ./config --prefix=/usr/local/openssl/ --openssldir=/usr/local/openssl/ shared
    make && make install
    • 切换到解压后的目录。
    • 赋予 config 脚本执行权限。
    • 配置 OpenSSL 的安装路径和选项,然后编译和安装。
  4. 更新系统 OpenSSL 链接

    bash 复制代码
    mv /usr/bin/openssl /usr/bin/openssl.bak
    ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
    ln -s /usr/local/openssl/include/openssl /usr/include/openssl
    • 将系统默认的 OpenSSL 命令重命名(备份)。
    • 创建符号链接,使新安装的 OpenSSL 和其头文件成为系统默认使用的版本。
  5. 配置系统库链接

    bash 复制代码
    echo '/usr/local/openssl/lib' >> /etc/ld.so.conf.d/ssl.conf
    ldconfig
    • 将新 OpenSSL 的库路径添加到系统的库配置文件中,以便系统能找到这些库。
    • 更新系统的动态链接器缓存。

6.设置环境变量

bash 复制代码
   export LDFLAGS="-L/usr/local/openssl/lib"
   export CPPFLAGS="-I/usr/local/openssl/include"
  • 通过设置这两个环境变量,编译器和链接器在编译和链接过程中会在指定的路径中查找所需的库和头文件,以确保编译和链接顺利进行。

编译安装 OpenSSH

  1. 下载 OpenSSH 源代码

    bash 复制代码
    wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.6p1.tar.gz

    从 OpenBSD 的官方网站下载指定版本(9.6p1)的 OpenSSH 源代码压缩包。

  2. 解压源代码

    bash 复制代码
    tar zxvf openssh-9.6p1.tar.gz

    使用 tar 命令解压下载的压缩包。

  3. 安装依赖

    bash 复制代码
    sudo yum install automake

    安装编译 OpenSSH 所需的依赖。

  4. 编译和安装

    bash 复制代码
    cd /usr/local/openssh-9.6p1
    autoreconf -i
    chmod +x ./configure
    ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-md5-passwords --with-privsep-path=/var/lib/sshd 
    make && make install
    • 切换到解压后的目录。
    • 准备编译环境。
    • 配置 OpenSSH 的安装路径和选项,然后编译和安装。

配置 SSH 服务

  1. 配置 SSHD
bash 复制代码
	cd /etc/ssh/
	chmod 600 ssh host *
	chmod 644 *pub
  • 修改 /etc/ssh/sshd_config 文件,设置 SSH 服务的端口号(默认为 22),允许密码认证和 root 用户登录。
  1. 调整 SELinux 策略(如果适用):

    bash 复制代码
    sudo setenforce 0

    临时将 SELinux 设置为宽容模式,以避免 SELinux 阻止 SSHD 的某些操作。

  2. 重启 SSHD 服务

    bash 复制代码
    systemctl restart sshd

    应用配置更改并重启 SSH 服务。

注意事项

  • 在执行这些操作之前,确保您有足够的权限(可能需要 root 权限)。
  • 在生产环境中,直接从源代码编译安装软件会使得管理和维护变得更加复杂。请确保您了解这些操作的影响,并定期检查和应用安全更新。
  • 在编译 OpenSSL 和 OpenSSH 之前,确保您的系统满足所有依赖项的要求,可能需要安装额外的开发工具和库。
  • 在修改系统默认的 OpenSSL 和 SSH 版本时,请谨慎行事,错误的操作可能导致系统服务受影响。
相关推荐
deng-c-f2 小时前
Linux C/C++ 学习日记(29):IO密集型与CPU密集型、CPU的调度与线程切换
linux·学习·线程·cpu·io密集·cpu密集
ximy13352 小时前
AI服务器工作之整机部件(CPU+内存)
运维·服务器
weixin_421133412 小时前
bisheng 的 MCP服务器添加 或 系统集成
运维·服务器
AKAMAI4 小时前
安全风暴的绝地反击 :从告警地狱到智能防护
运维·人工智能·云计算
报错小能手4 小时前
linux学习笔记(43)网络编程——HTTPS (补充)
linux·网络·学习
报错小能手4 小时前
linux学习笔记(45)git详解
linux·笔记·学习
hkNaruto4 小时前
【DevOps】基于Nexus部署内网pypi代理镜像仓库操作手册
运维·devops
ximy13355 小时前
AI服务器工作之线材的接口介绍
运维·服务器
ximy13355 小时前
AI服务器工作之ubuntu系统下的驱动安装
运维·服务器·ubuntu
²º²²এ松5 小时前
蓝牙低功耗(BLE)通信的中心设备/外围设备(连接角色)、主机/从机(时序角色)、客户端/服务器(数据交互角色)的理解
运维·服务器·数据库