环境:

免费通配符HTTPS证书网址:

https://letsencrypt.org/

1.下载证书申请工具

[root@centos ~]# mkdir /opt/letsencrypt -p

[root@centos ~]# cd /opt/letsencrypt

[root@centos ~]# wget https://dl.eff.org/certbot-auto

[root@centos ~]# chmod u+x certbot-auto

2.申请证书 (注意提供的域名 *.domain.com)

[root@centos ~]# ./certbot-auto --server https://acme-v02.api.letsencrypt.org/directory --manual --preferred-challenges dns-01 certonly -d "*.domain.com"

需要下载多个依赖包,完成后,需要根据提示提供信息

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator manual, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): user@mail.com

-------------------------------------------------------------------------------
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
-------------------------------------------------------------------------------
(A)gree/(C)ancel: A

-------------------------------------------------------------------------------
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about EFF and
our work to encrypt the web, protect its users and defend digital rights.
-------------------------------------------------------------------------------
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
dns-01 challenge for jooylife.cn

-------------------------------------------------------------------------------
NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.

Are you OK with your IP being logged?
-------------------------------------------------------------------------------
(Y)es/(N)o: Y

-------------------------------------------------------------------------------
Please deploy a DNS TXT record under the name
_acme-challenge.domain.com with the following value:

GcOWiMJRp7DjbG0m855SU1dWxwgL16zDiqQjOJwKNdY

Before continuing, verify the record is deployed.
-------------------------------------------------------------------------------
Press Enter to Continue

到这里,先不要继续,必须先到域名解析平台,添加DNS TXT记录

域名解析设置

记录类型:TXT
主机记录:_acme-challenge.domain.com
解析线路:
记录值:GcOWiMJRp7DjbG0m855SU1dWxwgL16zDiqQjOJwKNdY
TTL值:10分钟

设置后,需要确认更新成功 (dig命令需要安装 bind-utils)

[root@centos ~]# yum install bind-utils -y
[root@centos ~]# dig _acme-challenge.domain.com txt

如果成功读取到值,则代表设置成功

Before continuing, verify the record is deployed.
-------------------------------------------------------------------------------
Press Enter to Continue

回车继续证书生成

查看证书信息

[root@centos ~]# cd /opt/letsencrypt

[root@centos ~]# ./certbot-auto certificates

查看生成证书文件

[root@centos ~]# ll /etc/letsencrypt/live/domain.com

查看证书更新到期信息

[root@centos ~]# cat /etc/letsencrypt/renewal/domain.com.conf

复制证书到指定目录

[root@centos ~]#mkdir /data/ssl -p

[root@centos ~]#cp /etc/letsencrypt/live/domain.com/fullchain.pem /data/ssl

[root@centos ~]#cp /etc/letsencrypt/live/domain.com/privkey.pem /data/ssl

[root@centos ~]#chown -R www:www fullchain.pem

[root@centos ~]#chown -R www:www privkey.pem

设置NGINX,让网站使用https证书

[root@centos ~]#cd /opt/nginx/conf/vhosts/

[root@centos ~]#vim www.domain.com.conf

server {
    server_name www.domain.com;
    listen 443 ssl;
    ssl on;
    ssl_certificate /data/ssl/fullchain.pem;
    ssl_certificate_key /data/ssl/privkey.pem;
 
    location / {
      proxy_pass http://www.baidu.com;
    }
}

证书手动更新 (30天内到期才可以更新)

[root@centos ~] cd /opt/letsencrypt

[root@centos ~] certbot-auto renew

配置证书自动更新

[root@centos ~] cd /opt/letsencrypt

[root@centos ~] vim renew-hook.sh

#
##! /bin/bash
##

mv /data/ssl/fullchain.pem /data/ssl/fullchain.pem.old
mv /data/ssl/privkey.pem /data/ssl/privkey.pem.old
cp /etc/letsencrypt/live/domain.com/fullchain.pem /data/ssl
cp /etc/letsencrypt/live/domain.com/privkey.pem /data/ssl
chown -R www:www /data/ssl/fullchain.pem
chown -R www:www /data/ssl/privkey.pem
systemctl restart nginx
echo "At $(date +%D) $(date +%T) Finish renew https certs && restart nginx."

保存

[root@centos ~] chmod +x renew-hook.sh

[root@centos ~] crontab -e

# 每月1日的凌晨3点就会执行一次所有域名的续期操作
00 03 01 * * /opt/letsencrypt/certbot-auto renew --renew-hook "/opt/letsencrypt/renew-hook.sh" 1>>/data/crond/ntpdate.log 2>&1

*********************************************************************************************************************************************

# 每月1号5时执行执行一次更新,并重启nginx服务器
00 05 01 * * /opt/letsencrypt/certbot-auto renew ---quiet && systemctl restart nginx

#/bin/sh
#续期说明:只用renew的话,会先检查证书是否需要更新,大概是距离到期还有三天或者十几天之内才会执行更新,否则会提示不需要更新。(昨天更新了证书,今天直接用renew,提示不允许更新)
#这里方便测试,增加参数--force-renew,能够强制立即更新(但好像也会有检查,时间会变短,比如我刚才更新过了,马上再次执行会报错并提示不需要更新)。
./certbot-auto renew --force-renew

*********************************************************************************************************************************************

