Как заставить RTSPtoWeb работать с https

Мы установили RTSPtoWeb на запасной сервер в нашей сети, просто чтобы проверить, работает ли он, и он работает. Он прекрасно захватывает поток с наших камер. Затем я использовал опцию потока webrtc, чтобы успешно отобразить его на веб-странице, НО только в моей локальной среде разработки на локальном хосте. Запасной сервер не имеет сертификата SSL, это просто http.

Теперь, конечно, это должно работать и в нашей производственной среде, которая полностью использует https. Сначала я просто указал на запасной http-сервер. Итак, естественно, Chrome выдает ошибку смешанного контента. Затем я попытался установить RTSPtoWeb на производственный сервер, но, думаю, мне все равно нужно каким-то образом применить SSL-сертификат производственного сервера к RTSPtoWeb. Если я укажу на RTSPtoWeb с протоколом https, он вернет Net ERR_SSL_PROTOCOL_ERROR.

В config.json есть несколько переменных, связанных с https, но нет документации о том, что они на самом деле означают:

       "https": true,
 "https_auto_tls": false,
 "https_auto_tls_name": "",
 "https_cert": "server.crt",
 "https_key": "server.key",

Удалось ли кому-нибудь использовать RTSPtoWeb с сертификатом SSL, и если да, то как? Или может быть есть быстрый и грязный способ обойти проблему «смешанного контента» в Chrome.

Или, поскольку мы работаем на рабочем сервере, а я просто использую IP-адрес для указания на RTSPtoWeb, изменится ли что-нибудь, если на RTSPtoWeb будет ссылка с использованием доменного имени сервера? Мы используем Apache, могу ли я как-нибудь просто перенаправить трафик?

1 ответ

Я тоже потратил много времени на то, чтобы разобраться в этом, вы, вероятно, больше над этим не работаете, но вот ответ для устаревших целей.

  1. Зарегистрируйте свою запись A. Убедитесь, что ваш общедоступный IP-адрес зарегистрирован как запись A в регистраторе вашего домена. Вместо использования просто IP-адреса для указания на RTSPtoWeb используйте запись A, указывающую на ваш общедоступный IP-адрес, например https://rtsptoweb.yourdomain . com:12629/stream/0/channel/0/webrtc вместо https://100.100.100:12629/stream/0/channel/0/webrtc

  2. Отсутствуют сертификаты SSL. Убедитесь, что файлы server.crt и server.key правильно включены в сборку. Я использовал docker для сборки, и мне пришлось отредактировать файл docker, чтобы правильно включить файлы.

Ваш SSL-сертификат должен быть сгенерирован и сертифицирован для записи A, которую вы зарегистрировали ранее.

Наконец, после запуска RTSPtoWeb внимательно просмотрите журналы, чтобы понять, что не работает, это укажет вам правильное направление.

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