Commit graph

237 commits

Author SHA1 Message Date
Daniil Rutskiy
6cb9b249d2 selectel: getting sub-domain (#803) 2019-02-22 17:24:17 +01:00
Yoan Blanc
7cdfe9b36b exoscale: update library (#800) 2019-02-18 10:49:41 +01:00
Fernandez Ludovic
a8b2397631 chore: update golangci-lint. 2019-02-16 14:56:15 +01:00
Daniil Rutskiy
d891600a89 fix: TXT records clean up for Vscale DNS provider (#798) 2019-02-14 15:35:49 +01:00
Daniil Rutskiy
938ba435d6 fix: TXT records clean up for Selectel DNS provider (#797) 2019-02-14 15:30:03 +01:00
Wim Fournier
62e0e54f23 Adds support for Openstack Designate as a DNS provider (#786) 2019-02-07 16:10:07 +01:00
Ludovic Fernandez
6fdf45c474
chore: update golangci-lint. (#782) 2019-02-06 18:15:53 +01:00
Ludovic Fernandez
f05aa4c241
fix: endpoint with path. (#781) 2019-02-04 22:54:54 +01:00
Ludovic Fernandez
3019d10801
chore: migrate to nrdcg. (#779) 2019-02-04 22:43:10 +01:00
Ludovic Fernandez
c4730a6ec3
fastdns: Do not overwrite existing TXT records (#774) 2019-02-04 22:12:03 +01:00
Christopher Banck
0e6e4807b1 option to specify gcloud service account json by env as string (#776)
Added the option to provide the gcloud service account as a string via the environment variable `GCE_SERVICE_ACCOUNT` in addition to the already available option to specify a filepath to a keyfile `GCE_SERVICE_ACCOUNT_FILE`.
2019-02-01 13:14:57 +01:00
Ludovic Fernandez
27f26ed3d1
namecheap: fix panic. (#764) 2019-01-24 21:40:44 +01:00
Ludovic Fernandez
4f6d1077a2
alicloud: fix pagination. (#767) 2019-01-24 19:56:19 +01:00
fuku
977aa94061 nifcloud: Change DNS base url (#765) 2019-01-22 08:34:45 +01:00
Elen Eisendle
77afd0f732 Add support for zone.ee as a DNS provider (#751) 2019-01-20 12:27:35 +01:00
Ludovic Fernandez
a43ec709e8
gcloud: More detailed information about Google Cloud DNS. (#761) 2019-01-16 21:01:53 +01:00
Ludovic Fernandez
38f335dbe1
chore: update golangci-lint. (#757) 2019-01-11 19:23:27 +01:00
Ludovic Fernandez
b1fd570987
fix: rfc2136 must be run sequentially. (#745) 2019-01-09 08:23:33 +01:00
Ludovic Fernandez
41737739f2
transip: concurrent access to the API. (#744) 2019-01-09 08:18:12 +01:00
bzub
3105a01a1c dns/gcloud: Fix check for GCE_PROJECT when using gcloud (#752) 2019-01-09 08:12:22 +01:00
bzub
c938de68f2 Use GCE_PROJECT for project always, if specified (#750) 2019-01-08 14:39:12 +01:00
Ludovic Fernandez
9979087572
fix: gcloud. (#742) 2019-01-02 20:45:17 +01:00
Ludovic Fernandez
820c2b7531
gcloud: fix for wildcard (#740) 2018-12-22 00:53:05 +01:00
smartwang
cb3c4c7937 alidns: add support to handle more than 20 domains (#739) 2018-12-20 11:52:34 +01:00
Ludovic Fernandez
42941ccea6
Refactor the core of the lib (#700)
- Packages
- Isolate code used by the CLI into the package `cmd`
- (experimental) Add e2e tests for HTTP01, TLS-ALPN-01 and DNS-01, use [Pebble](https://github.com/letsencrypt/pebble) and [challtestsrv](https://github.com/letsencrypt/boulder/tree/master/test/challtestsrv) 
- Support non-ascii domain name (punnycode)
- Check all challenges in a predictable order
- No more global exported variables
- Archive revoked certificates
- Fixes revocation for subdomains and non-ascii domains
- Disable pending authorizations
- use pointer for RemoteError/ProblemDetails
- Poll authz URL instead of challenge URL
- The ability for a DNS provider to solve the challenge sequentially
- Check all nameservers in a predictable order
- Option to disable the complete propagation Requirement
- CLI, support for renew with CSR
- CLI, add SAN on renew
- Add command to list certificates.
- Logs every iteration of waiting for the propagation
- update DNSimple client
- update github.com/miekg/dns
2018-12-06 22:50:17 +01:00
YAEGASHI Takeshi
4e842a5eb6 Azure: Do not overwrite existing TXT records (#726) 2018-12-04 21:04:39 +01:00
Ludovic Fernandez
09a3292757
fix: clouflare error. (#721) 2018-11-15 22:41:54 +01:00
Fernandez Ludovic
eb04d860c4 feat: add to list. 2018-11-09 01:53:21 +01:00
Fernandez Ludovic
265e523138 refactor: add realm because it's fun. 2018-11-09 01:43:56 +01:00
Fernandez Ludovic
bba525fbce doc: fix readme. 2018-11-08 23:39:19 +01:00
Fernandez Ludovic
58b757cd76 feat: add provider httpreq. 2018-11-08 19:22:52 +01:00
Daniil Rutskiy
e89afae4f8 Add DNS Provider for Vscale (#705) 2018-11-08 10:31:42 +01:00
Maarten den Braber
1837a3bb1c Add DNS Provider for TransIP (#703) 2018-11-06 11:56:28 +01:00
Stephan Müller
42d8637d87 Add DNS Provider for inwx (#687) 2018-11-06 11:49:50 +01:00
mattn
5f383ec4f4 Add DNS Provider for MyDNS.jp (#628) 2018-11-04 15:37:29 +01:00
Daniil Rutskiy
2131723cc8 Support DNS Provider Selectel (#698) 2018-11-04 02:36:04 +01:00
Kazuki Sawada
5992cc0ece conoha: fix finding domain id (#697) 2018-11-02 12:59:41 +01:00
Kazuki Sawada
8556397ec0 add ConoHa DNS provider (#692) 2018-11-02 02:30:09 +01:00
Jonathan Camp
1151b4e3be Update Azure auth to support instance metadata service (#684) 2018-10-23 10:03:31 +02:00
Konni Hartmann
9b2a3a1873 netcup: make unmarshalling of api-responses more leniant. (#685) 2018-10-23 02:01:13 +02:00
Ludovic Fernandez
a68cb214d3
Change Aurora DNS client (#683) 2018-10-22 20:42:22 +02:00
Andrew Savinykh
5511373184 dnsmadeeasy: log response body on error (#682) 2018-10-19 11:49:17 +02:00
Ludovic Fernandez
1d1b08ac15
enhance the WithLiveTestRequirements algorithm (#681)
* refactor: migrate test to envTest.

* refactor: enforce WithLiveTestRequirements logic.

* chore: remove gometalinter.

* fix: godoc.

* doc: add Docker badge.
2018-10-18 22:32:00 +02:00
Nick Maliwacki
6de343314c duckdns: fix subsubdomain (#676) 2018-10-16 21:28:49 +02:00
Ludovic Fernandez
4d21f8eec1
Add a test helper to manage env vars. (#675) 2018-10-16 17:52:57 +02:00
muratmoon
160d6fe603 cloudflare: removed dot suffix from authzone while searching for zone. (#672) 2018-10-14 21:11:35 +02:00
Craig Steinberger
484f0e5e35 Add DNS Provider for DreamHost (#668)
* add support for DreamHost DNS
2018-10-13 16:01:46 +02:00
Ludovic Fernandez
122c354163
Homogenization of the DNS provider tests (#671)
* refactor: min TTL
* refactor: sandbox.
* refactor: tests homogenization.
* refactor: missing require.
2018-10-12 19:29:18 +02:00
SALLEYRON Julien
01c63ec08d fix: bugs. (#670) 2018-10-11 15:49:33 +02:00
Brent Hughes
8a5cdcb4ef Add DNS Provider for Stackpath (#660) 2018-10-09 21:58:32 +02:00
Ludovic Fernandez
20d50a559f
route53: fix challenge. (#665) 2018-10-09 19:03:07 +02:00
Ludovic Fernandez
21f6cd8a12
dnsimple: fix challenge. (#666) 2018-10-09 18:51:49 +02:00
Ludovic Fernandez
79f14b5ab2
The TTL Min limit should throw an error. (#663) 2018-10-09 18:22:45 +02:00
Ludovic Fernandez
a90f03791c
namecheap: fix challenge (#661) 2018-10-09 18:16:05 +02:00
NicoMen
a07a82946f gandiv5: fix DNS Challenge (#664) 2018-10-08 16:51:29 +02:00
Matt Farmer
fa455bc037 Add support for reading DNS provider setup from files (#535) 2018-10-06 15:33:15 +02:00
Ludovic Fernandez
37ef38c4fc Add additional configuration environment variables to CLI help. (#659)
* feat: add additional configuration environment variables to CLI help.

* review: packages order.
2018-10-04 15:28:06 +00:00
Ludovic Fernandez
18fe57183d
cloudflare: use the official go client. (#658) 2018-10-03 00:02:01 +02:00
Ludovic Fernandez
8a8aa2d81b
Cloudflare: support for CF_API_KEY and CF_API_EMAIL (#647) 2018-10-02 22:34:34 +02:00
Ludovic Fernandez
c09b12be08 fix: ns1 wildcard. (#657) 2018-10-02 20:21:02 +00:00
Ludovic Fernandez
ad20bf90ff Migrate to golangci-lint (#644)
* refactor: linting.

- errcheck
- govet
- golint
- goconst
- spellcheck
- ...

* refactor: migrate from gometalinter to golangci-lint.
2018-09-24 19:07:20 +00:00
Marques Johansson
58a023e92b Linode: updated to use the Linode APIv4 (#622) 2018-09-23 13:01:40 +02:00
Ludovic Fernandez
621237d072
fix: ns1 auth zone. (#640) 2018-09-21 17:47:58 +02:00
Ludovic Fernandez
3a46680b73 Fix: gcloud wildcard (#643)
* fix: gcloud wildcard.

* refactor: minor changes.
2018-09-21 15:28:50 +00:00
Ludovic Fernandez
ab0048544f
dns providers: fix errors. (#642)
* fix: gloud errors.
* fix: azure errors.
* fix: iij errors.
2018-09-20 23:18:13 +02:00
evs-ch
83e2300e01 Add DNS provider for hosting.de (#624) 2018-09-15 23:25:14 +02:00
Ludovic Fernandez
e94285fcf3
CloudXNS: client isolation. (#629) 2018-09-15 19:26:45 +02:00
Ludovic Fernandez
bba134ce87
Allow to configure TTL, interval and timeout (#634)
* feat: add GetOrDefaultXXX methods.
* refactor: configuration (alidns).
* refactor: configuration (azure).
* refactor: configuration (auroradns).
* refactor: configuration (bluecat).
* refactor: configuration (cloudflare).
* refactor: configuration (digitalocean).
* refactor: configuration (dnsimple).
* refactor: configuration (dnmadeeasy).
* refactor: configuration (dnspod).
* refactor: configuration (duckdns).
* refactor: configuration (dyn).
* refactor: configuration (exoscale).
* refactor: configuration (fastdns).
* refactor: configuration (gandi).
* refactor: configuration (gandiv5).
* refactor: configuration (gcloud).
* refactor: configuration (glesys).
* refactor: configuration (godaddy).
* refactor: configuration (iij).
* refactor: configuration (lightsail).
* refactor: configuration (linode).
* refactor: configuration (namecheap).
* refactor: configuration (namedotcom).
* refactor: configuration (netcup).
* refactor: configuration (nifcloud).
* refactor: configuration (ns1).
* refactor: configuration (otc).
* refactor: configuration (ovh).
* refactor: configuration (pdns).
* refactor: configuration (rackspace).
* refactor: configuration (rfc2136).
* refactor: configuration (route53).
* refactor: configuration (sakuracloud).
* refactor: configuration (vegadns).
* refactor: configuration (vultr).
2018-09-15 19:07:24 +02:00
SALLEYRON Julien
ad34a85dad refactor: rename Alibaba DNS env var. (#636) 2018-09-13 16:15:26 +02:00
NicoMen
035c27cdb7 Check error to avoid panic due to nil client (#631) 2018-09-10 09:52:43 +02:00
yuexiaoyun
c22f8d841f Add DNS Provider for ALIYUN DNS (#620) 2018-09-08 15:17:23 +02:00
Laurendus
5a1c3d2134 Add DNS Provider for netcup (#610) 2018-09-08 14:08:07 +02:00
Conor Mongey
ef7cd04002 Route53: Make it possible to configure from the env (#603) 2018-09-08 13:49:24 +02:00
keisuk-t
725b6b816a Add DNS Provider for IIJ (#606) 2018-09-08 12:52:36 +02:00
Yoan Blanc
f3cfe4a24a dnsprovider: upgrade egoscale to v0.11.1 (#617) 2018-09-08 12:09:59 +02:00
Conor Mongey
8b6701514c Route53: make provider timeouts configurable (#588) 2018-07-18 17:37:35 +02:00
Bill Shupp
baad3dea99 Add EXEC_MODE=RAW support to DNS Provider exec (#586) 2018-07-18 01:19:48 +02:00
fl1pfl0p
6edbd1572e DuckDNS: fix TXT record update url (#601) 2018-07-18 00:17:51 +02:00
Steve Coursen
771679fe3d NS1: use the authoritative zone and not the domain name (#463) 2018-07-14 12:31:57 +02:00
JP Phillips
255296ec82 gcloud: update findTxtRecords to use Name=fqdn and Type=TXT, use in Present and Cleanup (#594) 2018-07-14 12:02:03 +02:00
Daniel McCarney
04e2d74406 DNS Providers: Add ACME-DNS provider. (#591)
This commit adds a new DNS provider for
[acme-dns](https://github.com/joohoi/acme-dns) to allow Lego to set
DNS-01 challenge response TXT with an ACME-DNS server automatically.
ACME-DNS allows ceding minimal zone editing permissions to the ACME
client and can be useful when the primary DNS provider for the zone does
not allow scripting/API access but can set a CNAME to an ACME-DNS
server.

Lower level ACME-DNS API calls & account loading/storing is handled by
the `github.com/cpu/goacmedns` library.

The provider loads existing ACME-DNS accounts from the specified JSON
file on disk. Any accounts the provider registers on behalf of the user
will also be saved to this JSON file.

When required, the provider handles registering accounts with the
ACME-DNS server domains that do not already have an ACME-DNS account.
This will halt issuance with an error prompting the user to set the
one-time manual CNAME required to delegate the DNS-01 challenge record
to the ACME-DNS server. Subsequent runs will use the account from disk
and assume the CNAME is in-place.
2018-07-09 19:28:01 +02:00
Area128
d30c293647 SOA-API-EDIT should be SOA-EDIT-API (#593)
according to https://doc.powerdns.com/authoritative/domainmetadata.html#soa-edit-api
2018-07-03 16:14:43 +02:00
Derek Chen
3a1c6202f6 Lightsail: Fix Domain does not exist error (#512) 2018-07-01 02:24:20 +02:00
fuku
f9c0fbd298 Add DNS Provider for NIFCLOUD DNS (#532) 2018-07-01 02:13:22 +02:00
Bill Shupp
3f09ecc0b1 Add DNS Provider for VegaDNS (#553) 2018-07-01 01:45:24 +02:00
Kazumichi Yamamoto
05921d9810 Add DNS Provider for SAKURA Cloud (#456) 2018-06-21 21:24:45 +02:00
Ludovic Fernandez
a1585a7b9a
Review DNS providers (#580)
* refactor: create log.Infof and log.Warnf
* refactor: review DNS providers.
    - use one `http.Client` by provider instead of one client by request
    - use the same receiver name `d` for all `DNSProvider`
    - use `http.MethodXXX`
* refactor: logger init.
2018-06-21 19:06:16 +02:00
Ludovic Fernandez
c4bbb4b819
Review DNS providers. (#565)
* refactor: review DNS providers.
2018-06-11 17:32:50 +02:00
AndreKR
5005315fff dns/exec: Allow passing the program to the provider directly (#573)
This adds a function NewDNSProviderProgram() to the exec provider that allows to set the program to run directly instead of via the environment variable. This is similar to how other providers allow to set their credentials.
2018-06-10 13:51:01 -06:00
Ludovic Fernandez
1b12c25e43 Add linters (#556)
* feat: add linters.
* fix: lint.
2018-05-30 16:03:55 -06:00
NicoMen
517f442fa3 Add details to the cloudflare error message (#452) 2018-05-30 20:26:07 +02:00
Dan Lüdtke
0593b64674 Fix gcloud naming inconsistency; parse projectID (#425)
This commit fixes the naming inconsistency of Google Cloud DNS being
named `googlecloud` in the source and `gcloud` in the user interface.
Furthermore, improving my previous commit, I realized that the project ID
is stored in the service account file. We can save one environment variable
when using service account file (e.g. in automation applications).
2018-05-30 20:20:21 +02:00
Ludovic Fernandez
e7fd871a9c
ACME V2 support (#555) 2018-05-30 19:53:04 +02:00
Daniel Alan Miller
8e9c5ac3e6 Adding output of which envvars are missing in Cloudflare and Azure (#537)
* Adding output of which envvars are missing in Cloudflare dns provider

* go fmt, duh

* Fixing & adding test(s)

* Adding azure missing env vars checking

* Fixing test

* Doh, fixing up expected output
2018-04-25 09:12:41 -06:00
dajenet
5922ca9269 Fix dnsimple api (#529) 2018-04-15 07:49:13 -06:00
Johannes Ebke
b2c4f3c84e route53: Use NewSessionWithOptions instead of deprecated New. Fixes #458. (#528) 2018-04-12 07:08:23 -06:00
Jefferson Girão
3c9be22bc0 Add Akamai FastDNS as DNS provider (#522)
* Adding support to Akamai FastDNS as DNS provider

* Adding fastdns to the list of dnsproviders
2018-04-03 08:22:13 -06:00
Kirby Files
5ebb80fb44 Add Bluecat DNS provider (#483) 2018-04-02 20:50:15 -06:00
Nick Maliwacki
d7fdc8f54a Add dns provider duckdns.org (#513)
* Add dns provider duckdns see http://www.duckdns.org/spec.jsp for more info

* Add DNS challenge provider 'exec' (#508)

As discussed in #505, this commits adds a very simple DNS provider which
calls out to an external program which must then add or remove the DNS
record.

* Update duckdns to support caddy, and cleanup some comments
2018-04-02 08:02:54 -06:00
Adrian Bjugård
1028c3b190 Add DNS-01 solver using the GleSYS API (#502)
* Add GleSYS DNS-01 solver

* API url is not overridden during tests

* Use logging package

* Correct documentation for NewDNSProvider
2018-03-31 08:33:48 -06:00