Nginx 如何使用 ngx_http_ssl_module 配置 HTTPS?

推荐答案

-- -------------------- ---- -------
------ -
    ------ --- ----
    ----------- ------------

    --------------- -------------------------------
    ------------------- -------------------------------

    ------------- ------- --------
    ----------- -----------------
    ------------------------- ---

    -------- - -
        ---- --------------
        ----- -----------
    -
-

本题详细解读

1. 配置 HTTPS 的基本步骤

要使用 ngx_http_ssl_module 配置 HTTPS,首先需要在 Nginx 配置文件中定义一个 server 块,并指定监听 443 端口(HTTPS 默认端口)。然后,通过 ssl_certificatessl_certificate_key 指令分别指定 SSL 证书和私钥的路径。

2. 配置 SSL 协议和加密套件

为了确保安全性,建议使用较新的 TLS 协议版本(如 TLSv1.2 和 TLSv1.3),并通过 ssl_ciphers 指令配置强加密套件。ssl_prefer_server_ciphers 指令可以确保服务器优先选择加密套件。

3. 示例配置详解

  • listen 443 ssl;:监听 443 端口并启用 SSL。
  • server_name example.com;:指定服务器名称。
  • ssl_certificate /etc/nginx/ssl/example.com.crt;:指定 SSL 证书路径。
  • ssl_certificate_key /etc/nginx/ssl/example.com.key;:指定 SSL 私钥路径。
  • ssl_protocols TLSv1.2 TLSv1.3;:指定支持的 SSL/TLS 协议版本。
  • ssl_ciphers HIGH:!aNULL:!MD5;:指定加密套件,排除不安全的算法。
  • ssl_prefer_server_ciphers on;:优先使用服务器端的加密套件。
  • location / { ... }:定义请求处理规则,如根目录和默认文件。

4. 注意事项

  • 确保 SSL 证书和私钥文件的路径正确,并且文件权限设置合理。
  • 定期更新 SSL 证书,避免证书过期导致服务中断。
  • 使用 nginx -t 命令测试配置文件语法是否正确,然后使用 systemctl reload nginx 重新加载配置。
纠错
反馈