RELATEED CONSULTING
相关咨询
欢迎选择下列在线客服咨询
微信客服
微信客服二维码
热线电话:13863516421
7x24小时,全年无休
我们服务器的承诺:
关闭右侧工具栏

境外国外服务器专题

如何配置Nginx服务器以使用Let's Encrypt证书?

  • 来源:本站
  • 编辑: 超级管理员
  • 时间:2025-06-21 14:12:32
  • 阅读0次


在 Nginx 服务器上配置 Let's Encrypt 证书需要确保证书路径正确、SSL 参数优化,并设置 HTTP 到 HTTPS 的强制跳转。以下是详细配置步骤:

一、准备工作

确认证书已成功申请

Let's Encrypt 证书文件默认存放在:

plaintext

/etc/letsencrypt/live/你的域名/fullchain.pem  # 证书链(含网站证书和中间证书)

/etc/letsencrypt/live/你的域名/privkey.pem   # 私钥


备份现有 Nginx 配置

bash

sudo cp /etc/nginx/conf.d/你的域名.conf /etc/nginx/conf.d/你的域名.conf.bak


二、配置 Nginx 支持 HTTPS

1. 编辑 Nginx 配置文件

bash

sudo nano /etc/nginx/conf.d/你的域名.conf

2. 配置 HTTPS 服务器块

添加以下内容(替换你的域名为实际域名):


nginx

server {

    listen 443 ssl http2;

    server_name 你的域名 www.你的域名;

    

    # 证书配置

    ssl_certificate /etc/letsencrypt/live/你的域名/fullchain.pem;

    ssl_certificate_key /etc/letsencrypt/live/你的域名/privkey.pem;

    

    # SSL/TLS优化配置(可选但推荐)

    ssl_protocols TLSv1.3 TLSv1.2;  # 仅支持现代协议

    ssl_prefer_server_ciphers on;

    ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384";

    ssl_session_cache shared:SSL:10m;

    ssl_session_timeout 1d;

    ssl_session_tickets off;

    

    # HSTS头部(强制HTTPS,生产环境建议启用)

    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

    

    # 网站根目录

    root /var/www/html;  # 根据实际情况修改

    index index.html index.htm;

    

    # 其他配置(如PHP解析、日志等)

    location / {

        try_files $uri $uri/ =404;

    }

}

3. 配置 HTTP 到 HTTPS 的重定向

在同一配置文件中添加以下 HTTP 服务器块:


nginx

server {

    listen 80;

    server_name 你的域名 www.你的域名;

    return 301 https://$host$request_uri;  # 强制跳转HTTPS

}

三、配置验证与重载 Nginx

检查配置语法

bash

sudo nginx -t

# 若输出 "syntax is ok" 和 "test is successful",则配置正确


重载 Nginx 服务

bash

sudo systemctl reload nginx


四、验证 HTTPS 配置

浏览器访问测试

打开 https://你的域名,检查:

地址栏是否显示安全锁标志(Chrome/Edge)或 “安全” 标签(Firefox)。

无混合内容警告(可通过开发者工具 → 控制台查看)。

SSL Labs 测试

访问 SSL Server Test,输入域名检测:

评级应为 A- 或更高。

无协议漏洞(如 POODLE、BEAST 等)。

五、优化配置建议

1. OCSP Stapling(提升连接速度)

在 HTTPS 服务器块中添加:


nginx

ssl_stapling on;

ssl_stapling_verify on;

resolver 8.8.8.8 8.8.4.4 valid=300s;  # Google DNS,可替换为其他公共DNS

resolver_timeout 5s;

2. 禁用 TLS 1.0/1.1(可选)

仅保留 TLSv1.3 TLSv1.2 以提升安全性,但需确保客户端兼容性。

3. 启用 HTTP/2(已在配置中包含)

listen 443 ssl http2; 可显著提升网站性能。

六、常见问题排查

1. 浏览器仍显示 “不安全”

原因:

证书路径错误或权限不足。

存在混合内容(如 HTTPS 页面加载 HTTP 资源)。

解决:

检查证书文件路径和权限(确保 Nginx 用户有权读取)。

使用浏览器开发者工具 → 网络面板,排查 HTTP 资源并替换为 HTTPS。

2. Nginx 无法启动 / 重载

原因:

配置语法错误。

端口冲突(如 443 端口被其他程序占用)。

解决:

检查 nginx -t 输出的错误信息。

使用 ss -tulpn | grep :443 检查端口占用情况。


通过以上配置,Nginx 服务器将安全地使用 Let's Encrypt 证书提供 HTTPS 服务,并具备良好的性能和安全性。


我们提供7X24小时售后服务,了解更多机房产品和服务,敬请联系
购买咨询 售后服务