Что такое WebRTC и как это отключить. Почему WebRTC определяет мой настоящий IP-адрес? Отключение webrtc в яндекс браузере

Следующий скрин говорит о том, что в вашем браузере включена функция WebRTC. Кроме этого, сайт предоставляет и другую интересную информацию.

Как отключить WebRTC?

Из всех современных браузеров лучше всего поддается дрессировке Firefox. И в данном конкретном случае Firefox показал себя с лучшей стороны, давая возможность пользователю не используя сторонние дополнения, с помощью скрытых настроек отключить WebRTC.

Отключение WebRTC Firefox

Для отключения в браузере Firefox необходимо ввести в адресной строке команду about:config , после чего появится это сообщение.

Нажимаем на кнопку «Я обещаю…» и продолжаем дальше.

В окне настроек, в строке поиска (не в адресной строке!), как это показано на скрине ниже вводим команду media.peerconnection.enabled . Появится необходимая нам строка. Нажмем на нее правым шелчком мышки и в выпадающем меню выберем первый пункт «Переключить «.

После переключения в поле «Значение» вы должные увидеть параметр «False «. Теперь закрываем это окно и перегружаем браузер.

Еще один способ, это установить специальное расширение Disable WebRTC . Но я предпочитаю и вам советую выполнить эту операцию самим. Не люблю устанавливать программы на компьютер тем-более в браузер.

Есть еще более простой способ - скачать утилиту ConfigFox, которая кроме данной операции может значительно улучшить конфиденциальность и анонимность браузера Firefox. Об этой программе мы писали в статье «Настройки безопасности Firefox «. Я очень рекомендую использовать данную утилиту всем пользователям браузера Mozilla Firefox. Программа не устанавливает себя в браузер, а просто позволяет изменять файл настроек.

Отключение WebRTC Chrome

В браузере Google Chrome все немного сложнее. В Хроме нет возможности отключить данную функцию в самом браузере. Для этого необходимо скачать специальное дополнение, называется оно WebRTC Block. Скачать и установить дополнение вы можете по этой прямой ссылке. Мы не тестировали данное расширение и гарантий дать никаких не можем.

Также существует дополнение ScriptSafe , которое тоже может помочь в решении данной проблемы. На мой взгляд это лучший способ решить проблему WebRTC в Хроме.

С этим расширением неопытному пользователю будет сложнее, но если вы из продвинутых, то очень советую в нем поковыряться.

Если вам известны другие способы решения данной проблемы в браузере Хром, напишите в комментариях.

Отключение WebRTC Opera / Яндекс Браузер

Для браузера Opera есть несколько плагинов: WebRTC Leak Prevent и WebRTC Control . Лично не проверял пробуйте и пишите, что помогло, а что нет.

В заключение хочу сказать, что на данный момент не существует надежного сто процентного способа отключить WebRTC в Chromium браузерах таких как: Chrome, Yandex, Opera и т.д. Поэтому я советуют всем, кто использует VPN и кому важна анонимность, временно прекратить пользоваться этими браузерами. Я думаю в скором будущем, эта дыра будет закрыта и вы сможете вернутся к ним. А пока можете временно переехать на Firefox.

На этом все. В следующих статьях будем говорить об анонимности и надежности VPN и публичных Proxy. Будет весело, будем ломать стереотипы. Вам это понравится;)!

Прежде всего нужно понять, что показ всех IP-адресов вашего компьютера/планшета/телефона посредством WebRTC - это не проблема или недостаток VPN/tor/socks, это проблема и недостаток браузера, которым вы пользуетесь.

Проект WebRTC создан Google для передачи потоковых данных (аудио и видео) преимущественно прямо между браузерами пользователей (p2p-соединения), без участия сторонних программ (например, Skype) или плагинов. Это подразумевает не просто доступ браузера с поддержкой WebRTC к сетевой среде (независимо от используемой операционной системы), а возможность определения публичного и локального IP-адреса посредством протокола STUN для установки p2p-соединения в обход всех видов NAT.

