温馨提示×

debian nginxssl证书在哪放

小樊
45
2026-09-26 21:09:41
栏目: 云计算

在 Debian 系统上,使用 Nginx 时,SSL 证书并没有强制必须放在某个目录,但最佳实践是放在以下标准位置:


✅ 推荐存放位置(标准做法)

证书文件

/etc/ssl/certs/

私钥文件

/etc/ssl/private/

⚠️ 私钥目录权限必须是 700,属主通常是 root:ssl-cert 或 root:root


✅ 常见实际用法(推荐)

很多人在 Debian + Nginx 中这样放:

/etc/nginx/ssl/
├── example.com.crt
├── example.com.key

然后在 Nginx 配置中引用:

server {
    listen 443 ssl;
    server_name example.com;

    ssl_certificate     /etc/nginx/ssl/example.com.crt;
    ssl_certificate_key /etc/nginx/ssl/example.com.key;
}

✅ Let’s Encrypt(certbot)默认位置

如果你用 certbot:

/etc/letsencrypt/live/example.com/
├── fullchain.pem
└── privkey.pem

Nginx 配置示例:

ssl_certificate     /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

⚠️ 权限注意事项(很重要)

私钥必须严格保护:

chmod 600 /etc/nginx/ssl/example.com.key
chown root:root /etc/nginx/ssl/example.com.key

如果 Nginx 启动报:

SSL_CTX_use_PrivateKey_file("...") failed

通常是 权限或路径错误。


✅ 总结建议

场景 推荐路径
自签 / 手动证书 /etc/nginx/ssl/
系统级证书 /etc/ssl/certs + /etc/ssl/private
Let’s Encrypt /etc/letsencrypt/live/

如果你是 刚配 SSL 报错了,可以把错误贴出来,我可以直接帮你改配置。

0 踩