在Nginx中配置HTTPS并设置SSL协议,主要涉及以下几个步骤:

  1. 获取SSL证书:你需要从证书颁发机构(CA)获取SSL证书,包括公钥证书(.crt文件)和私钥(.key文件)。

  2. 配置Nginx

    • 打开Nginx的配置文件(通常位于/etc/nginx/nginx.conf/etc/nginx/sites-available/default)。

    • server块中配置SSL证书和私钥路径。

    • 设置SSL协议版本和加密套件。

  3. 设置SSL协议

    • 使用ssl_protocols指令指定支持的SSL/TLS协议版本,例如:

      ssl_protocols TLSv1.2 TLSv1.3;
    • 使用ssl_ciphers指令指定加密套件,例如:

      ssl_ciphers HIGH:!aNULL:!MD5;
  4. 重启Nginx:保存配置文件后,重启Nginx以使更改生效:

    sudo systemctl reload nginx

完整配置示例

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate /etc/ssl/certs/example.com.crt;
    ssl_certificate_key /etc/ssl/private/example.com.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    ssl_prefer_server_ciphers on;

    location / {
        root /var/www/html;
        index index.html;
    }
}

解释

  • ssl_certificate:指定SSL证书路径。

  • ssl_certificate_key:指定私钥路径。

  • ssl_protocols:指定支持的SSL/TLS协议版本。

  • ssl_ciphers:指定加密套件。

  • ssl_prefer_server_ciphers:优先使用服务器端的加密套件。

验证配置

可以使用以下命令验证Nginx配置是否正确:

sudo nginx -t

如果配置正确,重启Nginx后,你的站点将通过HTTPS提供服务。

本篇文章内容来源于:nginx配置https后如何设置ssl协议详细说明以及案例