1. 安装 Nginx

首先,确保你已经安装了 Nginx。你可以使用以下命令在基于 Ubuntu/Debian 的系统上安装:

1
2
sudo apt update
sudo apt install nginx

2. 配置 Nginx 网站创建一个新的配置文件:

创建一个新的配置文件:

1
sudo vi /etc/nginx/sites-available/your_domain.conf

添加以下配置内容:

1
2
3
4
5
6
7
8
9
10
11
12
server {
    listen 80;
    server_name your_domain.com www.your_domain.com;

    root /var/www/your_domain;
    #确保将 your_domain.com 替换为你的实际域名,并将 root 设置为你网站文件所在的路径。
    index index.html index.htm index.nginx-debian.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

启用配置并重启 Nginx:

1
2
3
sudo ln -s /etc/nginx/sites-available/your_domain.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

3. 安装 SSL 证书

使用 Let’s Encrypt 提供的免费 SSL 证书可以通过 Certbot 实现。首先安装 Certbot 和 Nginx 插件:

1
sudo apt install certbot python3-certbot-nginx

4. 申请 SSL 证书

运行以下命令,Certbot 会自动修改你的 Nginx 配置文件以添加 SSL 支持。安装过程中会提示你选择是否将 HTTP 重定向到 HTTPS,建议选择重定向以确保流量的安全:

1
sudo certbot --nginx -d your_domain.com -d www.your_domain.com

5. 自动续期

Let’s Encrypt 的证书有效期为 90 天。为了自动续期,可以通过添加定时任务,执行证书自动续签。使用以下命令测试续期是否正常工作:

1
sudo certbot renew --dry-run

通过执行 crontab -e 命令,添加一条新的定时任务命令:

1
0 2 * * * certbot renew --quiet

作者 菜园君