An fs-based strategy for node-letsencrypt for setting, retrieving, and clearing ACME challenges issued by the ACME server
转到文件
AJ ONeal 92dbd18029 v2.0.6 2016-10-12 16:25:34 -06:00
.gitignore Initial commit 2016-08-04 23:22:20 -06:00
LICENSE Initial commit 2016-08-04 23:22:20 -06:00
README.md Update README.md 2016-08-17 23:00:23 -06:00
index.js added loopback test 2016-10-12 16:25:17 -06:00
package.json v2.0.6 2016-10-12 16:25:34 -06:00
test.js added loopback test 2016-10-12 16:25:17 -06:00

README.md

Join the chat at https://gitter.im/Daplie/letsencrypt-express

| letsencrypt (library) | letsencrypt-cli | letsencrypt-express | letsencrypt-cluster | letsencrypt-koa | letsencrypt-hapi |

le-challenge-webroot

A fs-based strategy for node-letsencrypt for setting, retrieving, and clearing ACME challenges issued by the ACME server

This places the acme challenge in an appropriate directory in the specified webrootPath and removes it once the challenge has either completed or failed.

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

Install

npm install --save le-challenge-fs@2.x

Usage

var leChallenge = require('le-challenge-fs').create({
  webrootPath: '~/letsencrypt/srv/www/:hostname/.well-known/acme-challenge'
, debug: false
});

var 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