主题评价:
  • 0 次(票) - 平均星级: 0
  • 1
  • 2
  • 3
  • 4
  • 5
NGINX Plus 安装配置
#1
在所有受支持的 Linux 发行版上安装和升级 NGINX Plus,并使用基本包和动态模块的分步说明。

本文介绍如何在 Amazon Linux、AlmaLinux、CentOS、Debian、FreeBSD、Oracle Linux、Rocky Linux、Red Hat Enterprise Linux (RHEL)、SUSE Linux Enterprise Server (SLES) 和 Ubuntu 上安装 NGINX Plus。


先决条件
  • NGINX Plus 订阅(已购买或试用)
  • 支持的操作系统
  • root特权
  • 您的MyF5 客户门户凭据,由 F5, Inc. 的电子邮件提供。
  • 您的 NGINX Plus 证书和公钥(nginx-repo.crt和nginx-repo.key文件)由 F5, Inc. 的电子邮件提供。

在 Amazon Linux 2023 上安装 NGINX Plus

NGINX Plus 可以安装在 Amazon Linux 2023(x86_64、aarch64)上。

  1. 如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件。详细信息请参见“升级 NGINX Plus ”。
  2. 创建/etc/ssl/nginx目录:
    代码:
    sudo mkdir -p /etc/ssl/nginx
    [*]cd /etc/ssl/nginx
  3. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  4. 安装所需的ca 证书依赖项:
    代码:
    sudo yum install ca-certificates
  5. 将nginx-repo.crt和nginx-repo.key文件复制到 Amazon Linux 服务器的/etc/ssl/nginx/目录中:
    代码:
    sudo cp nginx-repo.crt /etc/ssl/nginx/
    [*]sudo cp nginx-repo.key /etc/ssl/nginx/
  6. 通过将plus-amazonlinux2023.repo文件下载到/etc/yum.repos.d来添加 NGINX Plus 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/plus-amazonlinux2023.repo
  7. 如果您有 NGINX ModSecurity 订阅,请通过将modsecurity-amazonlinux2023.repo文件下载到/etc/yum.repos.d来添加 ModSecurity 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/modsecurity-amazonlinux2023.repo
  8. 如果您想启用实验性 QUIC 支持,请通过将plus-quic-amazonlinux2023.repo文件下载到/etc/yum.repos.d来添加 NGINX Plus QUIC 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/plus-quic-amazonlinux2023.repo
  9. 安装nginx-plus软件包。任何较旧的 NGINX Plus 软件包都会被自动替换。
    代码:
    sudo yum install nginx-plus
  10. 如果您有 NGINX ModSecurity 订阅,请安装 ModSecurity 包:
    代码:
    sudo yum install nginx-plus nginx-plus-module-modsecurity
  11. 对于实验性 QUIC 支持,请安装 NGINX Plus QUIC 包:
    代码:
    sudo yum install nginx-plus-quic
  12. 检查nginx二进制版本以确保您已正确安装 NGINX Plus:
    代码:
    nginx -v
  13. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


在 Amazon Linux 2 上安装 NGINX Plus

NGINX Plus 可以安装在 Amazon Linux 2 LTS(x86_64、aarch64)上。

  1. 如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件。详细信息请参见“升级 NGINX Plus ”。
  2. 创建/etc/ssl/nginx目录:
    代码:
    sudo mkdir -p /etc/ssl/nginx
    [*]cd /etc/ssl/nginx
  3. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  4. 安装所需的ca 证书依赖项:
    代码:
    sudo yum install ca-certificates
  5. 将nginx-repo.crt和nginx-repo.key文件复制到/etc/ssl/nginx/目录:
    代码:
    sudo cp nginx-repo.crt /etc/ssl/nginx/
    [*]sudo cp nginx-repo.key /etc/ssl/nginx/
  6. 通过将nginx-plus-amazon2.repo文件下载到/etc/yum.repos.d来添加 NGINX Plus 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/nginx-plus-amazon2.repo
  7. 如果您想启用实验性 QUIC 支持,请通过将文件plus-quic-amazon2.repo下载到/etc/yum.repos.d来添加 NGINX Plus QUIC 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/plus-quic-amazon2.repo
  8. 安装nginx-plus软件包。任何较旧的 NGINX Plus 软件包都会被自动替换。
    代码:
    sudo yum install nginx-plus
  9. 如果您有 NGINX ModSecurity 订阅,请安装 ModSecurity 包:
    代码:
    sudo yum install nginx-plus nginx-plus-module-modsecurity
  10. 对于实验性 QUIC 支持,请安装 NGINX Plus QUIC 包:
    代码:
    sudo yum install nginx-plus-quic
  11. 检查nginx二进制版本以确保您已正确安装 NGINX Plus:
    代码:
    nginx -v
  12. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


