3

を使用してTLS1.2SSLCertificateFile で認証するhttpsサーバーのサンプルコードはありますか?SSLCertificateKeyFile

関連するサンプルへのポインタをいただければ幸いです。

ssllabsは、クライアントが開始する再ネゴシエーションをサポートしているため、DoSに対して脆弱であると述べています

そして私はsslサーバーを作成するためにfuskerを取得することはできません

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

//var server = fusker.https.createServer(443);
//var io = fusker.socket.listen(server);

var options = {
key: fs.readFileSync('/etc/ssl/server.key'),
cert: fs.readFileSync('/etc/ssl/mathpdq.crt'),
ciphers: 'RC4-SHA:RC4:ECDHE-RSA-AES256-SHA:AES256-SHA:HIGH:!MD5:!aNULL:!EDH:!AESGCM',
honorCipherOrder: true
};

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

1 に答える 1

6

https リスナーの作成は簡単ですが、TLS 1.2 での作成に特定の問題があるかどうかは明確ではありません。最近のノードは、OpenSSL の 1.2 サポートを取得するのに十分な新しいバージョンに対してビルドされています。

次に、http: //nodejs.org/api/tls.htmlで説明されているように、ciphers オプションと HonorCipherOrder オプションの両方が必要です。

例えば

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

var options = {
    key: fs.readFileSync('my.key'),
    cert: fs.readFileSync('my.crt'),
    ciphers: 'ECDHE-RSA-AES256-SHA:AES256-SHA:RC4-SHA:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM',
    honorCipherOrder: true
};

var server = https.createServer(options, function (req, res) {
    ...});

server.listen(443);
于 2012-11-18T16:58:58.267 に答える