На данный момент известно, что по умолчанию WebRTC включён в браузерах Chrome (с версии 23), Firefox (с версии 22) и Opera (с версии 18), что в общем случае сводит на нет все способы анонимизации для пользователей этих браузеров. Чтобы нельзя было через WebRTC определить ваш публичный и локальный IP-адрес, нужно, как это ни странно, отключить его поддержку.

Отключение WebRTC в Firefox:

  • В адресной строке набрать about:config и нажать Enter
  • В строке Поиск ввести "media.peerconnection.enabled" и выполнить двойной клик по найденной строке, выставив тем самым поле Значение в "false".
Отключение WebRTC в Chrome и Opera:
  • На данный момент неизвестен способ отключения WebRTC средствами самих браузеров, а альтернативные решения в виде расширений мы советовать не можем (ищите и устанавливайте их на свой страх и риск), поскольку их эффективность оставляет желать лучшего. Поэтому, видимо, остаётся только посоветовать не пользоваться этими браузерами, пока разработчики не реализуют возможность отключения средствами самих браузеров (по аналогии с Firefox).
Отключение WebRTC на Android в Chrome:
  • В последних версиях браузера Chrome для Android невозможно отключить WebRTC, хотя такая опция есть в настройках.
  • Если вам нужно использовать браузер с отключенным WebRTC на Android, мы рекомендуем использовать Firefox для Android . На нем вы можете отключить WebRTC по той же самой инструкции для Firefox, которая есть выше.

WebRTC (Web Real Time Communications) — это стандарт, который описывает передачу потоковых аудиоданных, видеоданных и контента от браузера и к браузеру в режиме реального времени без установки плагинов или иных расширений. Стандарт позволяет превратить браузер в оконечный терминал видеоконференцсвязи, достаточно просто открыть веб-страницу, чтобы начать общение.

Что такое WebRTC?

В этой статье мы рассмотрим все, что необходимо знать о технологии WebRTC для обычного пользователя. Рассмотрим преимущества и недостатки проекта, раскроем некоторые секреты, расскажем как работает, где и для чего применяется WebRTC.

Что нужно знать про WebRTC?

Эволюция стандартов и технологий видеосвязи

Сергей Юцайтис, Cisco, Видео+Конференция 2016

Как работает WebRTC

На стороне клиента

  • Пользователь открывает страницу, содержащую HTML5 тег
  • Браузер запрашивает доступ к веб-камере и микрофону пользователя.
  • JavaScript код на странице пользователя контролирует параметры соединения (IP-адреса и порты сервера WebRTC или других WebRTC клиентов) для обхода NAT и Firewall.
  • При получении информации о собеседнике или о потоке со смикшированной на сервере конференцией, браузер начинает согласование используемых аудио и видео кодеков.
  • Начинается процесс кодирования и передача потоковых данных между WebRTC клиентами (в нашем случае, между браузером и сервером).

На стороне WebRTC сервера

Для обмена данными между двумя участниками видеосервер не требуется, но если нужно объединить в одной конференции несколько участников, сервер необходим.



Видеосервер будет получать медиа-трафик с различных источников, преобразовывать его и отправлять пользователям, которые в качестве терминала используют WebRTC.

Также WebRTC сервер будет получать медиа-трафик от WebRTC пиров и передавать его участникам конференции, которые используют приложения для настольных компьютеров или мобильных устройств, в случае наличия таковых.

Преимущества стандарта

  • Не требуется установка ПО.
  • Очень высокое качество связи, благодаря:
    • Использованию современных видео (VP8, H.264) и аудиокодеков (Opus).
    • Автоматическое подстраивание качества потока под условия соединения.
    • Встроенная система эхо- и шумоподавления.
    • Автоматическая регулировка уровня чувствительности микрофонов участников (АРУ).
  • Высокий уровень безопасности: все соединения защищены и зашифрованы согласно протоколам TLS и SRTP.
  • Есть встроенный механизм захвата контента, например, рабочего стола.
  • Возможность реализации любого интерфейса управления на основе HTML5 и JavaScript.
  • Возможность интеграции интерфейса с любыми back-end системами с помощью WebSockets.
  • Проект с открытым исходным кодом — можно внедрить в свой продукт или сервис.
  • Настоящая кросс-платформенность: одно и то же WebRTC приложение будет одинаково хорошо работать на любой операционной системе, десктопной или мобильной, при условии, что браузер поддерживает WebRTC. Это значительно экономит ресурсы на разработку ПО.

