有个老项目被网安提醒了。说是nginx 版本 0.6.18 至 1.20.0 的一个安全漏洞。让我们升级nginx。
先看看nginx版本
nginx -v
是1.18的。
更新系统包
适用于基于 Debian/Ubuntu 的系统:
sudo apt update
sudo apt upgrade nginx
适用于基于 RHEL/CentOS 的系统:
sudo yum update nginx
这时候就会更新你的nginx版本了。
但是可能就是执行完你发现 nginx版本没变,或者还是没到你想要的那个新版。是因为你当前的系统软件源只提供了 nginx 1.** 版本,这在某些旧版的 Ubuntu 或 Debian 系统中是常见的情况。APT 通常只会提供软件源中维护的稳定版本。
有两个办法:
方法 1:手动添加 nginx 官方软件源
nginx 官方提供了最新版本的软件源,您可以通过添加官方源来获取最新的版本。以下是添加官方源的步骤:
1. 下载 nginx 官方的 GPG 密钥
wget https://nginx.org/packages/keys/nginx_signing.key
sudo mv nginx_signing.key /etc/apt/trusted.gpg.d/nginx_signing.asc
2. 添加 nginx 官方源
sudo sh -c 'echo "deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -cs) nginx" > /etc/apt/sources.list.d/nginx.list'
3. 更新 APT 包列表 更新nginx
sudo apt update
sudo apt upgrade nginx
这样就好了。
方法 2:手动下载并编译 nginx
如果希望完全控制版本,可以从 nginx: download 下载最新版本的源代码,并手动编译。