在客户端软件接收到 Let's Encrypt 证书后,具体配置 Web 服务器使用新证书的步骤如下,以下以 Apache 和 Nginx 常用的配置为例:
### 对于 Apache:
1. 在 Apache 服务器上,您需要编辑 SSL 配置文件。这个文件的位置可能根据操作系统不同而有所不同,常见的路径是 `/etc/apache2/sites-available/default-ssl.conf` 或者 `/etc/httpd/conf.d/ssl.conf`。
2. 在 SSL 配置文件中,您需要设置 `SSLCertificateFile` 和 `SSLCertificateKeyFile` 指令来指向您的证书文件和私钥文件。如果使用了 Certbot,它通常会把证书和私钥存放在 `/etc/letsencrypt/live/yourdomain.com/` 目录下。您还需要设置 `SSLCertificateChainFile`(对于 Apache 2.4.8 以前的版本)或 `SSLCACertificateFile` 指令来指向 Let's Encrypt 的中间证书。
```apache
<VirtualHost *:443>
ServerName yourdomain.com
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/yourdomain.com/chain.pem
DocumentRoot /var/www/html
# ... 其他设置 ...
</VirtualHost>
```
3. 保存文件,然后重新加载 Apache 配置使更改生效。这可以通过运行以下命令来完成:
```bash
sudo systemctl reload apache2
```
或对于旧的系统:
```bash
sudo service apache2 reload
```
### 对于 Nginx:
1. 在 Nginx 中编辑服务器的配置文件。这个文件通常在 `/etc/nginx/sites-available/` 目录下,文件名通常与你的域名相关。
2. 在配置文件中的 server 块里,设置 `ssl_certificate` 和 `ssl_certificate_key` 指向您的证书文件和私钥文件。Certbot 会存放在 `/etc/letsencrypt/live/yourdomain.com/` 目录中。`ssl_certificate` 应该指向 `fullchain.pem` 文件,这个文件包含了您的证书和中间证书串联起来的内容。
```nginx
server {
listen 443 ssl http2;
server_name yourdomain.com;
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
root /usr/share/nginx/html;
index index.html index.htm;
# ... 其他设置 ...
}
```
3. 保存配置文件之后,测试 Nginx 配置文件是否有语法错误:
```bash
sudo nginx -t
```
4. 如果没有错误,重新加载 Nginx 使配置生效:
```bash
sudo systemctl reload nginx
```
或对于旧的系统:
```bash
sudo service nginx reload
```
请注意,如果使用 Certbot,它可能会自动为你做好这些配置更改,并设置定期续期任务。确保审查并理解配置文件中的任何自动生成的更改,并在进行任何修改后始终重新加载服务。