|
|
|
@ -112,10 +112,60 @@ 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`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Use OVH/kimsufi/soyoustart/runabove API
|
|
|
|
|
|
|
|
|
|
https://github.com/Neilpang/acme.sh/wiki/How-to-use-OVH-domain-api
|
|
|
|
|
|
|
|
|
|
## Use nsupdate to automatically issue cert
|
|
|
|
|
|
|
|
|
|
First, generate a key for updating the zone
|
|
|
|
|
```
|
|
|
|
|
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 this key in your named configuration
|
|
|
|
|
```
|
|
|
|
|
include "/etc/named/keys/update.key";
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Next, configure your zone to allow dynamic updates.
|
|
|
|
|
Depending on your named version, use either
|
|
|
|
|
```
|
|
|
|
|
zone "example.com" {
|
|
|
|
|
type master;
|
|
|
|
|
allow-update { key "update"; };
|
|
|
|
|
};
|
|
|
|
|
```
|
|
|
|
|
or
|
|
|
|
|
```
|
|
|
|
|
zone "example.com" {
|
|
|
|
|
type master;
|
|
|
|
|
update-policy {
|
|
|
|
|
grant update subdomain example.com.;
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
Finally, make the dns server and update key available to `acme.sh`
|
|
|
|
|
```
|
|
|
|
|
export NSUPDATE_SERVER=dns.example.com
|
|
|
|
|
export NSUPDATE_KEY=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa==
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Ok, let's issue 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`.
|
|
|
|
|
|
|
|
|
|
# Use custom api
|
|
|
|
|
|
|
|
|
|
If your api is not supported yet, you can write your own dns api.
|
|
|
|
|