使用 certbot 申请泛域名https证书
使用 certbot 申请泛域名https证书
Intro
Certbot 是一个基于 Let's Encrypt
的自动化申请证书的工具,支持的系统和web server也很多,详见 Certbot 官网
Certbot 有一些 dns 插件可以自动化的不需要手动设置 dns 等方式来验证域名的所属,但是基本是一些国外的大型 DNS 提供商的,针对国内的话通过DNS验证的话还是需要手动验证DNS记录,这里主要介绍手动验证,通过DNS插件自动验证请参考 certbot 官网
手动验证 DNS
安装 Certbot,具体步骤参考官网
$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository universe
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install certbot python-certbot-nginx
申请 HTTPS 证书
安装好 certbot 之后,在命令行中执行以下命令:
sudo certbot certonly -d "*.weihanli.xyz" -d weihanli.xyz --manual --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory
执行完命令之后会提示需要记录 IP 信息,需要同意不然不能继续申请
设置 DNS TXT 记录
按照提示,在自己的域名服务商那里添加或者修改 _ache-challenge 的 txt 记录,修改之后需要验证是否解析成功,验证方式详见后面,验证解析成功之后输入 Enter 键继续
证书申请成功
如果出现这样的提示就说明证书已经申请成功了
配置 web server
证书申请成功了就基本搞定了,有了证书之后就在服务器上配置一下就可以了
nginx 配置示例:
server {
listen 80;
listen 443;
ssl_certificate /etc/letsencrypt/live/weihanli.xyz/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/weihanli.xyz/privkey.pem;
if ($scheme = http) {
return 301 https://$host$request_uri;
}
server_name weihanli.xyz;
}
重新加载 web 服务器配置或者重新重启web服务器以加载新证书,这里以重新加载 nginx 配置为例
sudo nginx -s reload
验证 DNS TXT 记录
windows 系统上在命令行或 powershell 中执行以下命令:
nslookup -q=txt _acme-challenge.weihanli.xyz
Reference
- https://certbot.eff.org/
- https://blogs.technet.microsoft.com/rmilne/2015/09/11/how-to-use-nslookup-to-check-dns-txt-record/
- https://jingyan.baidu.com/article/fc07f98914db6c12fee51978.html
使用 certbot 申请泛域名https证书的更多相关文章
- Let's encrypt申请泛域名证书以及报错处理
申请泛域名证书的步骤请参考该链接地址: https://www.jianshu.com/p/df6d13187578 报错信息: No matching distribution found for ...
- Let'sEncrypt 免费通配符/泛域名SSL证书添加使用教程
Let'sEncrypt 免费通配符/泛域名SSL证书添加使用教程 通配符证书一般还是比较贵的一般最便宜的通配符证书5.60美元一年,只不过Let'sEncrypt的有效期是3个月,对于一般用户来说基 ...
- Let's encrypt申请泛域名证书
1.下载工具 wget https://dl.eff.org/certbot-auto chmod a+x ./certbot-auto 2.初始化 ./certbot-auto 3.获取证书(1) ...
- Nginx+certbot 实现泛域名的https证书
yum -y install git git clone https://github.com/certbot/certbot cd certbot ./certbot-auto certonly ...
- Let's Encrypt泛域名SSL证书申请
操作系统:CentOS 7 github:https://github.com/Neilpang/acme.sh 有中文说明: https://github.com/Neilpang/acme.sh ...
- startssl申请配置免费https证书
之前给业务配置都是在沃通上申请免费证书,而后通过反向代理层的Nginx进行https认证. 今天来了个新需求,要求域名直接解析至阿里云SLB.https配置需要通过阿里云的控制台部署这倒无所谓,只是在 ...
- Let’s Encrypt Wildcard 免费泛域名SSL证书获取安装
2018 年 1 月Let’s Encrypt CA 宣布免费提供通配符证书(Wildcard certificate).通配符证书是一种可被多个子域使用的公钥证书.这意味着,单个证书可用于提供多台服 ...
- [细节版]Let'sEncrypt 免费通配符/泛域名SSL证书添加使用教程
参考网址:https://lnmp.org/faq/letsencrypt-wildcard-ssl.html 使用的dns服务商:阿里云 , 更多服务商地址可见参考网址. 遇见的问题一. [Sat ...
- 查看域名https证书到期时间
1.通过域名获取: echo | openssl s_client -servername 域名 -connect 域名:443 2>/dev/null | openssl x509 -noou ...
随机推荐
- elasticsearch x-pack
elasticsearch-plugin.bat install x-pack D:\elasticsearch-5.5.3\bin>elasticsearch-plugin.bat insta ...
- Spring的两种任务调度Scheduled和Async
Spring提供了两种后台任务的方法,分别是: 调度任务,@Schedule 异步任务,@Async 当然,使用这两个是有条件的,需要在spring应用的上下文中声明<task:annotati ...
- MongoDB的安装启动及做成windows服务
直接上干货. 官网地址:https://www.mongodb.com/download-center?jmp=nav#community 点击图中链接进入所有版本的下载列表 我下载的是3.6.5版本 ...
- 浏览器中缓存Cache
在请求服务器资源时,服务器会将图片.网页文件等资源保存在客户端的临时文件夹中,称为缓存,当浏览器向服务器请求相同的资源时,如果与服务器版本一致,则从缓存读取 Cookie:服务器存放在 ...
- spawn-fcgi运行fcgiwrap
http://linuxjcq.blog.51cto.com/3042600/718002 标签:休闲 spawn-fcgi fcgiwarp fcgi 职场 原创作品,允许转载,转载时请务必以超链接 ...
- Yii整合ucenter实现单点登录
原文:http://www.php2.cc/article-1349-1.html 准备工作 1.下载ucenter源码,并安装好 2.下载ucenter开发源码,根据自己的项目下载对应版本(utf- ...
- python assert的作用
使用assert断言是学习python一个非常好的习惯,python assert 断言句语格式及用法很简单.在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件 ...
- python获取日期加减之后的日期
python语言中的datetime模块可以利用其中的方法获取不同的日期,比如获取当前日期.明天.昨天.上个月.下个月和明年.下面利用几个实例说明这些日期的获取方法,操作如下: 第一步,利用d ...
- 【codeforces 516B】Drazil and Tiles
题目链接: http://codeforces.com/problemset/problem/516/B 题解: 首先可以得到一个以‘.’为点的无向图,当存在一个点没有边时,无解.然后如果这个图边双联 ...
- 集群IPtables转发与防火墙
子网集群通过接入公网的服务器Iptables转发上网 1. 对iptables进行初始化工作 清空filter表 iptables -F 清空nat表 iptables -t nat -F 默认禁止所 ...