Недостатки стандарта

  • Для организации групповых аудио и видеоконференций требуется сервер ВКС, который бы микшировал видео и звук от участников, т.к. браузер не умеет синхронизировать несколько входящих потоков между собой.
  • Все WebRTC решения несовместимы между собой, т.к. стандарт описывает лишь способы передачи видео и звука, оставляя реализацию способов адресации абонентов, отслеживания их доступности, обмена сообщениями и файлами, планирования и прочего за вендором.
  • Другими словами вы не сможете позвонить из WebRTC приложения одного разработчика в WebRTC приложение другого разработчика.
  • Микширование групповых конференций требует больших вычислительных ресурсов, поэтому такой тип видеосвязи требует покупки платной подписки либо инвестирования в свою инфраструктуру, где на каждую конференцию требуется 1 физическое ядро современного процессора.

Секреты WebRTC: как вендоры извлекают пользу из прорывной веб-технологии


Цахи Левент-Леви, Bloggeek.me, Видео+Конференция 2015

WebRTC для рынка ВКС

Увеличение числа ВКС-терминалов

Технология WebRTC оказала сильное влияние на развитие рынка ВКС. После выхода в свет первых браузеров с поддержкой WebRTC в 2013 году потенциальное количество терминалов видеоконференцсвязи по всему миру сразу увеличилось на 1 млрд. устройств. По сути, каждый браузер стал ВКС терминалом, не уступающий своим аппаратным аналогам с точки зрения качетсва связи.

Использование в специализированных решениях

Использование различных JavaScript библиотек и API облачных сервисов с поддержкой WebRTC позволяет легко добавить поддержку видеосвязи в любые веб-проекты. Ранее для передачи данных в реальном времени разработчикам приходилось изучать принципы работы протоколов и использовать наработки других компаний, которые чаще всего требовали дополнительного лицензирования, что увеличивало расходы. Уже сейчас WebRTC активно используется в сервисах вида “Позвонить с сайта”, “Онлайн-чат поддержки”, и т.п.

Ex-пользователям Skype для Linux

В 2014 году Microsoft объявила об прекращении поддержки проекта Skype для Linux, что вызвало большое раздражение у IT-специалистов. Технология WebRTC не привязана к операционной системе, а реализована на уровне браузера, т.е. Linux пользователи смогут увидеть в продуктах и сервисах на основе WebRTC полноценную замену Skype.

Конкуренция с Flash

WebRTC и HTML5 стали смертельным ударом для технологии Flash, которая и так переживала свои далеко не лучшие годы. С 2017 года ведущие браузеры официально перестали поддерживать Flash и технология окончательно исчезла с рынка. Но нужно отдать Flash должное, ведь именно он создал рынок веб-конференций и предложил технические возможности для живого общения в браузерах.

Видеопрезентации WebRTC

Дмитрий Одинцов, TrueConf, Видео+Конференция октябрь 2017

Кодеки в WebRTC

Аудиокодеки

Для сжатия аудио-трафика в WebRTC используются кодеки Opus и G.711.

G.711 — самый старый голосовой кодек с высоким битрейтом (64 kbps), который чаще всего применяется в системах традиционной телефонии. Основным достоинством является минимальная вычислительная нагрузка из-за использования легких алгоритмов сжатия. Кодек отличается низким уровнем компрессии голосовых сигналов и не вносит дополнительной задержки звука во время общения между пользователями.