在 RHEL 7.4+、CentOS RHEL 7.4+ 和 Oracle Linux 7.4+ 上安装 NGINX Plus

NGINX Plus 可以安装在以下版本的 CentOS/Oracle Linux/RHEL 上:
  • CentOS 7.4+(x86_64、aarch64)
  • Oracle Linux 7.4+ (x86_64)
  • 红帽企业 Linux 7.4+(x86_64、aarch64)

  1. 如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件。详细信息请参见“升级 NGINX Plus ”。
  2. 创建/etc/ssl/nginx目录:
    代码:
    sudo mkdir -p /etc/ssl/nginx
    [*]cd /etc/ssl/nginx
  3. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  4. 将文件复制到/etc/ssl/nginx/目录:
    代码:
    sudo cp nginx-repo.crt /etc/ssl/nginx/
    [*]sudo cp nginx-repo.key /etc/ssl/nginx/
  5. 安装所需的ca 证书依赖项:
    代码:
    sudo yum install ca-certificates
  6. 如果您有 NGINX App Protect 订阅,请安装epel-release依赖项:
    代码:
    sudo yum install epel-release
  7. 通过将nginx-plus-7.4.repo文件下载到/etc/yum.repos.d来添加 NGINX Plus 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/nginx-plus-7.4.repo
  8. 如果您订阅了 NGINX App Protect,请通过将app-protect-7.repo文件下载到/etc/yum.repos.d来添加 NGINX App Protect 存储库:
    代码:
    $ sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/app-protect-7.repo
  9. 如果您订阅了 NGINX ModSecurity,请通过将modsecurity-7.repo文件下载到/etc/yum.repos.d来添加 NGINX ModSecurity 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/modsecurity-7.repo
  10. 安装nginx-plus软件包。任何较旧的 NGINX Plus 软件包都会被自动替换。
    代码:
    sudo yum install nginx-plus
  11. 如果您订阅了 NGINX App Protect,请安装 NGINX App Protect 及其签名:
    代码:
    sudo yum install nginx-plus app-protect app-protect-attack-signatures
  12. 如果您有 NGINX ModSecurity 订阅,请安装 ModSecurity 包:
    代码:
    sudo yum install nginx-plus nginx-plus-module-modsecurity
  13. 要启用 nginx 服务在启动时启动,请运行以下命令:
    代码:
    sudo systemctl enable nginx.service
  14. 检查nginx二进制版本以确保您已正确安装 NGINX Plus:
    代码:
    nginx -v
  15. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


在 RHEL 8.1+、Oracle Linux 8.1+、AlmaLinux 8、Rocky Linux 8 上安装 NGINX Plus

NGINX Plus 可以安装在以下版本的 CentOS/RHEL 上:
  • 红帽企业 Linux 8.1+(x86_64、aarch64、s390x)
  • Oracle Linux 8.1+(x86_64、aarch64)
  • AlmaLinux 8.6+(x86_64,aarch64)
  • 洛基 Linux 8.6+(x86_64、aarch64)

  1. 如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件。详细信息请参见“升级 NGINX Plus ”。
  2. 创建/etc/ssl/nginx目录:
    代码:
    sudo mkdir -p /etc/ssl/nginx
    [*]cd /etc/ssl/nginx
  3. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  4. 将文件复制到/etc/ssl/nginx/目录:
    代码:
    sudo cp nginx-repo.crt /etc/ssl/nginx/
    [*]sudo cp nginx-repo.key /etc/ssl/nginx/
  5. 安装所需的ca 证书依赖项:
    代码:
    sudo yum install ca-certificates
  6. 通过将nginx-plus-8.repo文件下载到/etc/yum.repos.d来添加 NGINX Plus 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/nginx-plus-8.repo
  7. 如果您订阅了 NGINX ModSecurity,请通过将modsecurity-8.repo文件下载到/etc/yum.repos.d来添加 NGINX ModSecurity 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/modsecurity-8.repo
  8. 如果您想启用实验性 QUIC 支持,请通过将文件plus-quic-8.repo下载到/etc/yum.repos.d来添加 NGINX Plus QUIC 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/plus-quic-8.repo
  9. 安装nginx-plus软件包。任何较旧的 NGINX Plus 软件包都会被自动替换。
    代码:
    sudo yum install nginx-plus
  10. 如果您有 NGINX ModSecurity 订阅,请安装 ModSecurity 包:
    代码:
    sudo yum install nginx-plus nginx-plus-module-modsecurity
  11. 对于实验性 QUIC 支持,请安装 NGINX Plus QUIC 包:
    代码:
    sudo yum install nginx-plus-quic
  12. 要启用 nginx 服务在启动时启动,请运行以下命令:
    代码:
    sudo systemctl enable nginx.service
  13. 检查nginx二进制版本以确保您已正确安装 NGINX Plus:
    代码:
    nginx -v
  14. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


