nodejsにHTTPSサーバーを設定するために署名付き証明書を設定しようとしています。しかし、クロムで次のエラーが発生し続けます(他のブラウザでも同様です)。
"Error 107 (net::ERR_SSL_PROTOCOL_ERROR): SSL protocol error."
自己署名証明書を使用して同じコードを実行すると、問題なく動作しました。
次に、openssl verify を実行したところ、証明書は問題ないようです。
$ openssl verify -CAfile ./ca.crt server.crt
server.crt: OK
これは、署名された証明書を使用して実行する方法です。
var privateKey = fs.readFileSync('sslcert/server.key').toString();
var certificate = fs.readFileSync('sslcert/server.crt').toString();
var ca = fs.readFileSync('sslcert/ca.crt').toString();
var credentials = {key: privateKey, cert: certificate, ca: ca};
//Start Server
https.createServer(credentials, app).listen(httpsPort, function () {
console.log("Listening on port " + httpsPort + ' (https)');
});