le-challenge-etcd

3.0.0 • Public • Published

npm Badge

le-challenge-etcd

An etcd-based strategy for node-greenlock for setting, retrieving, and clearing ACME challenges issued by the ACME server.

This module saves ACME challenge in etcd as specified by etcdPathPrefix and removes it once the challenge has either completed or failed.

  • Safe to use with node cluster
  • Safe to use with ephemeral services (EvenNode, Heroku, etc.)

Install

npm install --save le-challenge-etcd

Usage

let 
  Etcd = require('node-etcd'),
  etcd = new Etcd('localhost');

let leChallenge = require('le-challenge-etcd').create({
  etcdObj: etcd,
  etcdPathPrefix: '/letsencrypt/www/:hostname/'  // defaults to "/le-challenge-etcd/"
});

let LE = require('letsencrypt');

LE.create({
  server: LE.stagingServerUrl,   // Change to LE.productionServerUrl in production
  challenge: leChallenge
});

NOTE: If you request a certificate with 6 domains listed, it will require 6 individual challenges.

Exposed Methods

For ACME Challenge:

  • set(opts, domain, key, val, done)
  • get(defaults, domain, key, done)
  • remove(defaults, domain, key, done)

For node-letsencrypt internals:

  • getOptions() returns the internal defaults merged with the user-supplied options
  • loopback(defaults, domain, key, value, done) test, by external means, that the ACME server's challenge server will succeed

Package Sidebar

Install

npm i le-challenge-etcd

Weekly Downloads

4

Version

3.0.0

License

MIT

Unpacked Size

4.74 kB

Total Files

6

Last publish

Collaborators

  • ceecko