在 RHEL 9.0+、Oracle Linux 9、AlmaLinux 9、Rocky Linux 9 上安装 NGINX Plus

NGINX Plus 可以安装在以下版本的 CentOS/RHEL 上:
  • 红帽企业 Linux 9.0+(x86_64、aarch64、s390x)
  • Oracle Linux 9 (x86_64)
  • AlmaLinux 9(x86_64,aarch64)
  • 洛基 Linux 9(x86_64、aarch64)

  1. 如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件。详细信息请参见“升级 NGINX Plus ”。
  2. 创建/etc/ssl/nginx目录:
    代码:
    sudo mkdir -p /etc/ssl/nginx
    [*]cd /etc/ssl/nginx
  3. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  4. 将文件复制到/etc/ssl/nginx/目录:
    代码:
    sudo cp nginx-repo.crt /etc/ssl/nginx/
    [*]sudo cp nginx-repo.key /etc/ssl/nginx/
  5. 安装所需的ca 证书依赖项:
    代码:
    sudo yum install ca-certificates
  6. 通过将plus-9.repo文件下载到/etc/yum.repos.d来添加 NGINX Plus 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/plus-9.repo
  7. 如果您订阅了 NGINX ModSecurity,请通过将modsecurity-9.repo文件下载到/etc/yum.repos.d来添加 NGINX ModSecurity 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/modsecurity-9.repo
  8. 如果您想启用实验性 QUIC 支持,请通过将文件plus-quic-9.repo下载到/etc/yum.repos.d来添加 NGINX Plus QUIC 存储库:
    代码:
    sudo wget -P /etc/yum.repos.d https://cs.nginx.com/static/files/plus-quic-9.repo
  9. 安装nginx-plus软件包。任何较旧的 NGINX Plus 软件包都会被自动替换。
    代码:
    sudo yum install nginx-plus
  10. 如果您有 NGINX ModSecurity 订阅,请安装 ModSecurity 包:
    代码:
    sudo yum install nginx-plus nginx-plus-module-modsecurity
  11. 对于实验性 QUIC 支持,请安装 NGINX Plus QUIC 包:
    代码:
    sudo yum install nginx-plus-quic
  12. 要启用 nginx 服务在启动时启动,请运行以下命令:
    代码:
    sudo systemctl enable nginx.service
  13. 检查nginx二进制版本以确保您已正确安装 NGINX Plus:
    代码:
    nginx -v
  14. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


在 Debian 或 Ubuntu 上安装 NGINX Plus

NGINX Plus 可以安装在以下版本的 Debian 或 Ubuntu 上:
  • Debian 11(x86_64、aarch64)
  • Ubuntu 18.04 LTS(“仿生”)(x86_64、aarch64)
  • Ubuntu 20.04 LTS(“Focal”)(x86_64、aarch64、s390x)
  • Ubuntu 22.04 LTS(“Jammy”)(x86_64、aarch64、s390x)

  1. 如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件。详细信息请参见“升级 NGINX Plus ”。
  2. 创建/etc/ssl/nginx目录:
    代码:
    sudo mkdir /etc/ssl/nginx
    cd /etc/ssl/nginx
  3. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  4. 将文件复制到/etc/ssl/nginx/目录:
    代码:
    sudo cp nginx-repo.crt /etc/ssl/nginx/
    sudo cp nginx-repo.key /etc/ssl/nginx/
  5. 安装必备包。
    对于 Debian:
    代码:
    sudo apt-get install apt-transport-https lsb-release ca-certificates wget gnupg2 debian-archive-keyring
    对于Ubuntu:
    代码:
    sudo apt-get install apt-transport-https lsb-release ca-certificates wget gnupg2 ubuntu-keyring
  6. 下载并添加NGINX 签名密钥和App Protect 安全更新签名密钥:
    代码:
    wget -qO - https://cs.nginx.com/static/keys/nginx_signing.key | gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null
    wget -qO - https://cs.nginx.com/static/keys/app-protect-security-updates.key | gpg --dearmor | sudo tee /usr/share/keyrings/app-protect-security-updates.gpg >/dev/null
  7. 添加 NGINX Plus 存储库。
    对于 Debian:
    代码:
    printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://pkgs.nginx.com/plus/debian `lsb_release -cs` nginx-plus\n" | sudo tee /etc/apt/sources.list.d/nginx-plus.list
    对于Ubuntu:
    代码:
    printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://pkgs.nginx.com/plus/ubuntu `lsb_release -cs` nginx-plus\n" | sudo tee /etc/apt/sources.list.d/nginx-plus.list
  8. 如果您有 NGINX App Protect 订阅,请添加其存储库。
    对于 Debian:
    代码:
    printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://pkgs.nginx.com/app-protect/debian `lsb_release -cs` nginx-plus\n" | sudo tee /etc/apt/sources.list.d/nginx-app-protect.list

    printf "deb [signed-by=/usr/share/keyrings/app-protect-security-updates.gpg] https://pkgs.nginx.com/app-protect-security-updates/debian `lsb_release -cs` nginx-plus\n" | sudo tee -a /etc/apt/sources.list.d/nginx-app-protect.list
    对于Ubuntu:
    代码:
    printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://pkgs.nginx.com/app-protect/ubuntu `lsb_release -cs` nginx-plus\n" | sudo tee /etc/apt/sources.list.d/nginx-app-protect.list

    printf "deb [signed-by=/usr/share/keyrings/app-protect-security-updates.gpg] https://pkgs.nginx.com/app-protect-security-updates/ubuntu `lsb_release -cs` nginx-plus\n" | sudo tee -a /etc/apt/sources.list.d/nginx-app-protect.list
  9. 如果您有 NGINX ModSecurity 订阅,请添加 NGINX ModSecurity 存储库。
    对于 Debian:
    代码:
    printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://pkgs.nginx.com/modsecurity/debian `lsb_release -cs` nginx-plus\n" | sudo tee /etc/apt/sources.list.d/nginx-modsecurity.list
    对于Ubuntu:
    代码:
    printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://pkgs.nginx.com/modsecurity/ubuntu `lsb_release -cs` nginx-plus\n" | sudo tee /etc/apt/sources.list.d/nginx-modsecurity.list
  10. 如果您想启用实验性 QUIC 支持,请添加 NGINX Plus QUIC 存储库:
    对于 Debian:
    代码:
    printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://pkgs.nginx.com/plus-quic/debian `lsb_release -cs` nginx-plus\n" | sudo tee /etc/apt/sources.list.d/nginx-plus-quic.list
    对于Ubuntu:
    代码:
    printf "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] https://pkgs.nginx.com/plus-quic/ubuntu `lsb_release -cs` nginx-plus\n" | sudo tee /etc/apt/sources.list.d/nginx-plus-quic.list
  11. 将nginx-plus apt 配置下载到/etc/apt/apt.conf.d:
    代码:
    sudo wget -P /etc/apt/apt.conf.d https://cs.nginx.com/static/files/90pkgs-nginx
  12. 更新存储库信息:
    代码:
    sudo apt-get update
  13. 安装nginx-plus软件包。任何较旧的 NGINX Plus 软件包都会被自动替换。
    代码:
    sudo apt-get install -y nginx-plus
  14. 如果您订阅了 NGINX App Protect,请安装 NGINX App Protect 及其签名:
    代码:
    sudo apt-get install app-protect app-protect-attack-signatures
  15. 如果您有 NGINX ModSecurity 订阅,请安装 ModSecurity 包:
    代码:
    sudo apt-get install nginx-plus nginx-plus-module-modsecurity
  16. 对于实验性 QUIC 支持,请安装 NGINX Plus QUIC 包:
    代码:
    sudo apt-get install nginx-plus-quic
  17. 检查nginx二进制版本以确保您已正确安装 NGINX Plus:
    代码:
    nginx -v
  18. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


在 FreeBSD 上安装 NGINX Plus

NGINX Plus 可以安装在以下版本的 FreeBSD 上:
  • FreeBSD 12.1+ (amd64)
  • FreeBSD 13(amd64)

要在 FreeBSD 上安装 NGINX Plus:

  1. 如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件。详细信息请参见“升级 NGINX Plus ”。
  2. 创建/etc/ssl/nginx目录:
    代码:
    sudo mkdir -p /etc/ssl/nginx
    [*]cd /etc/ssl/nginx
  3. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  4. 将文件复制到/etc/ssl/nginx/目录:
    代码:
    sudo cp nginx-repo.crt /etc/ssl/nginx/
    [*]sudo cp nginx-repo.key /etc/ssl/nginx/
  5. 安装必备的ca_root_nss软件包:
    代码:
    sudo pkg install ca_root_nss
  6. 将nginx-plus.conf文件复制到/etc/pkg/目录:
    代码:
    sudo fetch -o /etc/pkg/nginx-plus.conf http://cs.nginx.com/static/files/nginx-plus.conf
  7. modsecurity.conf如果您有 NGINX ModSecurity 订阅,请通过将文件下载到/etc/pkg/目录来添加存储库:
    代码:
    sudo fetch -o /etc/pkg/modsecurity.conf http://cs.nginx.com/static/files/modsecurity.conf
  8. 如果您想启用实验性 QUIC 支持,请通过将文件下载plus-quic.conf到/etc/pkg/目录来添加 NGINX Plus QUIC 存储库:
    代码:
    sudo fetch -o /etc/pkg/plus-quic.conf http://cs.nginx.com/static/files/plus-quic.conf
  9. 将以下行添加到/usr/local/etc/pkg.conf文件中:
    代码:
    PKG_ENV: { SSL_NO_VERIFY_PEER: "1",
    [*]SSL_CLIENT_CERT_FILE: "/etc/ssl/nginx/nginx-repo.crt",
    [*]SSL_CLIENT_KEY_FILE: "/etc/ssl/nginx/nginx-repo.key" }
  10. 安装nginx-plus软件包。任何较旧的 NGINX Plus 软件包都会被自动替换。如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件(详细信息请参阅“升级 NGINX Plus ”)。
    代码:
    sudo pkg install nginx-plus
  11. 如果您有 NGINX ModSecurity 订阅,请安装该nginx-plus-module-modsecurity软件包:
    代码:
    sudo pkg install nginx-plus nginx-plus-module-modsecurity
  12. 对于实验性 QUIC 支持,请安装 NGINX Plus QUIC 包:
    代码:
    sudo pkg install nginx-plus-quic
  13. 检查nginx二进制版本以确保您已正确安装 NGINX Plus:
    代码:
    nginx -v
  14. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


