在Debian系统上配置Nginx以使用SSL证书链,你需要按照以下步骤操作:
-
获取SSL证书:
- 通常,你会从证书颁发机构(CA)那里获得一个证书文件(例如
certificate.crt
)和一个私钥文件(例如private.key
)。 - 如果CA还提供了一个中间证书(Intermediate Certificate),你也需要获取它(例如
intermediate.crt
)。
- 通常,你会从证书颁发机构(CA)那里获得一个证书文件(例如
-
合并证书文件:
- 如果你有中间证书,你需要将它和你主证书合并到一个文件中。这通常是为了简化配置,因为Nginx只需要一个证书文件。
- 使用以下命令合并证书和中间证书:
cat intermediate.crt certificate.crt > fullchain.crt
- 这将创建一个名为
fullchain.crt
的新文件,其中包含你的证书和中间证书。
-
配置Nginx:
- 打开Nginx配置文件,通常位于
/etc/nginx/sites-available/yourdomain.com
。 - 在
server
块中,找到或添加以下SSL配置:server { listen 443 ssl; server_name yourdomain.com www.yourdomain.com; ssl_certificate /etc/ssl/certs/fullchain.crt; ssl_certificate_key /etc/ssl/private/private.key; # 其他SSL相关配置... location / { # 你的location配置... } }
- 确保
ssl_certificate
指向合并后的证书文件,ssl_certificate_key
指向你的私钥文件。
- 打开Nginx配置文件,通常位于
-
测试配置:
- 在重新加载Nginx之前,使用以下命令测试配置文件是否有语法错误:
nginx -t
- 如果测试通过,重新加载Nginx以应用更改:
systemctl reload nginx
- 在重新加载Nginx之前,使用以下命令测试配置文件是否有语法错误:
-
验证SSL配置:
- 使用SSL检查工具(如SSL Labs’ SSL Test)来验证你的SSL配置是否正确,以及是否正确安装了证书链。
请确保你的证书文件和私钥文件的权限设置正确,以防止未授权访问。通常,私钥文件的权限应该设置为600
:
chmod 600 /etc/ssl/private/private.key
按照这些步骤操作后,你的Debian系统上的Nginx服务器应该已经配置好了SSL证书链。