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 版本时,请谨慎行事,错误的操作可能导致系统服务受影响。
相关推荐
木头左5 小时前
【Nginx】内网服务源 IP 白名单实战:动态域名解析放行网段 + 端口接管零改造
运维·nginx·白名单·反向代理
Linux-lucky5 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
禁默6 小时前
启元 Q1 二次开发实践:Ubuntu 部署与仿真验证,从 PrimeConsole 到 ROS 2 Humble + RViz
linux·运维·ubuntu
skywalk81636 小时前
把 去也网站 从 Ubuntu 搬到 FreeBSD:一次 Service Jail + nginx 的部署实录
linux·运维·nginx·ubuntu·freebsd
翔云1234567 小时前
RocksDB中,客户端每写入一次数据,需要访问几次磁盘
运维·数据库·mysql
爱莉希雅&&&8 小时前
GitLab 完整学习笔记
linux·运维·服务器
风笙9788 小时前
[文件系统]文件系统挂载与卸载详解
linux
GeW9 小时前
新质生产力路线图解读:数据库性能优化与Linux调优专场
linux·数据库
小杨爱科普10 小时前
制造业上自动化改造,改造部分的专利到底归谁
运维·经验分享·自动化
陈希12310 小时前
Linux 服务器性能排查手册(2026):CPU、内存、磁盘IO、网络四大瓶颈定位
linux·服务器·网络