Nginx+certbot 实现泛域名的https证书

  1. yum -y install git
  2. git clone  https://github.com/certbot/certbot
  3. cd certbot
  4. ./certbot-auto certonly --preferred-challenges dns --manual -d *.huihuang.com --server https://acme-v02.api.letsencrypt.org/directory

注:*.huihuang.com 可以更改为任意使用域名

上述命令执行完以后会弹出以下框直接按Y继续:

 

 

接着出现以下框框,不要着急回车。

 

把红框中的字段复制下来,去dns域名解析添加一条txt解析,如下图:

 

 

解析完成以后再回车即可。

  1. 证书生成路径为: /etc/letsencrypt/live/jinyangpay.com/
  1. 生成dhparams:  openssl dhparam -out /etc/ssl/certs/dhparams.pem 2048     #这条命令必须在本机执行,如果迁移证书请重新执行该命令

7,配置nginx

upstream merch{

     server 119.123.138.97:8080 weight=1;

    #server 47.186.121.157:8040 weight=1;

   }

server {


    listen 80;

    server_name vip-boss.huiteng.com;
    return 302 https://$server_name$request_uri;
}

server {

    listen 80;
    server_name www.akddk.com;
    return 302 https://$server_name$request_uri;
}
server {
  listen 443 ssl;
  server_name vip-boss.sdfa.com www.jklaj.com;
  ssl_certificate /etc/letsencrypt/live/jinyangpay.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/jinyangpay.com/privkey.pem;
  ssl_dhparam /etc/ssl/certs/dhparams.pem;
  ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers HIGH:!aNULL:!MD5;
  access_log  /data/logs/merch/access.log  main;
  error_log  /data/logs/merch/error.log;
  location / {
      proxy_pass http://merch;
      proxy_connect_timeout 600;
      proxy_read_timeout 600;
      proxy_send_timeout 600;
      proxy_set_header   Cookie $http_cookie;
      proxy_set_header  X-Real-IP $remote_addr;
      proxy_http_version 1.1;
              }
}

至此https配置完成,这个证书支持任何子域名的使用。上面的域名自己改动哦,我已经改过域名和IP了!

 

把生成的证书放到你的服务器即可。该证书虽然免费,不过有效期只有三个月。你可以不断地申请证书。替换上去即可。 

【end】

posted on 2018-12-28 17:40  yeyu1314  阅读(425)  评论(0)    收藏  举报