参考:https://github.com/Neilpang/acme.sh/wiki/How-to-issue-a-cert

这种方法官方是不推荐的,不能自动续期(即需要手动续签)

acme.sh的DNS手动模式生成证书

应该需要一个有公网ip的机器,至少我是这样,回头我再考证一下。

2018年12月10日测试:可以在虚拟机上使用,不需要公网IP

一、安装

curl https://get.acme.sh | sh

二、确保服务器的nginx和apache没有运行,别占用80端口(DNS手动模式不需要)

三、动手

命令就一行,出现了报错,要求在dns解析里加入两行txt解析

root@david-test:~/.acme.sh# acme.sh --issue -d bombstory.com -d *.bombstory.com --dns dns-01
[Wed Dec  5 11:58:54 UTC 2018] Multi domain='DNS:bombstory.com,DNS:*.bombstory.com'
[Wed Dec  5 11:58:54 UTC 2018] Getting domain auth token for each domain
[Wed Dec  5 11:58:56 UTC 2018] Getting webroot for domain='bombstory.com'
[Wed Dec  5 11:58:56 UTC 2018] Getting webroot for domain='*.bombstory.com'
[Wed Dec  5 11:58:57 UTC 2018] Can not find dns api hook for: dns-01
[Wed Dec  5 11:58:57 UTC 2018] You need to add the txt record manually.
[Wed Dec  5 11:58:57 UTC 2018] Add the following TXT record:
[Wed Dec  5 11:58:57 UTC 2018] Domain: '_acme-challenge.bombstory.com'
[Wed Dec  5 11:58:57 UTC 2018] TXT value: 'nuV36UCKAvU3KiWLFkAxNIQAVahmmnC5witMoOrk7MQ'
[Wed Dec  5 11:58:57 UTC 2018] Please be aware that you prepend _acme-challenge. before your domain
[Wed Dec  5 11:58:57 UTC 2018] so the resulting subdomain will be: _acme-challenge.bombstory.com
[Wed Dec  5 11:58:57 UTC 2018] Can not find dns api hook for: dns-01
[Wed Dec  5 11:58:57 UTC 2018] You need to add the txt record manually.
[Wed Dec  5 11:58:57 UTC 2018] Add the following TXT record:
[Wed Dec  5 11:58:57 UTC 2018] Domain: '_acme-challenge.bombstory.com'
[Wed Dec  5 11:58:57 UTC 2018] TXT value: 'HKXRN73W33CZnDCsUgXxCDDrgsn5xMagUPaMZl4yjkU'
[Wed Dec  5 11:58:57 UTC 2018] Please be aware that you prepend _acme-challenge. before your domain
[Wed Dec  5 11:58:57 UTC 2018] so the resulting subdomain will be: _acme-challenge.bombstory.com
[Wed Dec  5 11:58:57 UTC 2018] Please add the TXT records to the domains, and re-run with --renew.
[Wed Dec  5 11:58:57 UTC 2018] Please add '--debug' or '--log' to check more details.
[Wed Dec  5 11:58:57 UTC 2018] See: https://github.com/Neilpang/acme.sh/wiki/How-to-debug-acme.sh

四、解析DNS

如下图:

五、稍等一会儿,再次执行命令,这次执行后面要加--renew参数

root@david-test:~/.acme.sh# acme.sh --issue -d bombstory.com -d *.bombstory.com --dns dns-01 --renew
[Wed Dec  5 12:02:09 UTC 2018] Renew: 'bombstory.com'
[Wed Dec  5 12:02:10 UTC 2018] Multi domain='DNS:bombstory.com,DNS:*.bombstory.com'
[Wed Dec  5 12:02:10 UTC 2018] Getting domain auth token for each domain
[Wed Dec  5 12:02:10 UTC 2018] Verifying:bombstory.com
[Wed Dec  5 12:02:14 UTC 2018] Success
[Wed Dec  5 12:02:14 UTC 2018] Verifying:*.bombstory.com
[Wed Dec  5 12:02:17 UTC 2018] Pending
[Wed Dec  5 12:02:20 UTC 2018] Success
[Wed Dec  5 12:02:20 UTC 2018] Verify finished, start to sign.
[Wed Dec  5 12:02:22 UTC 2018] Cert success.
-----BEGIN CERTIFICATE-----
......此处省略一大段无用输出......
-----END CERTIFICATE-----
[Wed Dec  5 12:02:22 UTC 2018] Your cert is in  /root/.acme.sh/bombstory.com/bombstory.com.cer
[Wed Dec  5 12:02:22 UTC 2018] Your cert key is in  /root/.acme.sh/bombstory.com/bombstory.com.key
[Wed Dec  5 12:02:22 UTC 2018] The intermediate CA cert is in  /root/.acme.sh/bombstory.com/ca.cer
[Wed Dec  5 12:02:22 UTC 2018] And the full chain certs is there:  /root/.acme.sh/bombstory.com/fullchain.cer 

