• # 用acme.sh申请证书(含泛域名)


    用acme.sh申请证书(含泛域名)


    以下主要以阿里云dns api方式申请泛域名证书为例,其他请自己实践

    安装方法:
    https://github.com/acmesh-official/acme.sh

    支持的dns解析提供商:
    https://github.com/acmesh-official/acme.sh/wiki/dnsapi

    用法详解:
    https://github.com/acmesh-official/acme.sh/wiki/%E8%AF%B4%E6%98%8E

    1 申请证书:

    1.1 使用dns api方式申请证书(以阿里云dns为例)

    [root@t-deploy-10-1-203-177:~]# export Ali_Key="LTA232343243Id4X"
    [root@t-deploy-10-1-203-177:~]# export Ali_Secret="lvpS238u948539u053034050JJ4pn" 
    [root@t-deploy-10-1-203-177:~]# 
    [root@t-deploy-10-1-203-177:~]# 
    [root@t-deploy-10-1-203-177:~]# acme.sh --issue --dns dns_ali  -d gccc.cn -d *.gccc.cn
    [20231017日 星期二 14:04:36 +07] Using CA: https://acme.zerossl.com/v2/DV90
    [20231017日 星期二 14:04:36 +07] Create account key ok.
    [20231017日 星期二 14:04:36 +07] No EAB credentials found for ZeroSSL, let's get one
    [2023年 10月 17日 星期二 14:04:38 +07] Registering account: https://acme.zerossl.com/v2/DV90
    [2023年 10月 17日 星期二 14:04:42 +07] Registered
    [2023年 10月 17日 星期二 14:04:42 +07] ACCOUNT_THUMBPRINT='CaqZfrDFbArDY7XxcyjgKtFSG3EvdOdK72E_Gke'
    [2023年 10月 17日 星期二 14:04:42 +07] Creating domain key
    [2023年 10月 17日 星期二 14:04:42 +07] The domain key is here: /root/.acme.sh/gccc.cn_ecc/gccc.cn.key
    [2023年 10月 17日 星期二 14:04:42 +07] Multi domain='DNS:gccc.cn,DNS:*.gccc.cn'
    [2023年 10月 17日 星期二 14:04:42 +07] Getting domain auth token for each domain
    [2023年 10月 17日 星期二 14:04:49 +07] Getting webroot for domain='gccc.cn'
    [2023年 10月 17日 星期二 14:04:49 +07] Getting webroot for domain='*.gccc.cn'
    [2023年 10月 17日 星期二 14:04:49 +07] Adding txt value: C9s1s10cxiYtjs9c9sTgGcihbyawv0OW5AvFcZiLs5g for domain:  _acme-challenge.gccc.cn
    [2023年 10月 17日 星期二 14:04:54 +07] The txt record is added: Success.
    [2023年 10月 17日 星期二 14:04:54 +07] Adding txt value: Yuysn3yMTFdeAmUZZW0Rf1eiFXCCjjXfYJINwX45L60 for domain:  _acme-challenge.gccc.cn
    [2023年 10月 17日 星期二 14:05:00 +07] The txt record is added: Success.
    [2023年 10月 17日 星期二 14:05:00 +07] Let's check each DNS record now. Sleep 20 seconds first.
    [20231017日 星期二 14:05:21 +07] You can use '--dnssleep' to disable public dns checks.
    [20231017日 星期二 14:05:21 +07] See: https://github.com/acmesh-official/acme.sh/wiki/dnscheck
    [20231017日 星期二 14:05:21 +07] Checking gccc.cn for _acme-challenge.gccc.cn
    [20231017日 星期二 14:05:23 +07] Domain gccc.cn '_acme-challenge.gccc.cn' success.
    [20231017日 星期二 14:05:23 +07] Checking gccc.cn for _acme-challenge.gccc.cn
    [20231017日 星期二 14:05:24 +07] Domain gccc.cn '_acme-challenge.gccc.cn' success.
    [20231017日 星期二 14:05:24 +07] All success, let's return
    [2023年 10月 17日 星期二 14:05:24 +07] Verifying: gccc.cn
    [2023年 10月 17日 星期二 14:05:25 +07] Processing, The CA is processing your order, please just wait. (1/30)
    [2023年 10月 17日 星期二 14:05:31 +07] Success
    [2023年 10月 17日 星期二 14:05:31 +07] Verifying: *.gccc.cn
    [2023年 10月 17日 星期二 14:05:32 +07] Processing, The CA is processing your order, please just wait. (1/30)
    [2023年 10月 17日 星期二 14:05:37 +07] Success
    [2023年 10月 17日 星期二 14:05:37 +07] Removing DNS records.
    [2023年 10月 17日 星期二 14:05:37 +07] Removing txt: C9s1s10cxiYtjs9c9sTgGcihbyawv0OW5AvFcZiLs5g for domain: _acme-challenge.gccc.cn
    [2023年 10月 17日 星期二 14:05:44 +07] Removed: Success
    [2023年 10月 17日 星期二 14:05:44 +07] Removing txt: Yuysn3yMTFdeAmUZZW0Rf1eiFXCCjjXfYJINwX45L60 for domain: _acme-challenge.gccc.cn
    [2023年 10月 17日 星期二 14:05:51 +07] Removed: Success
    [2023年 10月 17日 星期二 14:05:51 +07] Verify finished, start to sign.
    [2023年 10月 17日 星期二 14:05:51 +07] Lets finalize the order.
    [2023年 10月 17日 星期二 14:05:51 +07] Le_OrderFinalize='https://acme.zerossl.com/v2/DV90/order/1ync1anZoV2eaUxXFKJ3Iw/finalize'
    [2023年 10月 17日 星期二 14:05:54 +07] Order status is processing, lets sleep and retry.
    [2023年 10月 17日 星期二 14:05:54 +07] Retry after: 15
    [2023年 10月 17日 星期二 14:06:10 +07] Polling order status: https://acme.zerossl.com/v2/DV90/order/1ync1anZoV2eaUxXFKJ3Iw
    [2023年 10月 17日 星期二 14:06:11 +07] Downloading cert.
    [2023年 10月 17日 星期二 14:06:11 +07] Le_LinkCert='https://acme.zerossl.com/v2/DV90/cert/0nvnf-_7DEQA2qEN2oA8rw'
    [20231017日 星期二 14:06:13 +07] Cert success.
    -----BEGIN CERTIFICATE-----
    MIIEAzCCA4mgAwIBAgIRAMmWuGOlbvX1iuU5pu7OZs0wCgYIKoZIzj0EAwMwSzEL
    MAkGA1UEBhMCQVQxEDAOBgNVBAoTB1plcm9TU0wxKjAoBgNVBAMTIVplcm9TU0wg
    RUNDIERvbWFpbiBTZWN1cmUgU2l0ZSBDQTAeFw0yMzEwMTcwMDAwMDBaFw0yNDAx
    MTUyMzU5NTlaMBUxEzARBgNVBAMTCmdjLWxpZmUuY24wWTATBgcqhkjOPQIBBggq
    hkjOPQMBBwNCAAQ93/BwV3RV+pFKQM9kDIPI4YeAQ6h7zLYSK4cLVwPzh1RB8lht
    zkToUH7MAOE04MsL19ZzJOiEx0DN6ZbZkXaNo4ICgjCCAn4wHwYDVR0jBBgwFoAU
    D2vmS845R672fpAeefAwkZLIX6MwHQYDVR0OBBYEFHWYDlRNjglfOgD2PCNa8yoL
    Z6O4MA4GA1UdDwEB/wQEAwIHgDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsG
    AQUFBwMBBggrBgEFBQcDAjBJBgNVHSAEQjBAMDQGCysGAQQBsjEBAgJOMCUwIwYI
    KwYBBQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMAgGBmeBDAECATCBiAYI
    KwYBBQUHAQEEfDB6MEsGCCsGAQUFBzAChj9odHRwOi8vemVyb3NzbC5jcnQuc2Vj
    dGlnby5jb20vWmVyb1NTTEV220RvbWFpblNlY3VyZVNpdGVDQS5jcnQwKwYIKwYB
    BQUHMAGGH2h0dHA6Ly96ZXJvc3NsLm9jc3Auc2VjdGlnby5jb20wggECBgorBgEE
    AdZ5AgQCBIHzBIHwAO4AdQBss4g/Crb7lVHCYcz1h7o0tKTNuyncaEIKn+ZnTFo6
    dAAAAYs8dJBdAAAEAwBGMEQCIFKtFwFRLSSagF0crT4kHDGO/a/B9+dSP2mG30pc
    48GnAiBEVad89HKonMBYhIYKxmC8KTcO80GeOJsBE9Y/DR2OIAB1ANq2v2s/tbYi
    n5vCu1xr6HCRcWy7UYSFNL2kPTBI1/urAAABizx0kMkAAAQDAEYwRAIgBZnx+yKN
    Ulu5RIWHAsdAxiNomn2IzlxX2ioFSWRxrEQCIAfC/EZwCipTtR84H3XHD4wCbgSu
    mrtkTck6q/+upjnDMCMGA1UdEQQcMBqCCmdjLWxpZmUuY26CDCouZ2MtbGlmZS5j
    bjAKBggqhkjOPQQDAwNoADBlAjBu4CII1xsZCYaT7LhS7eorKbaTqWcy3XGTaiac
    t49cGPe5tJquJGOvyZuh9EOn8ysCMQCwb6SzCH1jyR51F22G9Sn5QARzfP5mYrdx
    0UqKYgayJnzrUoknCDES9YWxx8IsTgQ=
    -----END CERTIFICATE-----
    [20231017日 星期二 14:06:13 +07] Your cert is in: /root/.acme.sh/gccc.cn_ecc/gccc.cn.cer
    [20231017日 星期二 14:06:13 +07] Your cert key is in: /root/.acme.sh/gccc.cn_ecc/gccc.cn.key
    [20231017日 星期二 14:06:13 +07] The intermediate CA cert is in: /root/.acme.sh/gccc.cn_ecc/ca.cer
    [20231017日 星期二 14:06:13 +07] And the full chain certs is there: /root/.acme.sh/gccc.cn_ecc/fullchain.cer
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77

    1.2 附加:也可以用其他方式申请证书

    # A、使用指定webroot目录方式:
    acme.sh --issue -d mydomain.com                     --webroot /wwwroot/mydomain.com/
    acme.sh --issue -d mydomain.com -d www.mydomain.com --webroot /wwwroot/www.mydomain.com/    #-- 指定多个域名
    
    # B、使用自动寻找webroot目录方式:
    acme.sh --issue -d www.mydomain.com --nginx
    
    # C、使用独立方式(一般用于还没有web服务的初始化阶段)
    # 如果你还没有运行任何 web 服务, 80 端口是空闲的, 那么 acme.sh 还能假装自己是一个webserver, 临时听在80 端口, 完成验证:
    acme.sh --issue -d mydomain.com --standalone
    
    # D、使用手动dns方式
    acme.sh --issue --dns -d mydomain.com \
     --yes-I-know-dns-manual-mode-enough-go-ahead-please
    # 添加指定 txt 记录,等待解析完成之后, 重新生成证书:
    acme.sh --renew -d mydomain.com \
      --yes-I-know-dns-manual-mode-enough-go-ahead-please
    # 注:这种方式不能自动renew证书
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    2 续签证书:

    acme.sh --renew --dns dns_ali  -d gccc.cn -d *.gccc.cn
    
    • 1

    自动创建的计划任务会自动续签吧,这个应该不需要

    这是自动创建的计划任务:

    36 20 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
    
    • 1

    3 查看证书

    [root@t-deploy-10-1-203-177:~]# acme.sh --list
    Main_Domain  KeyLength  SAN_Domains   CA           Created               Renew
    gccc.cn   "ec-256"   *.gccc.cn  ZeroSSL.com  2023-10-17T07:06:13Z  2023-12-15T07:06:13Z
    
    • 1
    • 2
    • 3

    4 安装证书:

    [root@t-deploy-10-1-203-177:~]# mkdir /srv/certs/gccc.cn
    [root@t-deploy-10-1-203-177:~]# 
    [root@t-deploy-10-1-203-177:~]# acme.sh --install-cert  -d gccc.cn -d *.gccc.cn  --key-file /srv/certs/gccc.cn/gccc.cn.key  --cert-file /srv/certs/gccc.cn/gccc.cn.cer  --fullchain-file /srv/certs/gccc.cn/gccc.cn-fullchain.cer  --reloadcmd "scp -r /srv/certs/gccc.cn root@10.1.203.179:/srv/certs/" 
    [20231017日 星期二 15:03:17 +07] The domain 'gccc.cn' seems to have a ECC cert already, lets use ecc cert.
    [20231017日 星期二 15:03:17 +07] Installing cert to: /srv/certs/gccc.cn/gccc.cn.cer
    [20231017日 星期二 15:03:17 +07] Installing key to: /srv/certs/gccc.cn/gccc.cn.key
    [20231017日 星期二 15:03:17 +07] Installing full chain to: /srv/certs/gccc.cn/gccc.cn-fullchain.cer
    [20231017日 星期二 15:03:17 +07] Run reload cmd: scp -r /srv/certs/gccc.cn root@10.1.203.179:/srv/certs/
    gccc.cn.cer                                                                                                                                              100% 1452     1.2MB/s   00:00    
    gccc.cn-fullchain.cer                                                                                                                                    100% 4120     4.7MB/s   00:00    
    gccc.cn.key                                                                                                                                              100%  227   262.3KB/s   00:00    
    [20231017日 星期二 15:03:17 +07] Reload success
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    5 最后

    img

    爱你!

  • 相关阅读:
    k8s搭建EFK日志系统
    Windows IOCP相关资料
    【云原生之Docker实战】使用Docker部署OrangeHRM人力资源管理系统
    【多线程】创建线程池有几种方式
    你必须要掌握的大数据计算技术,都在这了
    亚马逊云科技的AI新引擎,如何助力企业应对“乌卡时代”?
    IO 作业 24/2/26
    【Leetcode刷题Python】高效求递归中函数的调用次数(动态规划方法,顺丰笔试题)
    基于 elementUI / elementUI plus,实现 主要色(主题色)的一件换色(换肤)
    工业互联网安全备受关注,防御体系该如何建设?
  • 原文地址:https://blog.csdn.net/zhf_sy/article/details/133941056