https
express server läuft jetzt mit https
This commit is contained in:
64
express-server/node_modules/acme/examples/cli.js
generated
vendored
Normal file
64
express-server/node_modules/acme/examples/cli.js
generated
vendored
Normal file
@ -0,0 +1,64 @@
|
||||
'use strict';
|
||||
|
||||
var readline = require('readline');
|
||||
var inquisitor = {};
|
||||
var rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
|
||||
require('./genkeypair.js');
|
||||
|
||||
inquisitor.getWeb = function getWeb() {
|
||||
rl.question('What web address(es) would you like to get certificates for? (ex: example.com,*.example.com) ', function (web) {
|
||||
web = (web||'').trim().split(/,/g);
|
||||
if (!web[0]) { inquisitor.getWeb(); return; }
|
||||
|
||||
if (web.some(function (w) { return '*' === w[0]; })) {
|
||||
console.log('Wildcard domains must use dns-01');
|
||||
inquisitor.getEmail(web, 'dns-01');
|
||||
} else {
|
||||
inquisitor.getChallengeType(web);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
inquisitor.getChallengeType = function getChallengeType(web) {
|
||||
rl.question('What challenge will you be testing today? http-01 or dns-01? [http-01] ', function (chType) {
|
||||
chType = (chType||'').trim();
|
||||
if (!chType) { chType = 'http-01'; }
|
||||
|
||||
inquisitor.getEmail(web, chType);
|
||||
});
|
||||
};
|
||||
|
||||
inquisitor.getEmail = function getEmail(web, chType) {
|
||||
rl.question('What email should we use? (optional) ', function (email) {
|
||||
email = (email||'').trim();
|
||||
if (!email) { email = null; }
|
||||
|
||||
inquisitor.getDirectoryUrl(web, chType, email);
|
||||
});
|
||||
};
|
||||
|
||||
inquisitor.getDirectoryUrl = function getDirectoryUrl(web, chType, email) {
|
||||
var defaultDirectoryUrl = 'https://acme-staging-v02.api.letsencrypt.org/directory';
|
||||
rl.question('What directoryUrl should we use? [' + defaultDirectoryUrl + '] ', function (directoryUrl) {
|
||||
directoryUrl = (directoryUrl||'').trim();
|
||||
if (!directoryUrl) { directoryUrl = 'https://acme-staging-v02.api.letsencrypt.org/directory'; }
|
||||
|
||||
inquisitor.run(directoryUrl, web, chType, email);
|
||||
});
|
||||
};
|
||||
|
||||
inquisitor.run = function run(directoryUrl, web, chType, email) {
|
||||
rl.close();
|
||||
|
||||
var RSA = require('rsa-compat').RSA;
|
||||
var accountKeypair = RSA.import({ privateKeyPem: require('fs').readFileSync(__dirname + '/../tests/account.privkey.pem') });
|
||||
var domainKeypair = RSA.import({ privateKeyPem: require('fs').readFileSync(__dirname + '/../tests/privkey.pem') });
|
||||
|
||||
require('../tests/promise.js').run(directoryUrl, RSA, web, chType, email, accountKeypair, domainKeypair);
|
||||
};
|
||||
|
||||
inquisitor.getWeb();
|
22
express-server/node_modules/acme/examples/genkeypair.js
generated
vendored
Normal file
22
express-server/node_modules/acme/examples/genkeypair.js
generated
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
var RSA = require('rsa-compat').RSA;
|
||||
var fs = require('fs');
|
||||
|
||||
if (!fs.existsSync(__dirname + '/../tests/account.privkey.pem')) {
|
||||
RSA.generateKeypair(2048, 65537, {}, function (err, keypair) {
|
||||
console.log(keypair);
|
||||
var privkeyPem = RSA.exportPrivatePem(keypair)
|
||||
console.log(privkeyPem);
|
||||
|
||||
fs.writeFileSync(__dirname + '/../tests/account.privkey.pem', privkeyPem);
|
||||
});
|
||||
}
|
||||
|
||||
if (!fs.existsSync(__dirname + '/../tests/privkey.pem')) {
|
||||
RSA.generateKeypair(2048, 65537, {}, function (err, keypair) {
|
||||
console.log(keypair);
|
||||
var privkeyPem = RSA.exportPrivatePem(keypair)
|
||||
console.log(privkeyPem);
|
||||
|
||||
fs.writeFileSync(__dirname + '/../tests/privkey.pem', privkeyPem);
|
||||
});
|
||||
}
|
7
express-server/node_modules/acme/examples/http-server.js
generated
vendored
Normal file
7
express-server/node_modules/acme/examples/http-server.js
generated
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
'use strict';
|
||||
|
||||
var http = require('http');
|
||||
var express = require('express');
|
||||
var server = http.createServer(express.static('../tests')).listen(80, function () {
|
||||
console.log('Listening on', this.address());
|
||||
});
|
11
express-server/node_modules/acme/examples/https-server.js
generated
vendored
Normal file
11
express-server/node_modules/acme/examples/https-server.js
generated
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
'use strict';
|
||||
|
||||
var https = require('https');
|
||||
var server = https.createServer({
|
||||
key: require('fs').readFileSync('../tests/privkey.pem')
|
||||
, cert: require('fs').readFileSync('../tests/fullchain.pem')
|
||||
}, function (req, res) {
|
||||
res.end("Hello, World!");
|
||||
}).listen(443, function () {
|
||||
console.log('Listening on', this.address());
|
||||
});
|
Reference in New Issue
Block a user