六、其中,需要用到的文件有两个:

一个key:/root/.acme.sh/bombstory.com/bombstory.com.key

一个证书:/root/.acme.sh/bombstory.com/fullchain.cer


2018年12月10日更新

使用DNS手动模式生成的证书续签:

一、两条DNS解析记录别删

二、该证书是4天前做的,还有85天

ops@zabbix2:~$ zabbix_get -s 127.0.0.1 -k https.remaining[bombstory.com]
85

三、手动续签:

root@david-test:~/.acme.sh# acme.sh --renew -d bombstory.com --force
[Mon Dec 10 05:14:54 UTC 2018] Renew: 'bombstory.com'
[Mon Dec 10 05:14:55 UTC 2018] Multi domain='DNS:bombstory.com,DNS:*.bombstory.com'
[Mon Dec 10 05:14:55 UTC 2018] Getting domain auth token for each domain
[Mon Dec 10 05:14:57 UTC 2018] Getting webroot for domain='bombstory.com'
[Mon Dec 10 05:14:57 UTC 2018] Getting webroot for domain='*.bombstory.com'
[Mon Dec 10 05:14:57 UTC 2018] bombstory.com is already verified, skip dns-01.
[Mon Dec 10 05:14:57 UTC 2018] *.bombstory.com is already verified, skip dns-01.
[Mon Dec 10 05:14:57 UTC 2018] Verify finished, start to sign.
[Mon Dec 10 05:15:00 UTC 2018] Cert success.
-----BEGIN CERTIFICATE-----
......
-----END CERTIFICATE-----
[Mon Dec 10 05:15:00 UTC 2018] Your cert is in  /root/.acme.sh/bombstory.com/bombstory.com.cer
[Mon Dec 10 05:15:00 UTC 2018] Your cert key is in  /root/.acme.sh/bombstory.com/bombstory.com.key
[Mon Dec 10 05:15:00 UTC 2018] The intermediate CA cert is in  /root/.acme.sh/bombstory.com/ca.cer
[Mon Dec 10 05:15:00 UTC 2018] And the full chain certs is there:  /root/.acme.sh/bombstory.com/fullchain.cer
root@david-test:~/.acme.sh# sz /root/.acme.sh/bombstory.com/fullchain.cer

四、替换证书文件,reload nginx

root@bombstory:/etc/nginx/ssl# ls -l
total 12
-rw-r--r-- 1 root root 1675 Dec  5 19:51 bombstory.com.key
-rw-r--r-- 1 root root 3575 Dec 10 13:15 fullchain.cer
-rw-r--r-- 1 root root 3575 Dec  5 20:02 fullchain.cerbak
root@bombstory:/etc/nginx/ssl# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
root@bombstory:/etc/nginx/ssl# nginx -s reload

五、再次查看,成功

ops@zabbix2:~$ zabbix_get -s 127.0.0.1 -k https.remaining[bombstory.com]
89

