Я пытаюсь реализовать безопасный веб-сокет через сервер Nodejs. Сервер находится в сети нашего университета, и он отлично работает, когда я обращаюсь к нему изнутри университетской сети. Однако я получаю ошибку «net :: ERR_CONNECTION_REFUSED», когда пытаюсь подключиться извне, и я убедился, что соответствующий порт открыт. Вот код:
var ws_PORT = xxx;
var fs = require('fs');
var https = require('https');
var cert = fs.readFileSync('path/cert.pem', 'utf8');
var key = fs.readFileSync('path/privkey.pem', 'utf8');
var options = {key: key, cert: cert};
var server = https.createServer(options);
server.listen(ws_PORT);
var WebSocket = require('ws');
var wss = new WebSocket.Server({server: server});
wss.on('connection', function(ws) {
console.info('WS_SERV: Connected to port: '+ws_PORT);
// Manage ws
// ...
}
Любые идеи...?
Заранее спасибо,





Если вы находитесь внутри университетской сети, соединение будет заблокировано университетским межсетевым экраном. Вам нужно будет создать какое-то правило переадресации портов на брандмауэре, но если вы не являетесь администратором, они не позволят вам это сделать, и если вы администратор и уже пробовали это, и это не работает, тогда удвойте проверьте правило брандмауэра, а также общедоступный и внутренний IP-адрес.
Или, если вы хотите сделать это общедоступным, проще всего было бы просто разместить его на VPS за nginx на Digital Ocean, AWS или linode.