通配符 ssl,通配符证书申请免费

  通配符 ssl,通配符证书申请免费

  众所周知从某些公司购买安全超文本传输协议证书,一个域名每年都要几千个大洋(不是一般的黑)。那么有没有免费,答案是有。现隆重推荐(

Let’s Encrypt 免费证书

)

  雇主联合会电子前哨基金会、Mozilla基金会和美国密歇根大学成立了一个公益组织叫ISRG(互联网安全研究小组)、这个组织从2015 年开始推出了让我们加密免费证书。这个免费证书不仅免费,而且还相当好用,所以我们就可以利用让我们加密提供的免费证书部署安全超文本传输协议了。

  让我们加密证书除了免费,还支持域名通配符或泛域名。好东西必须分享,走起。

  

准备工作

  安装下载

  以centos7为例

  下载的官方网站是https://certbot.eff.org/,打开这个链接选择自己使用的网络服务器和操作系统,EFF官方会给出详细的使用方法。

  

下载certbot

  https://dl.eff.org/certbot-autochmod自动机器人注意:也可采用下载官方妙的安装方式

  

申请通配符域名

。/cert bot-auto certon ly-d *。举例。com-manual-preferred-challenges DNS-server https://acme-v02.api.letsencrypt.org/directory当然你也可以将多个泛域名,放到一个证书里(亲测可行),将example.com换成你自己的域名。/cert bot-auto certon ly-d *。举例。com-d *。a . com-manual-preferred-challenges DNS-server https://acme-v02.api.letsencrypt.org/directory这里我只用了一个泛域域名

  执行以上命令得到如下

  依次输入你的邮箱

  再输入" A "同意,“Y”开始

  最后出现如下图,

此处先不动,很重要

  

配置DNS

  要求配置域名服务器(Domain Name Server)文本记录,从而校验域名所有权,也就是判断证书申请者是否有域名的所有权。

  给_acme-challenge.example.com配置一条文本文件(文本文件)记录。

  以阿里云上的域名为例,添加一条文本文件(文本文件)记录:

测试txt记录是否生效

  $ dig-t txt _ acme-challenge。举例。com @ 8。8 .8 .8;选择伪截面:EDNS:版本:0,标志:UDP:512;问题部分:_ acme-挑战。举例。com。在TXT中;回答部分:_ acme-挑战。举例。com。599英寸长 KD 9 kdjjxh 8 nyz 2 uneviibw 52 lhiqxkg 6 I 9 mcwsrvhq 确认生效后,回车执行,输出如下:

  恭喜您,证书申请成功,证书和密钥保存在下列目录:

  ll/etc/let加密/live/example。com lrwxrwxrwx 1 root root 35 Jun 1 14:43 cert。PEM-././存档/对尼娅。com/cert 1。pemlrwxrwxrwx 1根36 Jun 1 14:43链。PEM-././存档/对尼娅。com/chain 1。pemlrwxrwxrwx 1根40 Jun 1 14:43全链条。PEM-././存档/对尼娅。com/全链1。pemlrwxrwxrwx 1 root 38 Jun 1 14:43 privkey。PEM-././存档/对尼娅。com/privkey 1。PrivacyEnhancedMail增强的私密电子邮件然后校验证书信息,输入如下命令:

  OpenSSL x509-在/etc/lets中加密/存档/示例。com/cert 1。PEM-noout-text如果输出中有

  X509v3主题替代名称:DNS:*.example.com证明成功

  也可以同过。/证书机器人-自动证书

  

配置Nginx

  服务器{服务器名www.example.com;监听443 http2 sslssl打开;SSL _ certificate/etc/lets encrypt/live/example。com/全链条。PEMSSL _ certificate _ key/etc/let加密/live/example。com/privkey。PEM# access _ log日志/主机。访问。日志总管;root/var/www/demo;位置/{索引index.htmlindex.htmindex.phpl.php;自动索引关闭;} #代理服务器端编程语言(Professional Hypertext Preprocessor的缩写)脚本到街头流氓监听127 . 0 . 0 . 1:80 # #地点~ .PHP $ { # proxy _ pass http://127。0 .0 .1;#} #将服务器端编程语言(Professional Hypertext Preprocessor的缩写)脚本传递给FastCGI服务器监听127.0.0.1:9000 #位置~ 。php(.*)$ { fastcgi _ pass 127。0 .0 .1:9000;fastcgi _ index index.php;fastcgi _ param SCRIPT _ FILENAME $ document _ root $ fastcgi _ SCRIPT _ name;包括fastcgi _ params} }

证书续期

  一般让我们加密证书有效期为3个月,如果想续期执行如下命令。/certbot-auto renew如果太麻烦,可以把它写进一个定时任务,每天执行一次。

  crontab-e00 * * */root/tar/cert bot-auto renew-renew-hook system CTL reload nginx 续费说明:如果只使用renew,会先检查证书是否需要续费,大概会在到期前三、十天,否则会提示不需要续费。(昨天更新了证书,今天直接用renew,提示不允许更新)

  注意:人有时候会头晕。例如,你不放开443端口,想访问HTTPS网站。

  错误解决方案

  如果执行续订,则

  ReadTimeoutError:https connection pool(host= files . python hosted . org ,port=443):读取超时。

  这是由于pip下载国内站点超时或限制造成的,可以通过配置pip.conf解决

  Vim /root/。pip/pip . conf # content[global]time out=6000 index-URL=http://e.pypi.python.org/simpletrusted-host=pypi.douban.com。同时推荐一个好的开源项目,可以免费获得HTTPS证书。易于安装和自动更新。

  https://github.com/Neilpang/acme.sh

通配符 ssl,通配符证书申请免费