第一次使用acme.sh 手动生成证书(DNS手动模式)相关推荐

  1. acme.sh使用阿里云DNS申请Let’s Encrypt的https证书

    环境: centos7 前置条件: 域名(在阿里云购买一个最低的域名即可) acme 脚本 阿里云云账号AccessKey ID和AccessKey Secret(参考阿里云官方文档进行申请)如何获取 ...

  2. 使用 acme.sh 获取网站证书并配置https访问

    目录 1. 安装 acme.sh 2. 生成证书 1. 安装 acme.sh 安装很简单, 一个命令: curl https://get.acme.sh | sh 普通用户和 root 用户都可以安装 ...

  3. acme云服务器生成证书_如何让docker 部署的nginx上通过acme.sh安装ssl/https 证书

    本篇文章是教大家如何在docker部署的nginx上通过acme.sh安装ssl/https 证书. 由于文中例子是通过acme.sh的http验证方式生成证书,所以在此之前,必须保证你的网站能通过h ...

  4. acme.sh 申请通配符证书

    acme.sh 申请通配符证书 docker中nginx为例 1. 不要忘记nginx的端口,映射80的同时还有443 ssl的端口 2. 安装socat sudo apt-get install s ...

  5. kubernetes V1.10.4 集群部署 (手动生成证书)

    说明:本文档涉及docker镜像,yaml文件下载地址 链接:https://pan.baidu.com/s/1QuVelCG43_VbHiOs04R3-Q 密码:70q2 本文只是作为一个安装记录 ...

  6. acme云服务器生成证书_使用 acme.sh 申请 SSL 证书并且定期自动更新

    在我们的实际项目生产过程中往往需要为部署的服务和域名配置 SSL 证书,可以采用的方法有很多种,例如可以申请阿里云的免费 SSL 证书,或者也可以使用 CloudFlare 的 SSL 服务.本文介绍 ...

  7. Acme.sh 自动生成、续期 ​Let‘s Encrypt 免费SSL证书

    ​​Let's Encrypt 提供了90天免费证书,而 acme.sh 实现了 acme 协议, 可以从 ​​Let's Encrypt 生成免费的证书.,通过计划任务可实现自动续期,自动部署,完全 ...

  8. centos7利用acme.sh+cloudflare生成ssl通配符证书

    #安装acme.sh curl https://get.acme.sh | sh#安装目录为: /root/.acme.sh/#然后执行以下命令:cd /root/.acme.sh/#换为你的cf的k ...

  9. 使用acme.sh配置https证书

    想使用免费的https证书怎么办?想自动给证书续期怎么办? Let's Encrypt 是一家免费.开放.自动化的证书颁发机构(CA),为公众的利益而运行. 它是一项由 Internet Securi ...

最新文章

  1. 2021年大数据HBase(六):HBase的高可用!【建议收藏】
  2. limbo可以运行linux,这次真的了,安卓手机可以安装 Windows 10 了
  3. c++11 智能指针 unique_ptr、shared_ptr与weak_ptr
  4. httpclient 小例子编写
  5. NIUDAY 11.23 北京站抢票啦 | 看 AI 落地行业 享 AI 时代红利
  6. SDH光端机的应用介绍
  7. 13岁的儿子早恋了,心思都不用在学习上,我要怎么帮助他?
  8. Oracle全备增量备份脚本,ORACLE-RMAN:备份脚本(全库,增量)
  9. 20210224:力扣第229周周赛
  10. 求生之路2联机服务器没有响应,求生之路2联机卡,为什么求生之路2联机进不去...
  11. MemCache详细介绍
  12. 【答疑】对象存储OSS常见问题解答(SDK类2)
  13. 382.链表随机节点
  14. 如何系统嗯学习计算机知识,老师,非科班出身的人该怎么系统的学习计算机知识呢?...
  15. Asp.Net MVC4入门指南(7):给电影表和模型添加新字段
  16. 我的世界javamod怎么装_我的世界MOD安装方法图文教程_我的世界MOD怎么安装_牛游戏网...
  17. 如何短期通过PMP考试?
  18. 我国无线2.4g及5g信道-个人笔记
  19. html5qq授权登陆,php 第三方登陆接入qq互联
  20. Python实战:导出QQ聊天记录生成词云看看你和你的女友聊了什么

热门文章

  1. outlook电子邮件解析_放大Outlook 2007中的电子邮件
  2. 小白:从0开始捣鼓Ubuntu(中文输入法)
  3. java long 空_long类型判断是否为空
  4. 传统的6d位姿估计fangfa1_6D姿态估计算法汇总(上)
  5. Cg学习记录002 之Uniform参数
  6. 用Biome-BGC模型如何模拟水循环过程
  7. linux下查看文件编码
  8. 计算机基础应用资料,计算机应用基础复习资料(带答案).doc
  9. veket linux输入法,智能通用输入法平台(SCIM for veket)
  10. 数据的正态分布验证和方差齐性检验