1. Let's Encrypt

官方推荐 Let's Encrypt 用 certbot 实现

1.1. ubuntu nginx 配置 Let's Encrypt

certbot 官网 选择 nginx ubuntu版本,打开 Nginx on Ubuntu (other)

1.1.1. 安装依赖

$ wget https://dl.eff.org/certbot-auto
$ chmod a+x certbot-auto
$ ./certbot-auto

1.1.2. 模式选择

  • standalone 模式

这个模式虽然可以配置好服务器,但是以后Renew的时候,需要让服务停止一下,再启动

  • webroot 模式

这个模式需要指定服务根目录 --webroot-path 并在该目录下生成 .well-known 文件夹

  • nginx 模式

这个模式配置最简单,直接 ./certbot-auto --nginx 全部搞定,不过这是 alpha 版,使用前最好先备份 nginx 配置

1.1.3. nginx 模式

./certbot-auto --nginx
  • 配置路径 /var/lib/letsencrypt/etc/letsencrypt/

1.1.4. webroot 模式

创建证书

$ ./certbot-auto certonly

nginx启用443端口

新建一个443端口的server配置:

server {
        listen 443 ssl;
        listen [::]:443 ssl ipv6only=on;

        ssl_certificate /etc/letsencrypt/live/your.domain.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/your.domain.com/privkey.pem;
        ssl_trusted_certificate /etc/letsencrypt/live/your.domain.com/chain.pem;

        // ... other settings ...
}
nginx -s reload

现在就可以用 https 方式访问了

1.1.5. 自动更新证书

let's encrypt 证书有效期为 90 天,所以要定期更新,crontab -e 中添加

./certbot-auto renew

1.2. Reference

results matching ""

    No results matching ""