Да, вы можете использовать автономный сервер TURN, чтобы обойти проблемы с брандмауэром. Сервер TURN предназначен для ретрансляции медиатрафика через службу, когда прямое соединение между двумя конечными точками невозможно из-за ограничительных правил брандмауэра. Вот некоторые ключевые моменты о серверах TURN:
1. Настройка сервера TURN: вы можете развернуть свой собственный сервер TURN на таком сервере, как Ubuntu. Это позволяет вам лучше контролировать сервер и его конфигурацию, что может быть полезно для надежности и безопасности[1].
2. Преимущества: Использование сервера TURN может повысить безопасность за счет снижения вероятности утечки IP-адреса и улучшения сетевой совместимости. Это также может помочь в тех случаях, когда около 10% удаленных гостей не смогут подключиться без сервера TURN. Кроме того, он может обеспечить лучшее качество видео за счет принудительной передачи данных TCP, что может быть полезно в определенных сетевых средах[1].
3. Варианты развертывания: вы можете использовать облачные сервисы, такие как Google Cloud, которые предлагают бесплатный небольшой сервер на всю жизнь. Это может быть экономически выгодным вариантом, особенно если вы сохраняете конфиденциальность сервера. Google Cloud также предоставляет бесплатный кредит в размере 300 долларов США, хотя он не поддерживает IPv6 и имеет стоимость магистральной сети около 0,20 доллара США за гигабайт[1].
4. Альтернативные решения. Если вы не хотите настраивать собственный сервер TURN, вы можете использовать VPN, например Speedify, который может обходить брандмауэры и другие проблемы, для которых может потребоваться сервер TURN. Это также может помочь более надежно защитить вашу конфиденциальность и IP-адрес[1].
5. Соображения безопасности. При настройке сервера TURN безопасность имеет решающее значение. Вы должны убедиться, что сервер должным образом защищен, например, с помощью обратного прокси-сервера, такого как Nginx, и инструмента безопасности, такого как Crowdsec[5].
6. TURN через TCP/TLS: Если сеть очень ограничена, вы можете использовать TURN через TCP/TLS. Это включает в себя упаковку данных TCP в безопасный сокет TCP и инициацию соединения с помощью HTTPS-квитирования, поэтому брандмауэр не может отличить этот трафик от любого другого веб-трафика[2].
7. ICE и TURN: Установление интерактивного соединения (ICE) — это протокол, используемый для управления STUN, TURN и TURNS. Это помогает собрать кандидатов и расставить их приоритеты для установления успешного медиа-соединения с удаленным партнером. Это особенно важно в случаях, когда существуют сетевые ограничения и брандмауэры[4].
Таким образом, автономный сервер TURN может быть надежным и безопасным решением для обхода проблем с брандмауэром, особенно если у вас есть контроль над сервером и его конфигурацией. Однако важно обеспечить принятие надлежащих мер безопасности для защиты сервера и его данных.
Цитаты:[1] https://docs.vdo.ninja/common-errors-and-known-issues/hosted-your-own-turn-server
[2] https://developer.liveswitch.io/liveswitch-server/guides/what-are-stun-turn-and-ice.html
[3] https://stackoverflow.com/questions/35506493/bypass-firewall-for-webrtc
[4] https://webrtc.ventures/2022/04/ice-in-webrtc/
[5] https://github.com/coturn/coturn/discussions/1100