Настройка сервера Red5 для обработки RTMPS?

Я пытаюсь подключиться к своему серверу Red5 через RTMP-клиент через сокет SSL. Основываясь на блоге Пола Грегуара о Red5 и RTMPS, я предпринял следующие шаги по настройке нового сервера Red5 RTMPS:

  1. Загрузите и установите свежую версию Red5 со страницы загрузки Red5 1.0
  2. Раскомментируйте раздел RTMPS в файле {red5 dir}/conf/red5-core.xml. Этот раздел содержит те же настройки, которые Пол Грегуар упоминает в шаге 8 своего блога.
  3. Оставьте {red5 dir}/conf/red5.properties без изменений; для порта RTMPS установлено значение по умолчанию 8443, а хранилище ключей SSL сервера остается тем же, которое упаковано с Red5

Затем я продолжаю запускать сервер Red5 с аргументом JVM "-Djavax.net.debug=ssl", чтобы информация об отладке SSL отображалась в консоли.

В качестве простого теста я пытаюсь подключиться к серверу с помощью node.js с помощью библиотеки tls:

tls.connect(8443, 'localhost', null);  // tls.connect(port, host, callback);

Первое, что я заметил в консоли сервера, это строка 1106:

[DEBUG] [pool-11-thread-1] org.red5.server.net.rtmp.codec.RTMPProtocolDecoder - Handshake init too small, buffering. remaining: 338

Сначала я подумал, что рукопожатие RTMP не может быть декодировано сервером, поскольку сервер пропускает рукопожатие SSL, которое пытается инициировать клиент. Продолжая прочесывать консоль сервера, я вижу, что рукопожатие SSL никогда не происходит, несмотря на подключение клиента через сокет SSL. Вот полный вывод серверной консоли результата выполнения клиентом node.js вышеупомянутой строки.

Что я делаю неправильно, когда пытаюсь подключиться к серверу через SSL, и как следует настроить Red5 для использования RTMPS?

0 ответов

Другие вопросы по тегам