使用certbot开启HTTPS

Deadline就是生产力,因为Chrome 50开始不允许不安全域名使用geolocation,所以不得不上https了。使用certbot简直将添加https变成了一件trivial的事情,但是因为我是自己编译安装的nginx,所以没有自动配置好nginx。如果使用yum安装nginx,应该只需要安装执行certbot即可。 安装certbot: yum -y install yum-utils yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional yum install certbot 执行certbot:certbot certonly --webroot -w {webroot} -d sub.domain.com -d domain.com 其中webroot指网站的根目录,-d为该目录的域名,可以有多个,可以有几组这样的-w,-d组合。 这个命令会有两个验证步骤:在你指定的webroot下放一个文件,在远端尝试访问这个文件,来确定你是否有这个网站的权限。所以你执行这个命令前要保证这个域名和指定的webroot是可以访问的,否则会遇到类似urn:acme:error:unauthorized :: The client lacks sufficient authorization :: Invalid response from http://sub.domain.com/.well-known/acme-challenge/longlonglonglonghash 的错误。这时你需要检查下你的web服务器的配置了。 接下来手动配置nginx。 生成ssl dhparam:openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048。 配置nginx: server { listen 443 http2 ssl; server_name example.com www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ######################################################################## # from https://cipherli.st/ # # and https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html # ######################################################################## ssl_protocols TLSv1 TLSv1.
Read more...