2020-07-09

网站配置https 教程

  1. 下载 certbot
    $ git clone https://github.com/certbot/certbot
    $ cd certbot
    $ ./certbot-auto –help
    解压打开执行就会有相关提示
  1. 生成免费证书
    ./certbot-auto certonly –webroot –agree-tos -v -t –email 邮箱地址 -w 网站根目录 -d 网站域名
    ./certbot-auto certonly –webroot –agree-tos -v -t –email xxxxx@gmail.com -w /path/to/your/web/root -d blog.wuxhqi.com

    例子:
    ./certbot-auto certonly –webroot –agree-tos -v -t –email xxxxx@gmail.com -w /data/www/wordpress -d blog.wuxhqi.com

    注意这里 默认会自动生成 /网站根目录/.well-known/acme-challenge,然后 shell 脚本会对应的访问 网站域名/.well-known/acme-challenge

    比如:我的域名是blog.wuxhqi.com那我就得保证域名下面的.well-known/acme-challenge/目录是可访问的

    如果返回正常就确认了你对这个网站的所有权,就能顺利生成
  1. 获取证书
    如果上面的步骤正常 shell 脚本会展示如下信息:

    – Congratulations! Your certificate and chain have been saved at
    /etc/letsencrypt/live/网站域名/fullchain.pem
  1. 生成 dhparams
    使用 openssl 工具生成 dhparams

    openssl dhparam -out /etc/ssl/certs/dhparams.pem 2048
  1. 配置 Nginx
    打开 nginx server 配置文件加入如下设置:

    listen 443

    ssl on;
    ssl_certificate /etc/letsencrypt/live/网站域名/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/网站域名/privkey.pem;
    ssl_dhparam /etc/ssl/certs/dhparams.pem;
    ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!MD5;
    然后重启 nginx 服务就可以了
  1. 强制跳转 https
    https 默认是监听 443 端口的,没开启 https 访问的话一般默认是 80 端口。如果你确定网站 80 端口上的站点都支持 https 的话加入下面的配件可以自动重定向到 https

    server {
    listen 80;
    server_name your.domain.com;
    return 301 https://$server_name$request_uri;
    }

下面是更简便的方法——来自《简书》(安小下

2012 wget https://dl.eff.org/certbot-auto
2013 ll
2014 ll -rt
2015 chmod a+x certbot-auto
2016 ll -rt
2017 service nginx stop
2018 ./certbot-auto certonly –standalone –email 你的邮箱 -d bbs.wuxhqi.com -d blog.wuxhqi.com
2019 service nginx start

最新方法
https://certbot.eff.org/lets-encrypt/ubuntuxenial-nginx

发表回复

Your email address will not be published. Required fields are marked *