G.711 поддерживается большим количеством устройств. Системы, в которых используется этот кодек, более легкие в применении, чем те, которые основаны на других аудиокодеках (G.723, G.726, G.728 и т.д.). По качеству G.711 получил оценку 4.2 в тестировании MOS (оценка в пределах 4-5 является самой высокой и означает хорошее качество, аналогичное качеству передачи голосового трафика в ISDN и даже выше).

Opus — это кодек с низкой задержкой кодирования (от 2.5 мс до 60 мс), поддержкой переменного битрейта и высоким уровнем сжатия, что идеально подходит для передачи потокового аудиосигнала в сетях с переменной пропускной способностью. Opus - гибридное решение, сочетающее в себе лучшие характеристики кодеков SILK (компрессия голоса, устранение искажений человеческой речи) и CELT (кодирование аудиоданных). Кодек находится в свободном доступе, разработчикам, которые его используют, не нужно платить отчисления правообладателям. По сравнению с другими аудиокодеками, Opus, несомненно, выигрывает по множеству показателей. Он затмил довольно популярные кодеки с низким битрейтом, такие, как MP3, Vorbis, AAC LC. Opus восстанавливает наиболее приближенную к оригиналу “картину” звука, чем AMR-WB и Speex. За этим кодеком - будущее, именно поэтому создатели технологии WebRTC включили его в обязательный ряд поддерживаемых аудиостандартов.

Видеокодеки

Вопросы выбора видеокодека для WebRTC заняли у разработчиков несколько лет, в итоге решили использовать H.264 и VP8. Практически все современные браузеры поддерживают оба кодека. Серверам видеоконференций для работы с WebRTC достаточно поддержать только один.

VP8 — свободный видеокодек с открытой лицензией, отличается высокой скоростью декодирования видеопотока и повышенной устойчивостью к потере кадров. Кодек универсален, его легко внедрить в аппаратные платформы, поэтому очень часто разработчики систем видеоконференцсвязи используют его в своих продуктах.

Платный видеокодек H.264 стал известен намного раньше своего собрата. Это кодек с высокой степенью сжатия видеопотока при сохранении высокого качества видео. Высокая распространенность этого кодека среди аппаратных систем видеоконференцсвязи предполагает его использование в стандарте WebRTC.

Компании Google и Mozilla активно продвигают кодек VP8, а Microsoft, Apple и Cisco — H.264 (для обеспечения совместимости с традиционными системами видеоконференцсвязи). И вот тут возникакет очень большая проблема для разработчиков облачных WebRTC решений, ведь если в конференции все участники используют один браузер, то конференцию достаточно микшировать один раз одним кодеком, а если браузеры разные и среди них есть Safari / Edge, то конференцию придётся кодировать два раза разными кодеками, что в два раза повысит системные требования к медиа-серверу и как следствие, стоимость подписок на WebRTC сервисы.

WebRTC API

Технология WebRTC базируется на трех основных API:

  • (отвечает за принятие веб-браузером аудио и видеосигнала от камер или рабочего стола пользователя).
  • RTCPeerConnection (отвечает за соединение между браузерами для “обмена” полученными от камеры, микрофона и рабочего стола, медиаданными. Также в “обязанности” этого API входит обработка сигнала (очистка его от посторонних шумов, регулировка громкости микрофона) и контроль над используемыми аудио и видеокодеками).
  • RTCData Channel (обеспечивает двустороннюю передачу данных через установленное соединение).

Прежде чем получить доступ к микрофону и камере пользователя, браузер запрашивает на это разрешение. В Google Chrome можно заранее настроить доступ в разделе “Настройки”, в Opera и Firefox выбор устройств осуществляется непосредственно в момент получения доступа, из выпадающего списка. Запрос на разрешение будет появляться всегда при использовании протокола HTTP и однократно, если использовать HTTPS:


