Acme.sh如何使用DNS API 来获取SSL证书(下)

@Wen's  July 31, 2019

21.使用 ClouDNS.net API

您需要设置 HTTP API 用户标识和密码凭证。请参阅:https//www.cloudns.net/wiki/article/42/。出于安全原因,建议使用只能访问必要区域的子用户 ID,因为常规 API 用户可以访问整个帐户。

# Use this for a sub auth IDexport CLOUDNS_SUB_AUTH_ID=XXXXX# Use this for a regular auth ID#export CLOUDNS_AUTH_ID=XXXXXexport CLOUDNS_AUTH_PASSWORD="YYYYYYYYY"

好的,让我们现在发布一个证书:

acme.sh --issue --dns dns_cloudns -d example.com -d www.example.com

CLOUDNS_AUTH_IDCLOUDNS_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_CredsInfoblox_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_ClientIdDynu_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_dnsimpleAPI。

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 访问的新用户。

要求的最低“区域和记录权限”是:

RecordAddRecordUpdateRecordDeleteRecordGetZoneGetZoneAddNodeZoneRemoveNodeZonePublish

将 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_CustomerDYN_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_UsernameHE_Password设置将被保存在~/.acme.sh/account.conf需要的时候将被重用。

请将任何问题报告给https://github.com/angel333/acme.sh[email protected]

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_KeyUNO_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_UserINWX_Password设置将被保存在~/.acme.sh/account.conf需要的时候将被重用。

34.用户 Servercow API v1

从 servercow 控制中心创建一个新用户。不要忘记为这个用户激活DNS API

export SERVERCOW_API_Username=usernameexport 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_USERAUTODNS_PASSWORDAUTODNS_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_SUBSCRIPTIONIDAZUREDNS_TENANTIDAZUREDNS_APPIDAZUREDNS_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.phphttps://www.directadmin.com/features.php?id=1298

export DA_Api="https://remoteUser:[email protected]: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_ApiDA_Api_Insecure将被保存~/.acme.sh/account.conf并且在需要时将被重用。

使用自定义 API

如果你的 API 还不被支持,你可以编写你自己的 DNS API。

假设你想命名为’myapi’:

  1. 创建一个名为 bash 的脚本~/.acme.sh/dns_myapi.sh

  2. 在脚本中,您必须有一个名为dns_myapi_add()acme.sh 的函数来添加 DNS 记录。

  3. 然后你可以使用你的 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

转自感谢:https://www.lizi.tw/soft/5049.html


添加新评论