ノードサーバーでSSLを設定する方法について大変混乱しています。ノード/エクスプレスにRapidSSL証明書をインストールする
私はこれまで行う行っていることである:私の急行に
テストのために私のローカルマシン上での鍵と証明書署名-Create自己ローカル
-Addedこのコードは
var privateKey = fs.readFileSync('privatekey.pem', 'utf8');
var certificate = fs.readFileSync('certificate.pem', 'utf8');
https.createServer({
key: privateKey,
cert: certificate
}, app).listen(port);
を設定しました
これはローカルで問題ありません(ブラウザエラーが発生しますが、自己署名されているため信頼できる機関ではないことがわかります)。
今実際の証明書を使用して展開したいので、RapidSSLから購入しました。彼らは、電子メールに平文で、私は2つのキーを送信し、両方の形式で
-----BEGIN CERTIFICATE-----
blah
-----END CERTIFICATE-----
一つはWeb server CERTIFICATE
、他のINTERMEDIATE CA
をラベル付けされます。
私はprodPrivatekey.pem
(この質問のために)という名前の新しいファイルにWeb server CERTIFICATE
の内容をコピーして、私はprodCertificate.pem
にINTERMEDIATE CA
を移動しました。次に、上記のコードのパスを置き換えました。
まず、この行動措置が正しいかどうか教えてください。私はSSL証明書の内部動作についてほとんど何も知らないと仮定します。
2番目に、この設定でエラーが発生した場合は、Error: error:0906D06C:PEM routines:PEM_read_bio:no start line
です。私が見つけることができる唯一の助けはこの質問Node.js https pem error: routines:PEM_read_bio:no start lineですが、ここでの助けは自己署名証明書に関連しているようです。
ありがとうございました!
ご協力いただきありがとうございます!あなたは粘着した穴の中から私を連れてきました - そして、私はSSLをもっと良く理解しています!同様の状況にある人は、証明書を再発行するためにRapidSSLを入手しなければなりませんでした(https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=SO5757を参照)。私のCSR(openssl req -newkey rsa:2048 -nodes -keyout ssl/prod/domain.key -out ssl/prod/domain.csrコマンドを実行して作成したもの)を使用してください。次に、私の明示的な設定では、その最後のコマンド( 'domain.key')で作成された秘密鍵と再発行された証明書 –