HTTPS性能评估网站:

https://www.ssllabs.com/ssltest/

https://www.upyun.com/https

Centos7 通配符HTTPS证书申请 实测 笔记的更多相关文章

  1. 新版startssl 免费SSL证书申请 (实测 笔记 https http2 必要条件)

    简单说明: 目前多个大型网站都实现全站HTTPS,而SSL证书是实现HTTPS的必要条件之一. StartSSL是StartCom公司旗下的.提供免费SSL证书服务并且被主流浏览器支持的免费SSL.包 ...

  2. HTTPS证书申请相关笔记

    申请免费的HTTPS证书相关资料 参考资料: HTTPS 检测 苹果ATS检测 什么是ECC证书? 渠道2: Let's Encrypt 优点 缺点 Let's Encrypt 的是否支持非80,44 ...

  3. Nginx 学习笔记(九)申请Let's Encrypt通配符HTTPS证书

    Let's Encrypt 宣布 ACME v2 正式支持通配符证书,并将继续清除 Web 上采用 HTTPS 的障碍,让每个网站轻松获取管理证书.消息一出,马上就有热心用户分享出了 Let's En ...

  4. Let's Encrypt 免费通配符 SSL 证书申请教程——但是也需要email,域名所有权等,如果是黑产用的话会这样用吗?会不会暴露自己身份???

    Let's Encrypt 免费通配符 SSL 证书申请教程 from:https://blog.csdn.net/English0523/article/details/79608464 2018 ...

  5. 项目总结20:阿里云免费https证书申请

    项目总结20:阿里云免费https证书申请 1. 登录阿里云控制台 www.aliyun.com,用账户信息登录 2. 在”产品与服务”搜索SSL,选择SSL证书 3. 点击购买证书 4. 选择” S ...

  6. linux免费https证书申请教程

    linux免费https证书申请教程直接去阿里云 菜单有个证书服务进去有个购买证书菜单 选择免费的 然后会提示写个人资料 然后系统生成csr 然后提交审核这个时候会有份邮件 文件下载上传到你的服务器 ...

  7. 申请 Let's Encrypt 通配符 HTTPS 证书

    目录 一.背景知识 1.1.什么是通配符证书 1.2.什么是 Let's Encrypt 二.证书申请(certbot) 2.1.系统确定 2.2.工具安装 2.3.证书申请 2.4.证书查看 2.5 ...

  8. https证书申请

     因为要为海外组的aws设置https证书,由于使用的是新的域名,所以要先申请购买证书,然后设置上去.由于是第一次做这件事.所以过程有些坎坷.      先购买https证书.看了几家,感觉GoDad ...

  9. 微信小程序之后台https域名绑定以及免费的https证书申请

    微信小程序在11月3号发布了,这是一个全新的生态,没有赶上微信公众号红利的开发者,运营者可别错过这趟车了. 但是微信的后台需要全https,之前我还不相信,后台注册了后进后台才发现,服务器配置如下图 ...

随机推荐

  1. git知识总结-4.git服务器搭建及迁移git仓库

    1. 前言 因为手里有一份代码之前是直接从其它git服务器上克隆下来的,现在想自己搭建一个git服务器把这份代码管起来. 2. 搭建git服务器 1.安装git: $ sudo apt-get ins ...

  2. Linux input系统数据上报流程【转】

    转自:https://segmentfault.com/a/1190000017255939 作为鸡生蛋系列文章,这里主要关注Linux input系统,主要为触摸事件上报流程. 读该文章最好有对li ...

  3. ASP.NET Core 项目配置 ( Startup )(转载)

    原文:https://www.twle.cn/l/yufei/aspnetcore/dotnet-aspnet-startup.html 由于是个人网站,怕没了,特意复制保存,个人觉得讲的非常透彻 前 ...

  4. 实验一《Java开发环境的熟悉》_实验报告

    实验一<Java开发环境的熟悉>_实验报告 一.实验内容与主要步骤 1.Linux系统命令行下java程序开发 实验要求 1 建立"自己学号exp1"的目录 2 在&q ...

  5. 论文阅读笔记四十八:Bounding Box Regression with Uncertainty for Accurate Object Detection(CVPR2019)

    论文原址:https://arxiv.org/pdf/1809.08545.pdf github:https://github.com/yihui-he/KL-Loss 摘要 大规模的目标检测数据集在 ...

  6. php 通过curl header传值

    下面是自己整理的通过curl  header传值 方式是post $url = 'http://www.***.com';//此处为传值需要访问的地址 $header = array('token:J ...

  7. Java使用线程池

    多线程主函数 package UnitTest; import java.util.ArrayList; import java.util.List; import java.util.concurr ...

  8. Win10 iot 修改日期时间

    发现树莓派的日期是错的 iot 下可以使用 Set-Date 来设置日期和时间 文档:https://docs.microsoft.com/en-us/previous-versions/window ...

  9. 559. Maximum Depth of N-ary Tree

    https://leetcode.com/problems/maximum-depth-of-n-ary-tree/description/ 非常简单的题目,连edge case 都没有.思路就是:最 ...

  10. eclipse使用lombok简化java代码

    可以利用注解来代替getter.setter.toString.hashCode.构造方法等,简化代码开发. 具体用法 https://www.cnblogs.com/qnight/p/8997493 ...