Introducing Socket Firewall: Free, Proactive Protection for Your Software Supply Chain.Learn More
Socket
Book a DemoInstallSign in
Socket

acme-dns-01-namedotcom

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

acme-dns-01-namedotcom

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

latest
npmnpm
Version
3.0.1
Version published
Maintainers
1
Created
Source

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

Name.com 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)
    • Name.com v4 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-namedotcom

Name.com API Token

The following error is what you may get if you have Two-Factor Auth and don't Enable API Access the second time:

{
	"message": "Permission Denied",
	"details": "Authentication Error - Account Has Namesafe Enabled"
}

If you're using the Whitelist IPs feature, don't forget to add your test environment!

Usage

First you create an instance with your credentials:

var dns01 = require('acme-dns-01-namedotcom').create({
	baseUrl: 'http://api.name.com/v4/', // default
	username: '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 username api-token
node ./test.js example.com me xxxxxx

Authors

  • AJ ONeal

See AUTHORS for contact info.

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

Copyright 2019 AJ ONeal Copyright 2019 The Root Group LLC

Keywords

Name.com

FAQs

Package last updated on 31 Jul 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts