美畅物联丨OpenSSH安全漏洞及Nginx缓冲区错误漏洞的修复
概述

系统安全扫描时,发现了以下漏洞:
1、Nginx 缓冲区错误漏洞;
2、OpenSSH 安全漏洞
并给出了修复建议:
1、升级Nginx至1.26.0以后版本;
2、升级openSSH至9.8及以后版本。
以下记录了 Nginx 升级至 1.26.2 和 OpenSSH 升级至 9.8p1的过程,操作系统为:centOS 7。
一、升级 Nginx 到 1.26.2
步骤 1:检查当前 Nginx 版本
nginx -v
步骤 2:备份现有配置文件
在升级前,备份现有 Nginx 配置文件:
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
cp -r /etc/nginx/conf.d /etc/nginx/conf.d.bak
步骤 3:下载 Nginx 1.26.2
wget http://nginx.org/download/nginx-1.26.2.tar.gz
步骤 4:解压源码包:
tar -zxvf nginx-1.26.2.tar.gz
cd nginx-1.26.2
./configure \
> --prefix=/usr/local/nginx \
> --with-http_ssl_module \
> --with-http_v2_module \
> --with-http_gzip_static_module \
> --with-pcre \
> --with-zlib \
> --with-openssl
执行提示: ./configure: error: invalid option “–with-zlib”。
下载:zlib
wget https://zlib.net/fossils/zlib-1.2.13.tar.gz
解压:
tar -zxvf zlib-1.3.tar.gz
再次执行:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-pcre --with-zlib=./zlib-1.2.13 --with-openssl
./configure: error: invalid option “–with-openssl”
说明:
Nginx 1.26.2 官方支持 OpenSSL 1.1.1 系列和 3.x 系列。
? 如果你的系统依赖的是 OpenSSL 1.1.1 系列,建议使用最新的 1.1.1v。
? 如果你希望采用 OpenSSL 最新特性,选择 OpenSSL 3.1.x(最新为 3.1.3,同时需要确保系统和依赖支持)。
OpenSSL 3.x 系列改动较大,仅适用于对兼容性有较高要求或希望使用最新特性的情况。只为解决Nginx缓冲区错误漏洞;所以我选择OpenSSL 1.1.1
解压 并再次执行:
tar -zxvf openssl-1.1.1v.tar.gz
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-pcre --with-zlib=./zlib-1.2.13 --with-openssl=./openssl-1.1.1v
说明:由于指定了zlib和openssl的位置,这里不需要到相关的目录编译和安装zlib和openssl
步骤 5:编译并安装 Nginx:
完成配置后,继续执行以下命令完成编译和安装:
make
make install
步骤 6: 配置并启动新版本:
/usr/local/nginx/sbin/nginx -v
示例输出:
nginx version: nginx/1.26.2
。替换备份的配置文件到新路径:
cp /etc/nginx/nginx.conf.bak /usr/local/nginx/conf/nginx.conf
cp -r /etc/nginx/conf.d.bak /usr/local/nginx/conf/conf.d
启动 Nginx:
/usr/local/nginx/sbin/nginx
检查 Nginx 是否启动成功:
ps aux | grep nginx
二、升级 OpenSSH 到 9.8p1
步骤 1:检查OpenSSH版本并下载指定版本
ssh -V
从 OpenSSH 官方网站 下载源码:
wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.8p1.tar.gz
步骤 2: 解压源码包:
tar -zxvf openssh-9.8p1.tar.gz
cd openssh-9.8p1
步骤 3: 编译并安装 OpenSSH:
./configure
make
make install
步骤 4:配置环境变量:
编辑文件
vi ~/.bashrc
输入:
export PATH=/usr/local/openssl/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/openssl/lib:$LD_LIBRARY_PATH
export CFLAGS="-I/usr/local/openssl/include"
export LDFLAGS="-L/usr/local/openssl/lib
修改生效:
source ~/.bashrc
步骤 5:验证版本:
ssh -V

通过以上步骤完成升级后,您的系统将更安全,已知漏洞将被修复。
————————————————
关注“美畅物联”,了解更多视频汇聚及AIoT底座解决方案。