在 SUSE Linux Enterprise Server 上安装 NGINX Plus

NGINX Plus 可以安装在 SUSE Linux Enterprise Server 12 SP5 (x86_64)、15 SP2 (x86_64) 上。

要在 SLES 上安装 NGINX Plus:

  1. 创建/etc/ssl/nginx目录:
    代码:
    sudo mkdir /etc/ssl/nginx
    cd /etc/ssl/nginx
  2. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  3. 将文件复制到/etc/ssl/nginx/目录:
    代码:
    sudo cp nginx-repo.crt /etc/ssl/nginx/
    sudo cp nginx-repo.key /etc/ssl/nginx/
  4. 创建证书和密钥的文件包:
    代码:
    cat /etc/ssl/nginx/nginx-repo.crt /etc/ssl/nginx/nginx-repo.key > /etc/ssl/nginx/nginx-repo-bundle.crt
  5. 安装所需的ca 证书依赖项:
    代码:
    zypper install ca-certificates
  6. 添加nginx-plus存储库。
    对于 SLES 12:
    代码:
    zypper addrepo -G -t yum -c 'https://pkgs.nginx.com/plus/sles/12?ssl_clientcert=/etc/ssl/nginx/nginx-repo-bundle.crt&ssl_verify=peer' nginx-plus
    对于 SLES 15:
    代码:
    zypper addrepo -G -t yum -c 'https://pkgs.nginx.com/plus/sles/15?ssl_clientcert=/etc/ssl/nginx/nginx-repo-bundle.crt&ssl_verify=peer' nginx-plus
  7. 如果您有 NGINX ModSecurity 订阅,请添加 ModSecurity 存储库。
    对于 SLES 12:
    代码:
    zypper addrepo -G -t yum -c 'https://pkgs.nginx.com/modsecurity/sles/12?ssl_clientcert=/etc/ssl/nginx/nginx-repo-bundle.crt&ssl_verify=peer' nginx-modsecurity
    对于 SLES 15:
    代码:
    zypper addrepo -G -t yum -c 'https://pkgs.nginx.com/modsecurity/sles/15?ssl_clientcert=/etc/ssl/nginx/nginx-repo-bundle.crt&ssl_verify=peer' nginx-modsecurity
  8. 如果您想启用实验性 QUIC 支持,请添加 NGINX Plus QUIC 存储库。
    对于 SLES 15:
    代码:
    zypper addrepo -G -t yum -c 'https://pkgs.nginx.com/plus-quic/sles/15?ssl_clientcert=/etc/ssl/nginx/nginx-repo-bundle.crt&ssl_verify=peer' nginx-plus
  9. 安装nginx-plus软件包。任何较旧的 NGINX Plus 软件包都会被自动替换。
    代码:
    zypper install nginx-plus
  10. 如果您有 NGINX ModSecurity 订阅,请安装 ModSecurity 包:
    代码:
    zypper install nginx-plus-module-modsecurity
  11. 对于实验性 QUIC 支持,请安装 NGINX Plus QUIC 包:
    代码:
    zypper install nginx-plus-quic
  12. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


在 Alpine Linux 上安装 NGINX Plus

NGINX Plus 可以安装在以下版本的 Alpine Linux 上:
  • 3.14(x86_64、aarch64)
  • 3.15(x86_64、aarch64)
  • 3.16(x86_64、aarch64)
  • 3.17(x86_64、aarch64)

