Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
Acme.Sh
Commits
d20831e4
Unverified
Commit
d20831e4
authored
Nov 15, 2016
by
Armando Lüscher
Browse files
Update DNS API readme
parent
1bb90298
Changes
1
Show whitespace changes
Inline
Side-by-side
dnsapi/README.md
View file @
d20831e4
# How to use
dns api
# How to use
DNS API
## 1. Use CloudFlare domain
api
to automatically issue cert
## 1. Use CloudFlare domain
API
to automatically issue cert
For now, we support clourflare integeration.
First you need to login to your clourflare account to get your api key.
First you need to login to your CloudFlare account to get your API key.
```
export CF_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export CF_Email="xxxx@sss.com"
```
Ok, let's issue cert now:
Ok, let's issue
a
cert now:
```
acme.sh --issue --dns dns_cf -d example.com -d www.example.com
```
The
`CF_Key`
and
`CF_Email`
will be saved in
`~/.acme.sh/account.conf`
, when next time you use cloudflare api, it will reuse this key.
The
`CF_Key`
and
`CF_Email`
will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed.
## 2. Use D
nsp
od.cn domain
api
to automatically issue cert
## 2. Use D
NSP
od.cn domain
API
to automatically issue cert
For now, we support dnspod.cn integeration.
First you need to login to your dnspod.cn account to get your api key and key id.
First you need to login to your DNSPod account to get your API Key and ID.
```
export DP_Id="1234"
export DP_Key="sADDsdasdgdsf"
```
Ok, let's issue cert now:
Ok, let's issue
a
cert now:
```
acme.sh --issue --dns dns_dp -d example.com -d www.example.com
```
The
`DP_Id`
and
`DP_Key`
will be saved in
`~/.acme.sh/account.conf`
, when next time you use dnspod.cn api, it will reuse this key.
The
`DP_Id`
and
`DP_Key`
will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed.
## 3. Use Cloudxns.com domain api to automatically issue cert
For now, we support
Cloud
xns
.com
integeration.
## 3. Use
Cloud
XNS
.com
domain API to automatically issue cert
First you need to login to your Cloud
xns.com
account to get your
api k
ey and
key s
ecret.
First you need to login to your Cloud
XNS
account to get your
API K
ey and
S
ecret.
```
export CX_Key="1234"
export CX_Secret="sADDsdasdgdsf"
```
Ok, let's issue cert now:
Ok, let's issue
a
cert now:
```
acme.sh --issue --dns dns_cx -d example.com -d www.example.com
```
The
`CX_Key`
and
`CX_Secret`
will be saved in
`~/.acme.sh/account.conf`
, when next time you use Cloudxns.com api, it
will reuse
this key
.
The
`CX_Key`
and
`CX_Secret`
will be saved in
`~/.acme.sh/account.conf`
and
will
be
reuse
d when needed
.
## 4. Use Go
d
addy.com domain
api
to automatically issue cert
## 4. Use Go
D
addy.com domain
API
to automatically issue cert
We support Godaddy integration.
First you need to login to your Godaddy account to get your api key and api secret.
First you need to login to your GoDaddy account to get your API Key and Secret.
https://developer.godaddy.com/keys/
Please Create a Production key, instead of a Test key.
Please create a Production key, instead of a Test key.
```
export GD_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export GD_Secret="asdfsdafdsfdsfdsfdsfdsafd"
```
Ok, let's issue cert now:
Ok, let's issue
a
cert now:
```
acme.sh --issue --dns dns_gd -d example.com -d www.example.com
```
The
`GD_Key`
and
`GD_Secret`
will be saved in
`~/.acme.sh/account.conf`
, when next time you use cloudflare api, it
will reuse
this key
.
The
`GD_Key`
and
`GD_Secret`
will be saved in
`~/.acme.sh/account.conf`
and
will
be
reuse
d when needed
.
## 5. Use PowerDNS embedded api to automatically issue cert
We support
PowerDNS embedded API
integration.
## 5. Use
PowerDNS embedded API
to automatically issue cert
First you need to
enable api
and set your
api-t
oken in
PowerDNS
configuration.
First you need to
login to your PowerDNS account to enable the API
and set your
API-T
oken in
the
configuration.
https://doc.powerdns.com/md/httpapi/README/
...
...
@@ -102,21 +83,21 @@ export PDNS_Url="http://ns.example.com:8081"
export PDNS_ServerId="localhost"
export PDNS_Token="0123456789ABCDEF"
export PDNS_Ttl=60
```
Ok, let's issue cert now:
Ok, let's issue
a
cert now:
```
acme.sh --issue --dns dns_pdns -d example.com -d www.example.com
```
The
`PDNS_Url`
,
`PDNS_ServerId`
,
`PDNS_Token`
and
`PDNS_Ttl`
will be saved in
`~/.acme.sh/account.conf`
.
The
`PDNS_Url`
,
`PDNS_ServerId`
,
`PDNS_Token`
and
`PDNS_Ttl`
will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed
.
## 6. Use OVH/kimsufi/soyoustart/runabove API
## 6. Use OVH/kimsufi/soyoustart/runabove API
to automatically issue cert
https://github.com/Neilpang/acme.sh/wiki/How-to-use-OVH-domain-api
## 7. Use nsupdate to automatically issue cert
First, generate a key for updating the zone
...
...
@@ -137,6 +118,7 @@ include "/etc/named/keys/update.key";
```
Next, configure your zone to allow dynamic updates.
Depending on your named version, use either
```
zone "example.com" {
...
...
@@ -153,18 +135,21 @@ zone "example.com" {
};
}
```
Finally, make the dns server and update key available to
`acme.sh`
Finally, make the DNS server and update Key available to
`acme.sh`
```
export NSUPDATE_SERVER=dns.example.com
export NSUPDATE_KEY=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa==
export NSUPDATE_SERVER=
"
dns.example.com
"
export NSUPDATE_KEY=
"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa==
"
```
Ok, let's issue cert now:
Ok, let's issue
a
cert now:
```
acme.sh --issue --dns dns_nsupdate -d example.com -d www.example.com
```
The
`NSUPDATE_SERVER`
and
`NSUPDATE_KEY`
settings will be saved in
`~/.acme.sh/account.conf`
.
The
`NSUPDATE_SERVER`
and
`NSUPDATE_KEY`
settings will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed.
## 8. Use LuaDNS domain API
...
...
@@ -172,17 +157,16 @@ Get your API token at https://api.luadns.com/settings
```
export LUA_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export LUA_Email="xxxx@sss.com"
```
To issue a cert:
```
acme.sh
--issue
--dns dns_lua
--dnssleep 3
-d example.com
-d www.example.com
acme.sh --issue --dns dns_lua -d example.com -d www.example.com
```
The
`LUA_Key`
and
`LUA_Email`
will be saved in
`~/.acme.sh/account.conf`
, and will be reused when needed.
The
`LUA_Key`
and
`LUA_Email`
will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed.
## 9. Use DNSMadeEasy domain API
...
...
@@ -190,27 +174,26 @@ Get your API credentials at https://cp.dnsmadeeasy.com/account/info
```
export ME_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export ME_Secret="qdfqsdfkjdskfj"
```
To issue a cert:
```
acme.sh
--issue
--dns dns_me
--dnssleep 3
-d example.com
-d www.example.com
acme.sh --issue --dns dns_me -d example.com -d www.example.com
```
The
`ME_Key`
and
`ME_Secret`
will be saved in
`~/.acme.sh/account.conf`
, and will be reused when needed.
The
`ME_Key`
and
`ME_Secret`
will be saved in
`~/.acme.sh/account.conf`
and will be reused when needed.
# 10. Use custom
api
# 10. Use custom
API
If your
api
is not supported yet,
you can write your own
dns api
.
If your
API
is not supported yet, you can write your own
DNS API
.
Let's assume you want to name it 'myapi'
,
Let's assume you want to name it 'myapi'
:
1.
Create a bash script named
`~/.acme.sh/dns_myapi.sh`
,
2.
In the script
,
you must have a function named
`dns_myapi_add()`
. W
hich will be called by acme.sh to add
dns
records.
3.
Then you can use your
api
to issue cert like:
2.
In the script you must have a function named
`dns_myapi_add()`
w
hich will be called by acme.sh to add
the DNS
records.
3.
Then you can use your
API
to issue cert like
this
:
```
acme.sh --issue --dns dns_myapi -d example.com -d www.example.com
...
...
@@ -218,11 +201,7 @@ acme.sh --issue --dns dns_myapi -d example.com -d www.example.com
For more details, please check our sample script:
[
dns_myapi.sh
](
dns_myapi.sh
)
# 11. Use lexicon dns api
https://github.com/Neilpang/acme.sh/wiki/How-to-use-lexicon-dns-api
## 11. Use lexicon DNS API
https://github.com/Neilpang/acme.sh/wiki/How-to-use-lexicon-dns-api
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment