Невозможно безопасно подключиться (wss) к AWS Kurento, чтобы получить удаленный поток в руководстве по node.js «Hello WoJavascript

Форум по Javascript
Ответить
Anonymous
 Невозможно безопасно подключиться (wss) к AWS Kurento, чтобы получить удаленный поток в руководстве по node.js «Hello Wo

Сообщение Anonymous »

Я тестирую локально в Windows 11. Я могу получить удаленный поток, если использую http://localhost и ws://47.128.254.233:8888/kurento
но после нескольких попыток до сих пор не знаю, как заставить это работать в https с помощью wss.
Ключи, включенные в проект узла, не работают, но я создал несколько новых те, у кого mkcert, которые позволяют мне запускать локальный хост как https:

Код: Выделить всё

var options =
{
//key:  fs.readFileSync('keys/server.key'),
//cert: fs.readFileSync('keys/server.crt')
key: fs.readFileSync('keys/localhost+2-key.pem'),
cert: fs.readFileSync('keys/localhost+2.pem')
};
...хотя https://localhost не работает с ws, что, вероятно, нормально.
В консоли AWS я У меня есть следующие правила для входящего трафика для группы безопасности моего экземпляра Kurento:

Код: Выделить всё

IP Version | Type      | Protocol | Port Range | Source
IPv4       | SSH       | TCP      | 22         | 0.0.0.0/0
IPv4       | All UDP   | UDP      | 0-65535    | 0.0.0.0/0
IPv6       | Custom TCP| TCP      | 8433       | ::/0
IPv4       | All TCP   | TCP      | 0-65535    | 0.0.0.0/0
IPv4       | Custom TCP| TCP      | 8888       | 0.0.0.0/0
IPv4       | Custom TCP| TCP      | 8433       | 0.0.0.0/0
< /code>
Экземпляр был автоматически назначен IPv6 URI: 2406: DA18: 3AE: D570: 72FA: 2620: B08E: 6C37. < /p>
В экземпляр AWS Kurento через SSH я могу запустить sudo netstat -tulnp | grep kurento 
и я получаю:

Код: Выделить всё

tcp6       0      0 :::8433                 :::*                    LISTEN      2299/kurento-media-
tcp6       0      0 :::8888                 :::*                    LISTEN      2299/kurento-media-
В файле server.js руководства я пробовал устанавливать ws_uri разными способами:

Код: Выделить всё

var argv = minimist(process.argv.slice(2), {
default: {
as_uri: 'https://localhost:8443/', // Local Node.js tutorial server
ws_uri: 'wss://47.128.254.233:8433/kurento' // AWS Kurento Media Server
//ws_uri: 'wss://[2406:da18:3ae:d570:72fa:2620:b08e:6c37]:8433/kurento'
}
});
но это не работает. Кроме того, проверка wss uri в PieHost или запуск Test-NetConnection -ComputerName 2406:da18:3ae:d570:72fa:2620:b08e:6c37 -Port 8433 завершаются неудачей.
Второй пилот предположил, что мне нужно создать ключ и сертификат openSSL на компьютере AWS и сослаться на них в kurento.conf.json. Я попробовал это с самозаверяющим ключом и сертификатом openSSL, но это не помогло. Кажется, возникла проблема с проверкой ключа с помощью: openssl rsa -noout -modulus -in /etc/kurento/kurento-key-no-pass.pem | openssl md5, где в разрешении отказано, если вы не добавите эту команду с помощью sudo. Но попытки снизить его защиту или переместить в другой каталог не помогли.
Я пытался установить coturn на сервер AWS, но он уже был установлен с правильным внешним IP-адресом. установите в etc/turnserver.conf. Я не нашел WebRtcEndpoint.conf.ini в папке etc, поэтому создал его и заполнил следующим образом:

Код: Выделить всё

stunServerAddress=stun.l.google.com
stunServerPort=19302
turnURL=kurento:kurento@47.128.254.233:3478
и тест Trickle ICE, похоже, дает хорошие результаты:

Код: Выделить всё

0.006   host    2299836197  udp d0e51d97-6cff-4c2d-ada1-11cf46d06144.local  62880   126 | 30 | 255
0.576   srflx   4082115708  udp 84.239.6.141    62880   100 | 30 | 255  stun:47.128.254.233:3478
1.193   relay   1139691178  udp 47.128.254.233  62384   2 | 31 | 255    turn:47.128.254.233:3478?transport=udp  udp
..., но удаленный поток по -прежнему не подключается, и я получаю, что WebSocket уже находится в закрытии или закрытом состоянии. Сообщение об ошибке в консоли Edge Dev.
Не уверен, что попробовать дальше. На данный момент я, вероятно, попробовал слишком много вещей, которые, возможно, мешают друг другу, поэтому любые подсказки ценятся.


Подробнее здесь: https://stackoverflow.com/questions/793 ... ello-world
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»