acme-dns-01-ali

0.1.2 • Public • Published

acme-dns-01-ali

Alibaba Cloud 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-ali

Generate AliCloud access token:

Usage

First you create an instance with your credentials:

var dns01 = require('acme-dns-01-ali').create({
  accessKeyId: 'Ali access key id',
  accessKeySecret: 'Ali access key secret',
});

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

Greenlock.js

var Greenlock = require('greenlock');
 
var greenlock = Greenlock.create();
greenlock.manager.defaults({
  subscriberEmail: email,
  agreeToTerms: false,
  challenges: {
    'dns-01': {
      module: 'acme-dns-01-ali',
      accessKeyId: aliAccessKeyId,
      accessKeySecret: aliAccessKeySecret,
    },
  },
});

See Greenlock.js documentation for more details.

See the ACME.js for more details.

Build your own

There are only 5 methods:

  • init(config)
  • zones(opts)
  • set(opts)
  • get(opts)
  • remove(opts)
dns01
  .set({
    identifier: { value: 'foo.example.co.uk' },
    wildcard: false,
    dnsZone: 'example.co.uk',
    dnsPrefix: '_acme-challenge.foo',
    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

Create .env file in project root directory:

ZONE='xxx'
ALI_ACCESS_KEY_ID='xxx'
ALI_ACCESS_KEY_SECRET='xxx'
# node ./test.js 
node ./test.js

Dependents (0)

Package Sidebar

Install

npm i acme-dns-01-ali

Weekly Downloads

0

Version

0.1.2

License

ISC

Unpacked Size

6.34 kB

Total Files

5

Last publish

Collaborators

  • polunzh