DNSimple + Let's Encrypt for Node.js - ACME dns-01 challenges w/ ACME.js and Greenlock.js
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
AJ ONeal 8fd34595a6 v3.0.1: doc updates 5年前
lib bugfixes and metadata updates 5年前
.gitignore Initial commit 5年前
.jshintrc add template 5年前
.prettierrc add template 5年前
AUTHORS update authors 5年前
LICENSE Initial commit 5年前
README.md doc updates 5年前
example.env doc updates 5年前
index.js add template 5年前
package.json v3.0.1: doc updates 5年前
test.js format code 5年前

README.md

acme-dns-01-dnsimple.js | a Root project

DNSimple DNS + Let's Encrypt for Node.js - ACME dns-01 challenges w/ ACME.js and Greenlock.js

Handles ACME dns-01 challenges. Compatible with ACME.js and Greenlock.js. Passes acme-dns-01-test.

Features

  • Compatible
    • Let’s Encrypt v2.1 / ACME draft 18 (2019)
    • DNSimple v2 API
    • ACME.js, Greenlock.js, and others
  • Quality
    • node v6 compatible VanillaJS
    • < 150 lines of code
    • Zero Dependencies

Install

npm install --save acme-dns-01-dnsimple

DNSimple Token:

  • Login to your account at: {{ Service URL }}
  • {{ Instructions to generate token }}

Usage

First you create an instance with your credentials:

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

Then you can use it with any compatible ACME library, 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

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

# node ./test.js domain-zone account token
node ./test.js example.com johndoe xxxxxx

Authors

  • AJ ONeal
  • Hitesh Walia

See AUTHORS for contact info.

Legal

acme-dns-01-dnsimple.js | MPL-2.0 | Terms of Use | Privacy Policy

Copyright 2019 Hitesh Walia Copyright 2019 AJ ONeal Copyright 2019 The Root Group LLC