acme-dns-01-vultr

Vultr DNS for Let's Encrypt / ACME dns-01 challenges with ACME.js and Greenlock.js

Usage no npm install needed!

<script type="module">
  import acmeDns01Vultr from 'https://cdn.skypack.dev/acme-dns-01-vultr';
</script>

README

acme-dns-01-vultr | a Root project

Vultr DNS + Let's Encrypt for Node.js

This handles ACME dns-01 challenges, compatible with ACME.js and Greenlock.js. Passes acme-dns-01-test.

Install

npm install --save acme-dns-01-vultr@3.x

Usage

First you create an instance with your API token:

var dns01 = require('acme-dns-01-vultr').create({
    baseUrl: 'https://api.vultr.com/v1/dns', // default
    token: 'xxxx'
});

Then you can use it with any compatible ACME module, such as Greenlock.js or ACME.js.

Greenlock.js

var Greenlock = require('greenlock-express');
var greenlock = Greenlock.create({
    challenges: {
        'dns-01': dns01
        // ...
    }
});

See Greenlockā„¢ Express and/or Greenlock.js documentation for more details.

ACME.js

// TODO

See the ACME.js for more details.

Build your own

dns01
    .set({
        identifier: { value: 'foo.example.com' },
        wildcard: false,
        dnsHost: '_acme-challenge.foo.example.com',
        dnsAuthorization: 'xxx_secret_xxx'
    })
    .then(function() {
        console.log('TXT record set');
    })
    .catch(function() {
        console.log('Failed to set TXT record');
    });

See acme-dns-01-test for more implementation details.

Tests

# node ./test.js domain-zone api-key
node ./test.js example.com xxxxxx