RTCPeerConnection . Каждый браузер, участвующий в WebRTC конференции, должен иметь доступ к данному объекту. Благодаря использованию RTCPeerConnection медиаданные от одного браузера к другому могут проходить даже через NAT и сетевые экраны. Для успешной передачи медиапотоков участники должны обменяться следующими данными с помощью транспорта, например, веб-сокетов:

  • участник-инициатор направляет второму участнику Offer-SDP (структура данных, с характеристиками медиапотока, которые он будет передавать);
  • второй участник формирует “ответ” — Answer-SDP и пересылает его инициатору;
  • затем между участниками организуется обмен ICE-кандидатами, если таковые обнаружены (если участники находятся за NAT или сетевыми экранами).

После успешного завершения данного обмена между участниками организуется непосредственно передача медиапотоков (аудио и видео).

RTCData Channel . Поддержка протокола Data Channel появилась в браузерах сравнительно недавно, поэтому данный API можно рассматривать исключительно в случаях использования WebRTC в браузерах Mozilla Firefox 22+ и Google Chrome 26+. С его помощью участники могут обмениваться текстовыми сообщениями в браузере.

Подключение по WebRTC

Поддерживаемые десктопные браузеры

  • Google Chrome (17+) и все браузеры на основе движка Chromium;
  • Mozilla FireFox (18+);
  • Opera (12+);
  • Safari (11+);

Поддерживаемые мобильные браузеры для Android

  • Google Chrome (28+);
  • Mozilla Firefox (24+);
  • Opera Mobile (12+);
  • Safari (11+).

WebRTC, Microsoft и Internet Explorer

Очень долго Microsoft хранила молчание по поводу поддержки WebRTC в Internet Explorer и в своём новым браузере Edge. Ребята из Редмонда не очень любят давать в руки пользователей технологии, которые они не контролируют, вот такая вот политика. Но постепенно дело сдвинулось с мёртвой точки, т.к. игнорировать WebRTC далее было уже нельзя, и был анонсирован проект ORTC, производный от стандарта WebRTC.

По словам разработчиков ORTC — это расширение стандарта WebRTC с улучшенным набором API на основе JavaScript и HTML5, что в переводе на обычный язык означает, что всё будет то же самое, только контролировать стандарт и его развитие будет Microsoft, а не Google. Набор кодеков расширен поддержкой H.264 и некоторым аудиокодеками серии G.7ХХ, используемыми в телефонии и аппаратных ВКС системах. Возможно появится встроенная поддержка RDP (для передачи контента) и обмена сообщениями. Кстати, пользователям Internet Explorer не повезло, поддержка ORTC будет только в Edge. Ну и, естественно, такой набор протоколов и кодеков малой кровью стыкуется со Skype for Business, что открывает для WebRTC ещё больше бизнес применений.

Для улучшения конфиденциальности и безопасности пользователей при использовании веб-браузера.

VPN-клиент бесплатен в использовании, не накладывает ограничений в отношении пропускной способности или объема трафика, поэтому нет оснований для отказа от использования функции, если конечно Вы уже не используете VPN с полным покрытием системы.

Одна из причин, по которой норвежская компания добавила VPN - улучшение приватности путем обеспечения анонимности пользователей при использовании браузера.

Как и в случае с любым другим решением VPN или прокси, важно убедиться, что основная программы не допускает утечку информации на удаленные сервера.

Если Вы включили функцию VPN в Opera, то при проверке потенциальных утечек, Вы заметите следующее:

  1. Обычные проверки IP-адреса показывают только IP-адрес VPN-сервера, а не реальный адрес компьютера;
  2. Проверка утечки WebRTC показывает локальный и удаленный IP-адрес компьютера.

Opera, как и многие другие современные веб-браузеры поддерживает протокол WebRTC, а значит может пропускать утечку реального IP-адреса даже при использовании VPN.

Некоторые браузеры, такие как Firefox позволяют отключать WebRTC полностью, в то время как другие продукты не предлагают данную функциональность. Учитывая, что WebRTC может использоваться сайтами в целях идентификации, даже если Вы используете VPN или прокси, Вы наверняка захотите отключить технологию, если ей не пользуетесь.

Блокируем утечку IP-адреса в Opera VPN