要在 Alpine Linux 上安装 NGINX Plus:

  1. 如果您安装了较旧的 NGINX Plus 软件包,建议备份配置和日志文件。详细信息请参见“升级 NGINX Plus ”。
  2. 登录MyF5 客户门户并下载nginx-repo.crt和nginx-repo.key文件。
  3. 将nginx-repo.key上传到/etc/apk/cert.key并将nginx-repo.crt上传到/etc/apk/cert.pem。请确保文件不包含其他证书和密钥:Alpine Linux 不支持混合不同存储库的客户端证书。
  4. 将 NGINX 签名公钥放入目录/etc/apk/keys:
    代码:
    sudo wget -O /etc/apk/keys/nginx_signing.rsa.pub https://cs.nginx.com/static/keys/nginx_signing.rsa.pub
  5. 将 NGINX 存储库添加到/etc/apk/repositories文件中:
    代码:
    printf "https://pkgs.nginx.com/plus/alpine/v`egrep -o '^[0-9]+\.[0-9]+' /etc/alpine-release`/main\n" | sudo tee -a /etc/apk/repositories
  6. 如果您有 NGINX App Protect 订阅,请添加 NGINX App Protect 存储库:
    代码:
    printf "https://pkgs.nginx.com/app-protect/alpine/v`egrep -o '^[0-9]+\.[0-9]+' /etc/alpine-release`/main\n" | sudo tee -a /etc/apk/repositories
  7. 如果您订阅了 NGINX ModSecurity,请添加 NGINX ModSecurity 存储库:
    代码:
    printf "https://pkgs.nginx.com/modsecurity/alpine/v`egrep -o '^[0-9]+\.[0-9]+' /etc/alpine-release`/main\n" | sudo tee -a /etc/apk/repositories
  8. 如果您想启用实验性 QUIC 支持,请将 NGINX Plus QUIC 存储库添加到/etc/apk/repositories文件中:
    代码:
    printf "https://pkgs.nginx.com/plus-quic/alpine/v`egrep -o '^[0-9]+\.[0-9]+' /etc/alpine-release`/main\n" | sudo tee -a /etc/apk/repositories
  9. 建议删除所有社区支持的 NGINX 软件包。请注意,所有 NGINX 模块也将被删除。
    代码:
    sudo apk del -r nginx
  10. 安装 NGINX Plus 软件包:
    代码:
    sudo apk add nginx-plus
  11. 如果您订阅了 NGINX App Protect,请安装 NGINX App Protect 及其签名:
    代码:
    sudo apk add app-protect app-protect-attack-signatures
  12. 如果您有 NGINX ModSecurity 订阅,请安装 ModSecurity 包:
    代码:
    sudo apk add nginx-plus nginx-plus-module-modsecurity
  13. 对于实验性 QUIC 支持,请安装 NGINX Plus QUIC 包:
    代码:
    sudo apk add nginx-plus-quic
  14. 检查nginx二进制版本以确保您已正确安装 NGINX Plus:
    代码:
    nginx -v
  15. 如果您的基础架构中使用NGINX Management Suite 实例管理器,请安装并启用 NGINX 代理。有关详细信息,请参阅安装和配置 NGINX 代理。


安装动态可加载模块

NGINX Plus 功能可以通过预构建包中未包含的动态可加载模块进行扩展:

NGINX 创作的动态模块 – 由 F5, Inc. 编写和维护的模块。直接从官方存储库安装这些模块:
  • GeoIP
  • Image-Filter
  • njs Scripting Language
  • OTel
  • Perl
  • XSLT

NGINX 认证的社区动态模块 – NGINX 测试和分发的流行第三方模块,NGINX 为其提供安装和基本配置支持。直接从官方存储库安装这些模块:
  • Brotli
  • Encrypted-Session
  • FIPS Status Check
  • GeoIP2
  • Headers-More
  • HTTP Substitutions Filter
  • Lua
  • NGINX ModSecurity WAF
  • NGINX Developer Kit
  • OpenTelemetry
  • OpenTracing
  • Phusion Passenger
  • Prometheus-njs
  • RTMP
  • Set-Misc
  • SPNEGO

社区动态模块 – 由 NGINX 社区的第三方成员编写和分发的模块。从作者的存储库下载源代码,并根据与您的 NGINX Plus 版本对应的NGINX 开源版本进行编译。有关列表,请参阅NGINX Wiki。


从官方存储库安装动态模块

NGINX 创作和 NGINX 认证的动态模块可以直接从模块存储库安装。要安装模块:
  • 对于 RHEL、Amazon Linux、CentOS、Oracle Linux、AlmaLinux 和 Rocky Linux:
    代码:
    yum install <MODULE-NAME>
  • 对于 Debian 和 Ubuntu:
    代码:
    apt-get install <MODULE-NAME>
  • 对于 FreeBSD:
    代码:
    pkg install <MODULE-NAME>
  • 对于 SLES:
    代码:
    zypper install <MODULE-NAME>
  • 对于 Alpine Linux:
    代码:
    sudo apk add <MODULE-NAME>

