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 版本时,请谨慎行事,错误的操作可能导致系统服务受影响。
相关推荐
_.Switch13 分钟前
高级Python自动化运维:容器安全与网络策略的深度解析
运维·网络·python·安全·自动化·devops
2401_8504108313 分钟前
文件系统和日志管理
linux·运维·服务器
JokerSZ.17 分钟前
【基于LSM的ELF文件安全模块设计】参考
运维·网络·安全
XMYX-01 小时前
使用 SSH 蜜罐提升安全性和记录攻击活动
linux·ssh
芯盾时代1 小时前
数字身份发展趋势前瞻:身份韧性与安全
运维·安全·网络安全·密码学·信息与通信
心灵彼岸-诗和远方2 小时前
DevOps业务价值流:架构设计最佳实践
运维·产品经理·devops
一只哒布刘2 小时前
NFS服务器
运维·服务器
苹果醋33 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx
二十雨辰3 小时前
[linux]docker基础
linux·运维·docker
Jason-河山4 小时前
【自动化更新,让商品信息跳舞】——利用API返回值的幽默编程之旅
运维·自动化