Opera не имеет встроенных опций для отключения WebRTC, но Вы можете установить браузерное расширение, которое контролирует утечки WebRTC в браузере и улучшает конфиденциальность при использовании встроенной в Opera функции VPN или решений VPN с полным покрытием системы.

Загрузите и установите расширение WebRTC Leak Prevent в браузер Opera. Вы заметите, что плагин блокирует доступ к локальному IP-адресу компьютера, но публичный IP-адрес по-прежнему передается реализацией WebRTC.

Для устранения данной утечки, откройте настройки расширения. Открыть список всех установленных дополнений можно, введя в адресную строку браузера адрес страницы opera://extensions/ и нажмите по кнопке Настройки рядом с названием WebRTC Leak Prevent.

На странице настроек нужно сделать следующее:

  1. Проверьте, чтобы опция "Prevent WebRTC from using non-proxied UDP" была включена;
  2. В секции “IP handling policy” выберите значение "Disable non-proxied UDP (force proxy)".

Как известно, многие современные браузеры поддерживают протокол WebRTC , что может быть причиной утечки реального IP -адреса даже при использовании VPN. Тема уже поднималась в моем блоге, настал черёд рассказать об этом в подробностях, с конкретными советами как определить и, при необходимости, отключить Real-Time Communications (с англ. "коммуникации в реальном времени") в популярных программах , Chrome, Yandex.Browser, Opera и Vivaldi.

WebRTC – общедоступный проект, поддерживаемый компаниями Google и Mozilla, который разрешает онлайн-передачу потоковых данных без плагинов, только при помощи API на базе Javascript. В WebRTC задействованы видеокодеки VP8 и H.264, а также два аудиокодека, G711 и OPUS. Благодаря технологии, веб-серферы имеют возможность общаться между собой, а сайты – организовывать голосовые и видеочаты с посетителями.

Вроде бы "полезность" востребованная, в чем подвох?

Во-первых, в вышеперечисленных приложениях "коммуникации в реальном времени" включены по умолчанию, и веб-сервисы могут без разрешений использовать сей протокол. Во-вторых, если активировать VPN в , при проверке потенциальных утечек заметно следующее:

  • обычные проверки IP -адреса показывают только адрес VPN -сервера, а не реальный IP компьютера;
  • проверка утечки WebRTC фиксирует локальный и удаленный IP -адрес десктопа (ноутбука).

Другими словами, Real-Time Communications дают сайтам максимум идентифицирующей информации, даже при "сидении" на VPN или прокси.

Проверяем использование WebRTC в браузере

Все просто: в и обозревателях на его движке (Opera / / Vivaldi) скопируйте в адресную строку команду chrome://webrtc-internals и нажмите "Enter ", дабы отобразить соответствующие соединения.

Аналогичным образом, в Mozilla Firefox откройте страницу about:webrtc , где обратите внимание на раздел "Статистика сессии ".

Important!

Отображение WebRTC -соединений не означает, что была 100% утечка вашего локального и удаленного IP .

Отключаем WebRTC в Firefox, Chrome, Яндекс.Браузере, Opera, Vivaldi

  • Для блокировки утечки в Firefox наберите в адресной строке about:config и задействуйте клавишу "Enter " → не пугаясь "грозной" надписи, щелкните по "Я обещаю, что буду осторожен!" → скопируйте в окно поиска media.peerconnection.enabled и дважды кликните по найденному параметру, сменив значение с "true " на "false ".

  • К чести , деактивация WebRTC интегрирована в основные настройки программы, смотрите в меню "Инструменты " одноименный пункт ("горячая" комбинация "Alt + P ") → "Приватность " → снимите галку с опции "Транслировать IP для лучшей производительности WebRTC ".
  • Дабы отключить "коммуникации в реальном времени" в Chrome / Yandex.Browser / Opera, найдите в Интернет-магазине Google и установите в браузер расширение uBlock Origin либо WebRTC Leak Prevent.

Important!

Дмитрий dmitry_spb Евдокимов