有关每个动态模块的详细安装说明,请参阅NGINX Plus 动态模块。

请注意,由于操作系统限制,某些模块不适用于某些操作系统版本。有关模块的详细信息和说明,请参阅NGINX Plus 技术规范。

安装该模块后,您需要在 NGINX Plus 配置文件中启用它。有关详细信息,请参阅启用动态模块。


安装 NGINX 社区模块

为了使社区动态模块能够与 NGINX Plus 一起使用,它必须与相应的 NGINX 开源版本一起编译。

  1. 准备构建环境。
    我们强烈建议您在单独的系统上编译动态模块,我们将其称为“构建环境”。这样做可以最大限度地降低您计划升级 NGINX Plus 的系统的风险和复杂性(我们将其称为“生产环境”)。构建环境必须满足以下要求:
    • 与生产环境相同的操作系统
    • 与生产环境相同的NGINX版本
    • 编译器和 make 实用程序
    • PCRE库(开发文件)
    • Zlib压缩库(开发文件)
    为了确保您的构建环境安装了这些先决条件,请运行适当的命令。
    • 对于 Debian 和 Ubuntu:
    代码:
    sudo apt-get install gcc make libpcre3-dev zlib1g-dev
    1. 对于 CentOS、Oracle Linux 和 RHEL:
    代码:
    sudo yum install gcc make pcre-devel zlib-devel
  2. 获取 NGINX 开源。
    • 确定与您的 NGINX Plus 版本相对应的 NGINX 开源版本。请参阅NGINX Plus 版本。
    • 下载相应 NGINX 开源主线版本的源代码,在本例中为 1.23.4:
    代码:
    wget -qO - https://nginx.org/download/nginx-1.23.4.tar.gz | tar zxfv -
  3. 获取动态模块的源。
    动态模块的源代码可以放置在构建环境中的任何目录中。作为示例,我们从 GitHub复制NGINX“Hello World”模块:
    代码:
    git clone https://github.com/perusio/nginx-hello-world-module.git
  4. 编译动态模块。
    configure首先通过使用选项运行脚本来建立二进制兼容性‑‑with‑compat。然后使用 编译模块make modules。
    代码:
    cd nginx-1.23.4/
    ./configure --with-compat --add-dynamic-module=../<MODULE-SOURCES>
    make modules
    构建过程生成的.so文件放置在objs子目录中
    代码:
    ls objs/*.so
    objs/ngx_http_hello_world.so
  5. 复制模块文件并在文件名中包含 NGINX 开源版本。这使得在生产环境中管理动态模块的多个版本变得更加简单。
    代码:
    cp objs/ngx_http_hello_world.so ./ngx_http_hello_world_1.23.4.so

启用动态模块

动态模块位于/etc/nginx/modules目录中,该目录是在 NGINX Plus 安装时自动创建的。

要启用动态模块:

  1. 在/etc/nginx/nginx.confmain的(顶级)上下文中,为您安装的每个动态可加载模块添加一个load_module指令。
    代码:
    load_module modules/<MODULE-NAME>.so;
  2. 检查新配置的语法有效性并重新加载 NGINX Plus。
    代码:
    nginx -t && nginx -s reload

NGINX Plus 非特权安装

在某些环境中,出于安全限制,对 root 帐户的访问受到限制。如果您使用的是 Linux 操作系统,如果没有 root 权限,您将无法运行 NGINX Plus 安装的包管理器。

作为解决方法,在此类环境中,可以使用特殊脚本来安装 NGINX Plus,该脚本修改 NGINX Plus 配置文件以从非 root 用户运行。该脚本还:
  • 下载 NGINX Plus 包
  • 将存档的内容提取到用户定义的包文件夹中
  • 将 NGINX 配置文件中用户文件夹的路径更改为用户定义文件夹中的相对路径
  • 制作配置目录的备份副本
  • 可以选择升级 NGINX Plus 的现有非特权安装

与 NGINX Plus 的常规安装相比,非特权安装有一些局限性和限制:
  • 仍然需要 root 权限才能侦听以下端口1024
  • 该脚本无意取代您操作系统的包管理器。它还不允许安装除 NGINX Plus 及其模块之外的任何其他软件。支持计划不涵盖为任何其他安装修改的脚本。
  • NGINX Plus 不会自动启动,因此,您必须为主机上的每个非特权安装添加自定义init脚本/单元文件systemd
  • NGINX Plus 二进制文件及其模块所需的所有依赖项和库不会自动安装,应手动检查和安装

该脚本可以在以下操作系统上运行
  • 红帽/CentOS
  • 亚马逊Linux 2
  • 亚马逊 Linux 2023
  • Debian、Ubuntu
  • 阿尔卑斯Linux
  • AlmaLinux、Rocky Linux

在开始非特权安装之前,请确保您具备先决条件部分中列出的所有先决条件(特权除外root)。对于基于 RPM 的发行版,请确保您已rpm2cpio安装。

要执行 NGINX Plus 的非特权安装:

  1. 获取脚本:
    代码:
    wget https://raw.githubusercontent.com/nginxinc/nginx-plus-install-tools/main/ngxunprivinst.sh
  2. 使脚本可执行:
    代码:
    chmod +x ngxunprivinst.sh
  3. 下载适用于您的操作系统的 NGINX Plus 及其模块包。<cert_file> 和 <key_file> 是您通过电子邮件提供的 NGINX Plus 证书和私钥:
    代码:
    ./ngxunprivinst.sh fetch -c <cert_file> -k <key_file>
    如果您需要安装特定版本的 NGINX Plus:
    • 首先,列出存储库中所有可用的 NGINX Plus 版本:
      代码:
      ./ngxunprivinst.sh list -c <cert_file> -k <key_file>
    • 然后使用以下选项指定特定的 NGINX Plus 版本-v:
      代码:
      ./ngxunprivinst.sh fetch -c <cert_file> -k <key_file> -v <version>
  4. 将下载的包解压到提供的 NGINX Plus 前缀 <path> 可选-y选项将覆盖现有安装(如果有):
    代码:
    ./ngxunprivinst.sh install [-y] -p <path> <file1.rpm> <file2.rpm>
  5. 安装过程完成后,运行 NGINX Plus。该-p参数设置保存 nginx 文件的目录的路径。该-c参数设置备用 NGINX 配置文件的路径。请注意 NGINX Plus 必须侦听上述端口1024:
    代码:
    <path>/usr/sbin/nginx -p <path>/etc/nginx -c <path>/etc/nginx/conf.d

使用此脚本,您还可以在提供的环境中升级 NGINX Plus 的现有非特权安装。可选-y选项执行强制升级而不进行任何确认:
代码:
./ngxunprivinst.sh upgrade [-y] -p <path> <file1.rpm> <file2.rpm>


升级 NGINX Plus

引用:注意:从版本 24 (R24) 开始,NGINX Plus 存储库已根据操作系统分发和许可证订阅分为单独的存储库。在从以前的 NGINX Plus 版本升级之前,您必须首先重新配置存储库以指向正确的位置。要重新配置存储库,请按照上面适用于您的操作系统的安装说明进行操作。

要将 NGINX Plus 安装升级到最新版本:

  1. 如果您的系统上有以前的 NGINX 或 NGINX Plus 软件包,请备份配置和日志文件。
    • 对于 Linux 发行版:
      代码:
      sudo cp -a /etc/nginx /etc/nginx-plus-backup
      sudo cp -a /var/log/nginx /var/log/nginx-plus-backup
    • 对于 FreeBSD:
      代码:
      sudo cp -a /usr/local/etc/nginx /usr/local/etc/nginx-plus-backup
      sudo cp -a /var/log/nginx /var/log/nginx-plus-backup
  2. 升级到新的 NGINX Plus 软件包。
    • 对于 RHEL、Amazon Linux、CentOS、Oracle Linux、AlmaLinux 和 Rocky Linux:
      代码:
      sudo yum upgrade nginx-plus
    • 对于 Debian 和 Ubuntu:
      代码:
      sudo apt-get update
      sudo apt-get install nginx-plus
    • 对于 FreeBSD:
      代码:
      sudo pkg upgrade nginx-plus

要验证新的 NGINX Plus 版本是否正在运行,请运行:
代码:
nginx -v
nginx version: nginx/1.23.4 (nginx-plus-r29)


升级 NGINX Plus 模块

升级过程取决于模块的提供和安装方式。
  • NGINX 创作和 NGINX 认证的社区动态模块会与 NGINX Plus 一起自动更新。
    引用:注意:对于 FreeBSD,每个 NGINX 创作和 NGINX 认证的模块必须使用 FreeBSD 包管理工具单独更新。
  • 社区动态模块必须针对相应的 NGINX 开源版本重新编译。
默认联系方式为telegram,需要微信号请留言。
回复


可能相关的主题..。
主题: 作者 回复数: 人气: 最近发表
  为什么 Netflix 选择 NGINX 作为其 CDN 的核心 netflix 0 37 08-04-2023, 04:58 PM
最近发表: netflix
  NGINX TCP 和 UDP 负载平衡 netflix 0 38 08-04-2023, 04:50 PM
最近发表: netflix
  NGINX HTTP负载均衡 netflix 0 39 08-04-2023, 04:27 PM
最近发表: netflix
  NGINX 进程运行时控制 netflix 0 41 08-04-2023, 04:07 PM
最近发表: netflix

论坛跳转:


正在浏览该主题的用户: 2 个游客