Socket.io (Browser to NodeJS) самозаверяющий CA нет соединения с HTTP, внутренний сервер - PullRequest
0 голосов
/ 25 октября 2018

Я пытаюсь подключиться с веб-сайта к NodeJS-серверу, используя socket.io.Оба размещены на одном и том же компьютере в локальной сети.

Шифрование данных имеет решающее значение, поскольку некоторые данные очень чувствительны.

Поэтому я реализовал самозаверяющий сертификат SSL дляэтот сайт и настроить сокеты, чтобы использовать его, а также.Работает нормально, единственная проблема в том, что Chrome сообщает, что сайт не защищен (потому что это не официальный сертификат).Поэтому я снова включил HTTP-соединение для этого веб-сайта, все еще используя шифрование SSL для сокетного соединения.

Это также работает нормально, но только если пользователь впервые посетил веб-сайт HTTPS и принял сертификат.

Принятие сертификата вручную, его установка или игнорирование предупреждения браузера «Not Secure» не являются приемлемыми решениями (корпоративное приложение).

Существует ли способ для сокетов автоматически принимать сертификат?Любые другие решения также приветствуются, это не должен быть SSL, трафик (сокетов достаточно) только должен быть зашифрован.

Код внешнего интерфейса:

socketSSL = io.connect('https://192.168.178.10:14444');

Код NodeJS:

var https = require('https');
var express = require('express');
var app = express();
var options = { key: privateKey, cert: certificate };
server = https.createServer(options, app);
server.listen(dstPort);

1 Ответ

0 голосов
/ 25 октября 2018

В веб-браузере нельзя автоматически обойти проверку безопасности для самоподписанного сертификата.

Если вам необходимо защитить данные, просто используйте шифрование и дешифрование «aes-256» между отправителем и получателем.

Но в любом случае ключ шифрования будет выставлен в сети.

Таким образом, если это для целей разработки / отладки, тогда все в порядке.Но если вы собираетесь работать в производственной среде, настоятельно рекомендуется иметь действующий сертификат, подписанный действующим центром сертификации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...