web-dev-qa-db-ja.com

Network Solutions for NodeJSからSSL証明書を購入する場合、サーバーの種類は重要ですか?

NodeJSを使用してExpressJSのインスタンスを実行していますが、HTTPSの使用を開始したいです。

私の会社は、ネットワークソリューションを通じてSSL証明書を購入しています。 CSRを提供しようとすると、Network Solutionsは、使用しているWebサーバーのタイプを尋ねます。 (つまり、IIS、Apache w/ModSSL、Pleskなど)NodeJSなどのオプションは提供しません。

私は質問で彼らのサポートに連絡しましたが、待っている間、私はコミュニティから知りたいです。

  1. どのサーバータイプを使用する必要がありますか?そして

  2. それも重要ですか?

関連する場合、UbuntuでOpenSSLを使用してCSRを生成しました。

2
Ryan Jarvis

Node.jsは複数の形式の証明書を処理できますが、最も一般的でセットアップが最も簡単なのは、Apache、nginxなどで使用されるPEM形式です。 、完全に異なる形式を使用します。

実際にハングアップする可能性があるのは、NetSolが何らかの理由で持っている中間CA証明書を使用する場合のみです。これらは、使用する前に連結する必要があります。

NetSolのApache/Pleskオプションを選択することをお勧めします。このオプションでは 複数のファイルを受信します 、ここでは重要なのはそのうちの2つだけです:

  • example.com.crt-これは実際の証明書です。
  • Apache_Plesk_Install.txt-紛らわしい名前にもかかわらず、このファイルには実際にはすべての中間CA証明書が連結されており、そのまま使用できます。

もちろん、Ubuntuマシンで生成した秘密鍵も必要です。

キーに別の形式を選択した場合でも、Network Solutionsを使用してアカウントにログインし、証明書とApache_Plesk_Install.txtファイルを個別にダウンロードできる必要があります。


最後に、これらの証明書をサーバーのどこかにインストールし、 Node.jsを適切にセットアップ

var https = require('https');
var fs = require('fs');

var options = {
  key: fs.readFileSync('.../keys/private.key'),
  cert: fs.readFileSync('.../keys/example.com.crt'),
  ca: fs.readFileSync('.../keys/Apache_Plesk_Install.txt')
};

https.createServer(options, function (req, res) {
  res.writeHead(200);
  res.end("hello world\n");
}).listen(443);

これで完了です!

3
Michael Hampton