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 版本时,请谨慎行事,错误的操作可能导致系统服务受影响。
相关推荐
apocelipes1 小时前
Linux c 运行时获取动态库所在路径
linux·c语言·linux编程
努力学习的小廉2 小时前
深入了解linux系统—— 进程池
linux·运维·服务器
秃头菜狗2 小时前
各个主要目录的功能 / Linux 常见指令
linux·运维·服务器
2301_793102492 小时前
Linux——MySql数据库
linux·数据库
jiunian_cn4 小时前
【Linux】centos软件安装
linux·运维·centos
睡觉待开机4 小时前
0. MySQL在Centos 7环境安装
数据库·mysql·centos
藥瓿亭4 小时前
K8S认证|CKS题库+答案| 6. 创建 Secret
运维·ubuntu·docker·云原生·容器·kubernetes·cks
程序员JerrySUN4 小时前
[特殊字符] 深入理解 Linux 内核进程管理:架构、核心函数与调度机制
java·linux·架构
孤寂大仙v4 小时前
【计算机网络】非阻塞IO——select实现多路转接
linux·计算机网络
2302_809798324 小时前
【JavaWeb】Docker项目部署
java·运维·后端·青少年编程·docker·容器