Как узнать, какая версия TLS поддерживается версией узла js 8.9.1 - PullRequest
0 голосов
/ 24 сентября 2018

Я использую версию узла 8.9.1 и хочу узнать, какую версию TLS он использует по умолчанию.

Я попробовал поискать в Google и посмотрел документацию по узлу js, но не смог найти ответ

1 Ответ

0 голосов
/ 24 сентября 2018

Вы можете сгенерировать самозаверяющий сертификат с помощью:

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes

Он создаст key.pem и cert.pem файлы в текущем каталоге, затем вы можете запустить сервер с:

const tls = require('tls');
const fs = require('fs');

const options = {
  key: fs.readFileSync('key.pem'),
  cert: fs.readFileSync('cert.pem')
};

const server = tls.createServer(options, (socket) => {
  console.log('server connected',
          socket.authorized ? 'authorized' : 'unauthorized', socket.getProtocol());
  socket.write('welcome!\n');
  socket.setEncoding('utf8');
  socket.pipe(socket);
});
server.listen(8000, () => {
  console.log('server bound');
});

и подключитесь к нему, используя openssl s_client:

openssl s_client -connect 127.0.0.1:8000

Тестирование на узле v8.11.3 выдаст:

server bound
server connected unauthorized TLSv1.2

ref:

...