API自动颁发证书
1.使用CloudFlare域首先,您需要登录您的CloudFlare帐户才能获取您的API密钥。
export CF_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export CF_Email="xxxx@sss.com"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_cf -d example.com -d www.example.com
该CF_Key
和CF_Email
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
DNSPod.cn域名API自动颁发证书
2.使用首先,您需要登录您的DNSPod帐户才能获取您的API密钥和ID。
export DP_Id="1234"
export DP_Key="sADDsdasdgdsf"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_dp -d example.com -d www.example.com
该DP_Id
和DP_Key
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
注:DNSPod现在采用Token 调用API,具体调用办法:
https://www.lizi.tw/soft/5051.html
3.使用CloudXNS.com域API自动颁发证书
首先,您需要登录您的CloudXNS帐户才能获取您的API密钥和秘密。
export CX_Key="1234"
export CX_Secret="sADDsdasdgdsf"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_cx -d example.com -d www.example.com
该CX_Key
和CX_Secret
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
4.使用GoDaddy.com域API自动颁发证书
首先,您需要登录您的GoDaddy帐户才能获得您的API密钥和秘密。
https://developer.godaddy.com/keys/
请创建一个生产密钥,而不是测试密钥。
export GD_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export GD_Secret="asdfsdafdsfdsfdsfdsfdsafd"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_gd -d example.com -d www.example.com
该GD_Key
和GD_Secret
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
5.使用PowerDNS嵌入式API自动颁发证书
首先,您需要登录PowerDNS帐户才能启用该API并在配置中设置您的API令牌。
https://doc.powerdns.com/md/httpapi/README/
export PDNS_Url="http://ns.example.com:8081"
export PDNS_ServerId="localhost"
export PDNS_Token="0123456789ABCDEF"
export PDNS_Ttl=60
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_pdns -d example.com -d www.example.com
的PDNS_Url
,PDNS_ServerId
,PDNS_Token
和PDNS_Ttl
将被保存~/.acme.sh/account.conf
,需要时会被重用。
6.使用OVH / kimsufi / soyoustart / runabove API自动颁发证书
https://github.com/Neilpang/acme.sh/wiki/How-to-use-OVH-domain-api
7.使用nsupdate自动发出证书
首先,生成更新区域的密钥
b=$(dnssec-keygen -a hmac-sha512 -b 512 -n USER -K /tmp foo)
cat > /etc/named/keys/update.key <<EOF
key "update" {
algorithm hmac-sha512;
secret "$(awk '/^Key/{print $2}' /tmp/$b.private)";
};
EOF
rm -f /tmp/$b.{private,key}
将此密钥包含在您的命名配置中
include "/etc/named/keys/update.key";
接下来,将您的区域配置为允许动态更新。
取决于您的命名版本,请使用其中一种
zone "example.com" {
type master;
allow-update { key "update"; };
};
要么
zone "example.com" {
type master;
update-policy {
grant update subdomain example.com.;
};
}
最后,让DNS服务器和更新密钥可用 acme.sh
export NSUPDATE_SERVER="dns.example.com"
export NSUPDATE_KEY="/path/to/your/nsupdate.key"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_nsupdate -d example.com -d www.example.com
在NSUPDATE_SERVER
和NSUPDATE_KEY
设置将被保存在~/.acme.sh/account.conf
需要的时候将被重用。
8.使用LuaDNS域名API
通过https://api.luadns.com/settings获取您的API令牌
export LUA_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export LUA_Email="xxxx@sss.com"
颁发证书:
acme.sh --issue --dns dns_lua -d example.com -d www.example.com
该LUA_Key
和LUA_Email
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
9.使用DNSMadeEasy域名API
通过https://cp.dnsmadeeasy.com/account/info获取您的API凭据
export ME_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export ME_Secret="qdfqsdfkjdskfj"
颁发证书:
acme.sh --issue --dns dns_me -d example.com -d www.example.com
该ME_Key
和ME_Secret
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
10.使用Amazon Route53域API
https://github.com/Neilpang/acme.sh/wiki/How-to-use-Amazon-Route53-API
export AWS_ACCESS_KEY_ID=XXXXXXXXXX
export AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXXXX
颁发证书:
acme.sh --issue --dns dns_aws -d example.com -d www.example.com
该AWS_ACCESS_KEY_ID
和AWS_SECRET_ACCESS_KEY
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
11.使用Aliyun域名API自动颁发证书
首先,您需要登录您的Aliyun帐户才能获取您的API密钥。 https://ak-console.aliyun.com/#/accesskey
export Ali_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export Ali_Secret="jlsdflanljkljlfdsaklkjflsa"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_ali -d example.com -d www.example.com
该Ali_Key
和Ali_Secret
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
12.使用ISPConfig 3.1 API
这只适用于ISPConfig 3.1(和更新版本)。
在ISPConfig控制面板中创建一个远程用户。远程用户至少必须有权访问DNS zone functions
和DNS txt functions
。
export ISPC_User="xxx"
export ISPC_Password="xxx"
export ISPC_Api="https://ispc.domain.tld:8080/remote/json.php"
export ISPC_Api_Insecure=1
如果您在另一个端口上安装了ISPConfig,请相应地更改8080。如果您的安装没有有效的ssl证书,则Leaver ISPC_Api_Insecure设置为1。如果您拥有有效的ssl证书,请将其更改为0。
颁发证书:
acme.sh --issue --dns dns_ispconfig -d example.com -d www.example.com
的ISPC_User
,ISPC_Password
,ISPC_Api
和ISPC_Api_Insecure
将被保存~/.acme.sh/account.conf
,需要时会被重用。
13.使用Alwaysdata域名API
首先,您需要登录您的Alwaysdata帐户才能获取您的API密钥。
导出 AD_API_KEY = “ myalwaysdataapikey ”
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_ad -d example.com -d www.example.com
在AD_API_KEY
将保存在~/.acme.sh/account.conf
需要的时候将被重用。
14.使用Linode域名API
首先,您需要登录您的Linode帐户才能获得您的API密钥。 https://manager.linode.com/profile/api
然后添加一个标签为ACME的API密钥并复制新密钥。
export LINODE_API_KEY = “ ... ”
由于DNS记录中任何更改的重新载入时间,我们必须使用该dnssleep
选项等待至少15分钟才能使更改生效。
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_linode --dnssleep 900 -d xsz.tw -d www.xsz.tw
在LINODE_API_KEY
将保存在~/.acme.sh/account.conf
需要的时候将被重用。
15.使用FreeDNS
FreeDNS(https://freedns.afraid.org/)不提供更新DNS记录的API(IPv4和IPv6动态DNS地址除外)。acme.sh插件因此通过登录到FreeDNS网站来读取并更新域TXT记录来读取HTML并将更新发布为HTTP。该插件需要知道FreeDNS网站的用户名和密码。
export FREEDNS_User = “ ... ”
export FREEDNS_Password = “ ... ”
您只需在第一次使用FreeDNS验证运行acme.sh客户端时提供此信息,然后在FreeDNS站点上更改密码时再次提供此信息。acme.sh FreeDNS插件不存储您的用户标识或密码,而是保存FreeDNS返回的认证标记,~/.acme.sh/account.conf
并在需要时重新使用它。
现在您可以颁发证书。
acme.sh --issue --dns dns_freedns -d example.com -d www.example.com
请注意,对于FreeDNS公共域或您在FreeDNS公共域下创建的子域,不能使用acme.sh自动DNS验证。您必须拥有顶级域名才能在FreeDNS中使用acme.sh自动验证。
16.使用cyon.ch
你只需要设置你的cyon.ch登录凭证。如果您还启用了2因子身份验证(OTP),则需要设置您的秘密令牌并已oathtool
安装。
export CY_Username="your_cyon_username"
export CY_Password="your_cyon_password"
export CY_OTP_Secret="your_otp_secret" # Only required if using 2FA
颁发证书:
acme.sh --issue --dns dns_cyon -d example.com -d www.example.com
这个CY_Username
,CY_Password
并且CY_OTP_Secret
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
17.使用Domain-Offensive / Reseller界面/ Domainrobot API
您需要将您的登录凭证(合作伙伴ID +密码)加入经销商界面,并在运行之前导出它们acme.sh
:
export DO_PID="KD-1234567"
export DO_PW="cdfkjl3n2"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_do -d lizi.tw -d www.lizi.tw
18.使用Gandi LiveDNS API
您必须先启用新的Gandi LiveDNS API并创建您的api密钥,请参阅:http ://doc.livedns.gandi.net/
export GANDI_LIVEDNS_KEY="fdmlfsdklmfdkmqsdfk"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_gandi_livedns -d example.com -d www.example.com
19.使用结(knsupdate)DNS API自动颁发证书
首先,生成用于更新区域的TSIG密钥。
keymgr tsig generate -t acme_key hmac-sha512 > /etc/knot/acme.key
将此密钥包含在结配置文件中。
include: /etc/knot/acme.key
接下来,将您的区域配置为允许动态更新。
该区域的动态更新可通过适当的ACL规则与update
动作来实现。有关详细说明,请参阅结DNS的文档。
acl:
- id: acme_acl
address: 192.168.1.0/24
key: acme_key
action: update
zone:
- domain: example.com
file: example.com.zone
acl: acme_acl
最后,让DNS服务器和TSIG密钥可用 acme.sh
export KNOT_SERVER="dns.example.com"
export KNOT_KEY=`grep \# /etc/knot/acme.key | cut -d' ' -f2`
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_knot -d example.com -d www.example.com
在KNOT_SERVER
和KNOT_KEY
设置将被保存在~/.acme.sh/account.conf
需要的时候将被重用。
20.使用DigitalOcean API(本机)
您需要从DigitalOcean帐户获取可读写的API密钥。请参阅:https : //www.digitalocean.com/help/api/
export DO_API_KEY="75310dc4ca779ac39a19f6355db573b49ce92ae126553ebd61ac3a3ae34834cc"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_dgon -d example.com -d www.example.com
21.使用ClouDNS.net API
您需要设置HTTP API用户标识和密码凭证。请参阅:https://www.cloudns.net/wiki/article/42/。出于安全原因,建议使用只能访问必要区域的子用户ID,因为常规API用户可以访问整个帐户。
# Use this for a sub auth ID
export CLOUDNS_SUB_AUTH_ID=XXXXX
# Use this for a regular auth ID
#export CLOUDNS_AUTH_ID=XXXXX
export CLOUDNS_AUTH_PASSWORD="YYYYYYYYY"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_cloudns -d example.com -d www.example.com
该CLOUDNS_AUTH_ID
和CLOUDNS_AUTH_PASSWORD
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
22.使用Infoblox API
首先,您需要在Infoblox设备上创建/获取API凭据。
export Infoblox_Creds="username:password"
export Infoblox_Server="ip or fqdn of infoblox appliance"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_infoblox -d example.com -d www.example.com
注意:此脚本将自动创建并删除临时txt记录。该Infoblox_Creds
和Infoblox_Server
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
23.使用VSCALE API
首先,您需要在设置面板上创建/获取API令牌。
VSCALE_API_KEY="sdfsdfsdfljlbjkljlkjsdfoiwje"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_vscale -d example.com -d www.example.com
24.使用Dynu API
首先,您需要从Dynu帐户创建/获取API凭据。请参阅:https://www.dynu.com/resources/api/documentation
export Dynu_ClientId="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
export Dynu_Secret="yyyyyyyyyyyyyyyyyyyyyyyyy"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_dynu -d example.com -d www.example.com
该Dynu_ClientId
和Dynu_Secret
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
25.使用DNSimple API
首先,您需要登录您的DNSimple帐户并生成新的oauth标记。
https://dnsimple.com/a/{your帐户ID} /帐户/ access_tokens
请注意,这是一个帐户令牌,而不是用户令牌。需要帐户令牌来推断account_id
使用的请求。用户令牌将无法确定要使用的正确帐户。
export DNSimple_OAUTH_TOKEN="sdfsdfsdfljlbjkljlkjsdfoiwje"
要颁发证书只需指定dns_dnsimple
API。
acme.sh --issue --dns dns_dnsimple -d example.com
在DNSimple_OAUTH_TOKEN
将保存在~/.acme.sh/account.conf
需要的时候将被重用。
如果您对此集成有任何问题,请将其报告至 https://github.com/pho3nixf1re/acme.sh/issues。
26.使用NS1.com API
export NS1_Key="fdmlfsdklmfdkmqsdfk"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_nsone -d example.com -d www.example.com
27.使用DuckDNS.org API
export DuckDNS_Token="aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
请注意,由于DuckDNS使用StartSSL作为他们的证书提供者,因此在颁发证书时可能需要使用–insecure:
acme.sh --insecure --issue --dns dns_duckdns -d mydomain.duckdns.org
有关问题,请报告https://github.com/raidenii/acme.sh/issues。
28.使用Name.com API
您需要在https://www.name.com/reseller/apply填写表格以申请API用户名和标记。
export Namecom_Username="testuser"
export Namecom_Token="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
现在您可以通过以下方式签发证书:
acme.sh --issue --dns dns_namecom -d example.com -d www.example.com
有关问题,请报告https://github.com/raidenii/acme.sh/issues。
29.使用Dyn Managed DNS API自动颁发证书
首先,登录您的Dyn Managed DNS帐户:https : //portal.dynect.net/login/
建议添加特定于API访问的新用户。
要求的最低“区域和记录权限”是:
RecordAdd
RecordUpdate
RecordDelete
RecordGet
ZoneGet
ZoneAddNode
ZoneRemoveNode
ZonePublish
将API用户凭据传递给环境:
export DYN_Customer="customer"
export DYN_Username="apiuser"
export DYN_Password="secret"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_dyn -d example.com -d www.example.com
这个DYN_Customer
,DYN_Username
并且DYN_Password
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
30.使用pdd.yandex.ru API
export PDD_Token="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
按照这些说明获取您的域的令牌https://tech.yandex.com/domain/doc/concepts/access-docpage/
acme.sh --issue --dns dns_yandex -d mydomain.example.org
有关问题,请报告https://github.com/non7top/acme.sh/issues。
31.使用Hurricane Electric
Hurricane Electric(https://dns.he.net/)没有API,因此只需设置您的登录凭证,如下所示:
export HE_Username="yourusername"
export HE_Password="password"
然后你可以发行你的证书:
acme.sh --issue --dns dns_he -d example.com -d www.example.com
在HE_Username
和HE_Password
设置将被保存在~/.acme.sh/account.conf
需要的时候将被重用。
请将任何问题报告给https://github.com/angel333/acme.sh或me@ondrejsimek.com。
32.使用UnoEuro API自动颁发证书
首先,您需要登录您的UnoEuro帐户才能获取您的API密钥。
export UNO_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export UNO_User="UExxxxxx"
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_unoeuro -d example.com -d www.example.com
该UNO_Key
和UNO_User
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
33.使用INWX
INWX提供一个 带有标准登录凭证的xmlrpc api,将它们设置为:
export INWX_User="yourusername"
export INWX_Password="password"
然后你可以用你的证书签发:
acme.sh --issue --dns dns_inwx -d example.com -d www.example.com
在INWX_User
和INWX_Password
设置将被保存在~/.acme.sh/account.conf
需要的时候将被重用。
34.用户Servercow API v1
从servercow控制中心创建一个新用户。不要忘记为这个用户激活DNS API。
export SERVERCOW_API_Username=username
export SERVERCOW_API_Password=password
现在你不能颁发证书:
acme.sh --issue --dns dns_servercow -d example.com -d www.example.com
两者,SERVERCOW_API_Username
并且SERVERCOW_API_Password
将被保存~/.acme.sh/account.conf
,需要时会被重用。
35.使用Namesilo.com API
您需要在https://www.namesilo.com/account_api.php上生成API密钥。 您可以选择将访问权限限制在此处的IP范围。
export Namesilo_Key="xxxxxxxxxxxxxxxxxxxxxxxx"
现在您可以通过以下方式签发证书:
acme.sh --issue --dns dns_namesilo --dnssleep 900 -d example.com -d www.example.com
36.使用autoDNS(InternetX)
InternetX提供 带有标准登录凭据的xml api,将它们设置为:
export AUTODNS_USER="yourusername"
export AUTODNS_PASSWORD="password"
export AUTODNS_CONTEXT="context"
然后你可以用你的证书签发:
acme.sh --issue --dns dns_autodns -d example.com -d www.example.com
的AUTODNS_USER
,AUTODNS_PASSWORD
并AUTODNS_CONTEXT
设置将被保存在~/.acme.sh/account.conf
需要的时候将被重用。
37.使用Azure DNS
您必须先创建一个服务主体。请参阅:如何使用Azure DNS
export AZUREDNS_SUBSCRIPTIONID="12345678-9abc-def0-1234-567890abcdef"
export AZUREDNS_TENANTID="11111111-2222-3333-4444-555555555555"
export AZUREDNS_APPID="3b5033b5-7a66-43a5-b3b9-a36b9e7c25ed"
export AZUREDNS_CLIENTSECRET="1b0224ef-34d4-5af9-110f-77f527d561bd"
然后你可以用你的证书签发:
acme.sh --issue --dns dns_azure -d example.com -d www.example.com
AZUREDNS_SUBSCRIPTIONID
,AZUREDNS_TENANTID
,AZUREDNS_APPID
和AZUREDNS_CLIENTSECRET
设置将被保存在~/.acme.sh/account.conf
需要的时候将被重用。
38.使用selectel.com(selectel.ru)域API自动颁发证书
首先,您需要登录您的帐户以获取API密钥:https://my.selectel.ru/profile/apikeys。
导出 SL_Key = “ sdfsdfsdfljlbjkljlkjsdfoiwje ”
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_selectel -d example.com -d www.example.com
在SL_Key
将保存在~/.acme.sh/account.conf
需要的时候将被重用。
39.使用zonomi.com域API自动颁发证书
首先,您需要登录到您的帐户以查找您的API密钥:http: //zonomi.com/app/dns/dyndns.jsp
您将在示例网址中找到您的API密钥:
https://zonomi.com/app/dns/dyndns.jsp ?host = example.com & api_key = 1063364558943540954358668888888888
export ZM_Key = “ 1063364558943540954358668888888888 ”
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_zonomi -d example.com -d www.example.com
在ZM_Key
将保存在~/.acme.sh/account.conf
需要的时候将被重用。
40.使用DreamHost DNS API
DNS API密钥可以在https://panel.dreamhost.com/?tree=home.api上创建。确保创建的密钥添加和删除privelages。
export DH_API_Key="<api key>"
acme.sh --issue --dns dns_dreamhost -d example.com -d www.example.com
‘DH_API_KEY’将被保存~/.acme.sh/account.conf
并在需要时重新使用。
41.使用DirectAdmin API
DirectAdmin接口具有它自己的让我们加密功能,但是此脚本可用于为不在DirectAdmin上托管的名称生成证书
用户必须提供登录数据和URL到DirectAdmin incl。港口。您可以创建只能访问的用户
- CMD_API_DNS_CONTROL
- CMD_API_SHOW_DOMAINS
通过使用登录密钥功能。另见https://www.directadmin.com/api.php和https://www.directadmin.com/features.php?id=1298
export DA_Api="https://remoteUser:remotePassword@da.domain.tld:8443"
export DA_Api_Insecure=1
设置DA_Api_Insecure
为1表示不安全,0表示安全 – >区别在于是否检查ssl证书的有效性(0)或是否接受(1)
好的,让我们现在发布一个证书:
acme.sh --issue --dns dns_da -d example.com -d www.example.com
该DA_Api
和DA_Api_Insecure
将被保存~/.acme.sh/account.conf
并且在需要时将被重用。
使用自定义API
如果你的API还不被支持,你可以编写你自己的DNS API。
假设你想命名为’myapi’:
- 创建一个名为bash的脚本
~/.acme.sh/dns_myapi.sh
, - 在脚本中,您必须有一个名为
dns_myapi_add()
acme.sh的函数来添加DNS记录。 - 然后你可以使用你的API来颁发这样的证书:
acme.sh --issue --dns dns_myapi -d example.com -d www.example.com
有关更多详细信息,请查看我们的示例脚本:dns_myapi.sh
请参阅:https: //github.com/Neilpang/acme.sh/wiki/DNS-API-Dev-Guide
使用词典DNS API
https://github.com/Neilpang/acme.sh/wiki/How-to-use-lexicon-dns-api
Ali_dns 申请ssl 出现问题 想请教一下
@king 1、阿里的账户
2、申请的时候域名需要填写你自己的。
其他好像没有什么地方需要调整的。
如果觉得不太好处理
建议绑定dnspod 在腾讯申请SSL 图形化界面,简单方便