Шифрование трафика от провайдера – Провайдер может расшифровать HTTPS трафик? Если нет, то не понятно что они будут хранить по закону Яровой?

alexxlab
alexxlab
06.04.2020

Краткий справочник анонима. Виды шифрования и защиты трафика, выбор софта

Содержание статьи

Неважно, по каким причинам ты решил шифровать то, что пересылаешь через интернет. Это может быть забота о секретности личных данных, попытка обойти запреты того или иного государства или другие мотивы. В современном мире простым людям доступен неплохой выбор криптостойких шифрованных протоколов и программ, которые их реализуют. В этой статье мы пройдемся по всем классам таких решений (пусть многие из них и широко известны), обсудим надежность и посмотрим, какие доступны реализации.

 

Справочник анонима

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

Другие статьи цикла:

Если для тебя эти материалы тривиальны — отлично! Но ты сделаешь доброе дело, отправив ссылку на них своим друзьям, знакомым и родственникам, менее подкованным в технических вопросах.

 

Прокси-серверы

Прокси-серверы — самый доступный способ анонимизировать трафик: они дешевы и широко распространены. Их принцип работы очень прост: прокси — это почтальон, который доставляет конверты с письмами вместо тебя, аккуратно стирая имя отправителя, и возвращает ответ лично тебе в руки.

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

Схема работы прокси-сервера

Работая через прокси, компьютер все свои запросы перенаправляет через посредника (прокси-сервер), и уже посредник, представляясь твоим компьютером, запрашивает данные у сайтов. Прокси-серверы узкоспециализированы, поэтому на каждый тип интернет-соединения имеется свой тип прокси. Например, для FTP (File Transfer Protocol) есть FTP-прокси. Подробно мы разберем три типа прокси-серверов.

HTTP и HTTPS могут работать только с запросами HTTP, а вся разница между ними в том, что HTTPS шифрует передаваемые данные, а HTTP — нет. Поэтому прокси HTTP не рекомендуются к пользованию, они могут лишь менять адрес IP, а данные защитить они неспособны. Также будь осторожен с выбором самого прокси-сервера, так как некоторые не только не защитят твои данные, но и могут раскрыть личность.

INFO

Обращай внимание на тип сервера — transparent proxy или anonymous proxy. Первые не будут скрывать твою личность!

Использовать такой прокси несложно: найди в интернете или создай сервер, которому сможешь доверять, и, открыв настройки браузера (доступ к сети), введи данные.

Тип SOCKS применяется в тех приложениях, которые либо не используют HTTP и HTTPS, либо не имеют встроенной поддержки прокси-серверов. В отличие от предыдущего типа, этот априори не будет публиковать твой IP, поэтому об анонимности можно не беспокоиться. Однако SOCKS сам по себе не предоставляет никакого шифрования, это лишь транспортный протокол. Чтобы применять его, есть, например, утилита Shadowsocks.

SOCKS4 и SOCKS5 — это разные версии серверов. Убедительно рекомендую использовать пятую версию, так как она имеет много возможностей и более безопасна. Например, поддерживает использование логина и пароля, запросы DNS. А лучше даже использовать Shadowsocks — это SOCKS5 на стероидах. Тут есть и мощное шифрование, и скрытие трафика, и возможность обходить различные блокировки. Есть клиенты как для компьютера, так и для смартфона, позволяющие оставаться под защитой постоянно.

Чтобы начать использовать SOCKS в привычных программах, не нужно ничего особенного. В Firefox и µTorrent эта функция встроена и доступна в настройках. Для Google Chrome есть расширение Proxy Helper. Можно воспользоваться универсальными программами вроде SocksCap или ProxyCap.

Список множества бесплатных HTTP, HTTPS и SOCKS прокси-серверов можно найти либо с помощью поиска, либо в Википедии.

 

VPN

VPN (Virtual Private Network — виртуальная частная сеть) также изначально не задумывалась как средство защиты и анонимизации трафика. Ее задачей было объединить компьютеры в единую сеть, даже если они находятся за множество километров друг от друга. Ключевой особенностью стало то, что соединения VPN всегда защищались шифрованием, так как использовались в корпорациях и позволяли подключать несколько филиалов к головному офису.

VPN имеет два режима: объединение двух локальных сетей между собой через интернет и подключение отдельного компьютера к удаленной локальной сети (удаленный доступ). Последний и послужил основой для некоммерческого, персонального варианта. Защита данных в соединении VPN предоставляется двумя техниками, которые зачастую используются вместе:

  • PPP (Point-to-Point Protocol) используется для защиты на уровне канала данных, то есть на самом низком из возможных. Его задача — обеспечить стабильное соединение между двумя точками в интернете, а также предоставить шифрование и аутентификацию.
  • PPTP (Point-to-Point Tunneling Protocol) является расширением и дополнением PPP. Для работы этого протокола устанавливается два соединения — основное и управляющее.

Из-за того что придуман этот протокол был в далеком 1999 году его безопасность оставляет желать лучшего. Ни один из методов шифрования, работающих с PPTP, не устойчив. Часть из них подвержена расшифровке даже в автоматическом режиме. Потому я не советую использовать PPTP. Этот протокол имеет серьезные уязвимости как в аутентификации, так и в шифровании и позволяет злоумышленнику очень быстро вскрыть канал и получить доступ к данным.

Более новый способ создания соединения — еще один протокол, построенный поверх PPP, —

L2TP (Layer 2 Tunneling Protocol). Цель этого протокола — не столько защитить соединение, сколько полностью регламентировать процесс сообщения компьютеров в сети. Данный протокол, кроме создания соединений VPN, также используется, например, для подключения банкоматов к офисам банков, что служит некоторой гарантией. Хотя и стоит учесть, что собственного шифрования у L2TP нет.

L2TP не защищает сами данные, передаваемые в его рамках. Для этого обычно используется протокол IPsec (IP security). Он призван защищать содержимое пакетов IP и благодаря этому может шифровать любые виды соединений. Для VPN из двух возможных режимов используется лишь туннельный, защищающий не только данные передаваемого пакета в сети, но и его заголовки. Благодаря этому со стороны не будет видно, кто отправитель данных.

IKE и IKEv2 (Internet Key Exchange)

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

С распространением SSL и TLS протокол PPP был расширен до SSTP (Secure Socket Tunneling Protocol) и в таком виде работает не через открытое соединение, а по SSL. Это гарантирует надежное шифрование и защиту от потери пакетов. Но стоит учитывать, что SSTP был разработан в Microsoft, а Microsoft сотрудничает с правительствами, поэтому доверять SSTP можно только с учетом этого.

OpenVPN — самое популярное решение для создания защищенного соединения. Этот протокол открыт и предоставляет самую серьезную защиту, поэтому ему можно доверять. Настройка соединения вряд ли займет больше пары минут.

SoftEther — мультиклиент для работы как с описанными выше протоколами, включая OpenVPN, так и со своим собственным, не менее безопасным, чем OpenVPN.

В таблице ниже — небольшое резюме по этим решениям.

Сравнение протоколов VPN

 

Tor

Tor (The Onion Router) — одно из лучших средств для обеспечения анонимности в Сети. Схема работы подразумевает трехкратную защиту данных и анонимизацию трафика.

Как описано в самом названии, Tor использует так называемую луковую маршрутизацию: твои данные — это сердцевина лука, а их защита — слои вокруг. Так, каждый из промежуточных серверов Tor снимает свой слой защиты, и только третий, последний из них, достает сердцевину и отправляет запрос в интернет.

Схема работы компьютера в сети Tor

Работу всей системы обеспечивают тысячи энтузиастов по всему миру, борющиеся за права человека и приватность. Благодаря этому для каждого отдельного сайта строится собственная цепочка промежуточных серверов Tor, что дает полную защиту: каждый сайт — новая личность.

Большой плюс Tor — стабильность работы и большая забота об анонимности: благодаря усердиям многих специалистов он работает даже в Китае, стране, которая широко известна своим строжайшим подходом к блокировкам и наказаниями за их обход.

Для упрощения жизни пользователям разработчики создали Tor Browser, основанный на Firefox, и улучшили его дополнениями, запрещающими сайтам следить за тобой. Например, HTTPS Everywhere заставляет веб-сайты использовать шифрование, а NoScript отключает выполнение скриптов на странице, фактически запрещая собирать любые данные пользователя.

Скачать Tor, как и прилагающийся к нему браузер, можно на официальном сайте проекта Tor Project.

 

DPI

К сожалению, все эти средства могут оказаться бесполезными, если твой провайдер начал блокировки с применением DPI (Deep Packet Inspection) — системы глубокого анализа сетевого трафика. Цель DPI — отбрасывать все, что не похоже на работу обычного человека за обычным компьютером, то есть блокировать любую подозрительную активность. А все способы анонимизации трафика априори подозрительны, поэтому программы зачастую дают сбои или в принципе отказываются работать.

Но и с этим можно бороться. Почти для каждой из описанных возможностей защищать канал связи есть надстройки, помогающие обходить зоркое око анализаторов DPI. Например, Shadowsocks имеет встроенную защиту от DPI и притворяется, что выполняет обычное подключение к удаленному серверу.

OpenVPN сам по себе легко различим, но stunnel позволяет также обойти анализ пакетов. Stunnel маскирует канал VPN под соединение SSL, которое с виду безобидно: это может быть и простой браузер, который обращается к сайту по HTTPS. Благодаря этому заблокировать такой туннель непросто. Если перестараться, можно заблокировать вообще все.

Обходить DPI также помогает tls-crypt, режим, введенный в версии OpenVPN 2.4, который шифрует трафик VPN.

Создатели Tor Browser специально работают над обходом средств анализа DPI. При подключении к сети Tor можно воспользоваться транспортом-прослойкой, которая обеспечивает беспрепятственное подключение к первому серверу защищенной сети. Этот транспорт можно либо выбрать из списка (это общедоступные серверы), либо получить персональный на официальном сайте Tor Bridges.

Лучше всего себя показывает

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

Еще есть несколько программ, которые пытаются тем или иным способом обмануть анализ пакетов, например разбивая их на мелкие части или меняя заголовки. В их числе GoodbyeDPI или Green Tunnel с простым графическим интерфейсом — они не скрывают ни IP, ни данные, но обходят блокировку.

Кардинальным решением можно считать проект Streisand, его русское описание есть на GitHub. Это палочка-выручалочка в мире безопасности данных. Эта утилита всего за несколько минут развертывает и настраивает на удаленном сервере сразу несколько сервисов для защиты данных, а также дает подробную инструкцию по ним.

 

Итог

Для сохранения нашей с тобой интернет-безопасности и анонимности придумано множество технологий самого разного уровня. Часть из них проверена временем, другая помогает против новейших методов цензуры. Благодаря этому мы еще можем оставаться невидимыми, нужно лишь не забывать пользоваться этой возможностью.

Безопасность (шифрование) трафика / Habr

Параллельно с развитием технологий защиты интернет-трафика от несанкционированного доступа развиваются и технологии перехвата защищенного трафика. Перехватить и изучить незашифрованный трафик пользователя уже давно не составляет труда даже для рядового юзера. Практически каждому известно слово «сниффер». Теоретически, защищенные SSL/TSL-соединения перехватить обычными средствами невозможно. Но так ли это?

На самом деле — не совсем так. Да, зашифрованный трафик теоретически невозможно расшифровать, хотя опять таки теоретически при очень большой необходимости и желании, и такой трафик можно расшифровать, подобрав ключ. Однако для этого нужны такие затраты ресурсов, что актуальность взлома сохраняется только, наверное, на правительственном или военном уровне 🙂

При работе по защищенному соединению (самый просто пример — HTTPS) весь трафик между взаимодействующими точками в сети шифруется на стороне отправителя и дешифруется на стороне получателя. Шифруется трафик, идущий в обоих направлениях. Для того, чтобы его зашифровать и расшифровать нужна пара ключей (ассиметричное шифрование). Публичный ключ служит для зашифрования и передается получателю данных, а приватный — для дешифрования, он остается у отправителя. Таким образом, узлы, между которыми устанавливается SSL-соединение, обмениваются публичными ключами. Далее, для повышения производительности формируется единый ключ, который пересылается уже в зашифрованном виде и используется как для шифрации, так и для дешифрации на обеих сторонах (симметричное шифрование).

А как они это делают? Обычно — по тому же каналу, по которому далее будет идти защищенный трафик. Причем обмен ключами происходит в открытом режиме. В случае HTTPS ключ сервера связан с сертификатом, который пользователю предлагается просмотреть и принять. И вот этот сертификат как раз и может перехватить любой промежуточный сервер, на пути которого идет сертификат в открытом виде (прокси, роутер).

Чтобы далее «читать» весь трафик пользователя, промежуточный сервер подменяет сертификат на свой. Т.е. он просто сам подключается к клиенту со своим сертификатом, и в то же время подключается к удаленному серверу. Клиенту приходит «левый» сертификат от сервера-злоумышленника, а браузер сообщает пользователю об опасности (такие сертификаты всегда не подписаны). У пользователя остается выбор: принять сертификат и работать с сайтом, либо отказаться его принимать, но и работать с сайтом тогда уже не получится. Иногда пользователи вообще игнорируют содержимое сертификатов и машинально принимают любые переданные им.

Если пользователь принимает сертификат-подделку, то трафик будет идти по следующей схеме:

клиент <= SSL-соединение => сервер-прослушка <= SSL-соединение => сервер назначения

Т.е. промежуточный сервер будет получать весь ваш «защищенный» трафик в открытом виде. Стоит также заметить, что передача сертификата происходит в начале каждой сессии HTTPS.

В случае защищенного SSH при первом соединении с сервером на клиенте сохраняется ключ сервера, а на сервере — ключ клиента. Эти ключи передаются между данными клиентом-сервером только один раз, при первом подключении. Если в этом случае SSH-трафик попытаются перехватить, то и клиент, и сервер откажут в соединении из-за несоответствия ключей. Так как ключи можно перенести между клиентом и сервером обходным путем (по защищенному каналу или на внешнем носителе), этот способ соединения является относительно безопасным. Его могут лишь заблокировать, заставив пользователя работать в открытую.

Стоит отметить, что уже давно продаются так называемые «решения по информационной безопасности предприятия», которые перехватывают весь трафик, проходящий через офисный прокси-сервер, и «читают» его. Программы ищут наличие определенных фраз или информации определенного вида в потоке данных от браузеров, почтовых программ, ftp-клиентов, мессенджеров сотрудников офиса. Причем, эти программы умеют различать и обрабатывать правильно самые разные виды информационного взаимодействия с серверами. В том числе, они проверяют и защищенный SSL-трафик путем подмены сертификатов. С разработкой одной из таких систем я сталкивался почти непосредственно.

Но пути спасения от тотальной слежки есть. Через установленное SSH-соединение можно направлять любой нужный трафик, который с SSH-сервера будет уже в открытом виде идти на конечную точку. Этот способ называется SSH-туннелинг (tunneling). Так можно обезопасить прохождение трафика по незащищенному каналу, но имеет смысл такой подход только при наличии доверенного сервера с поднятым и настроенным на туннелинг SSH-демоном. Причем организовать это достаточно просто. SSH-клиент подключается к серверу, настраивается на прослушку любого данного порта на локальной машине. Этот клиент будет предоставлять услугу SOCKS5-прокси, т.е. его использование можно настроить в любом браузере, почтовых программах, IM-ах и т.д. Через SSH-туннель пакеты попадают на сервер, а с него уходят на целевой сервер. Схема получается следующая:

[localhost: клиент <=> proxy] <== SSH-соединение ==> сервер <=> целевой сервер

Другой способ защиты трафика — VPN-канал. В использовании он проще и удобнее SSH-туннелинга, но в первичной установке и настройке сложнее. Основное удобство этого способа в том, что в программах не нужно прописывать прокси. А некоторый софт и вовсе прокси не поддерживает, следовательно только VPN и подойдет.

На практике есть два варианта работы. Первый — покупка VPN-акканута, который продается специально для этих целей (шифрование трафика по небезопасному каналу). В этом случае продаются обычно аккаунты, соединяться с которыми надо по протоколам PPTP (обычный VPN, который реализован, например, в Windows) или L2TP.

Второй вариант — покупка VDS-сервера (виртуальный выделенный сервер) с любым дистрибутивом линукса на борту и поднятие на нем VPN-сервера. VDS может быть российским или американским (только не забывайте про заокеанские пинги), дешевым (от $5) и слабым или дорогим и помощнее. На VDS ставят OpenVPN-сервер, а на компьютере поднимается OpenVPN-клиент. Для Windows есть даже гуишная версия клиента.

Если вы решите использовать вариант с OpenVPN, то есть например эта простая пошаговая инструкция по поднятию сервера (Debian). Установить клиента еще проще, особенно под Windows. Отметить стоит только один нюанс. Если весь трафик требуется пустить по созданному VPN-соединению, то требуется прописать default gateway на шлюз VPN (параметр redirect-gateway в конфиге клиента), а если только часть трафика (на определенные хосты), то можно прописать обычные статические маршруты на данные хосты (по IP; например, route add -p 81.25.32.25 10.7.0.1).

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

Таким образом, SSH- и VPN-соединения могут практически полностью гарантировать безопасность вашего трафика при перемещении по незащищенному каналу. Единственная проблема, которая может возникнуть в этом случае, — это запрет на SSL-трафик на корпоративном файрволе. Если SSL-трафик разрешен хотябы на один любой порт (обычно дефолтный 443), то вы уже потенциально можете поднять и SSH-тонель, и VPN-соединение, настроив соответствующего демона на вашем VDS на этот порт.

«Зачем нужно шифровать трафик? Каким образом это можно сделать?» – Яндекс.Кью

Почему нужно шифровать интернет трафик?
Каждый раз, когда мы выходим в интернет всё, что мы делаем в интернете, записывается на серверах «органов», через которые проходит весь трафик (поток информации) всех провайдеров и всех хостингов. В России перехватом и анализом интернет трафика занимается система «СОРМ-2», в США и странах НАТО — система «ЭШЕЛОН».

Что такое система СОРМ?
СОРМ расшифровывается как «система оперативно-розыскных мероприятий», подразделяется на две системы: СОРМ-1 и СОРМ-2. Первая предназначена для контроля телефонной связи, вторая анализирует Интернет-трафик. В соответствии с документами, Интернет-провайдер на свои деньги был обязан установить оборудование, программы и выделенную линию для местного отделения ФСБ, а также провести обучение сотрудников. Все это позволяет последним отслеживать, перехватывать и прерывать связь любого клиента этого провайдера. На данный момент практически все российские провайдеры провели данные работы. Принцип функционирования СОРМ-2 похож на принцип работы Эшелона, т. е. подобным образом происходит обработка и накопление информации по ключевым словам. Системы подобные СОРМ существуют во многих других странах, например, в США и странах НАТО.
Что такое система Эшелон?
Эшелон — американская сеть глобального электронного шпионажа. Эшелон может перехватывать информацию, передаваемую практически по любым каналам связи (спутниковым, цифровым) в любой точке планеты. Источниками информации служат Интернет, электронная почта, телефон, факс, телекс. Эшелон — включает в себя более ста спутников-шпионов, большое количество суперсовременных и мощных компьютеров, множество наземных станций, расположенных по всему миру, на которых работают десятки тысяч сотрудников — программисты, криптологи, математики, лингвисты… Принцип работы системы Эшелон приблизительно следующий: каналы связи постоянно сканируются сверхмощными компьютерами, если проходящее сообщение содержит ключевое слово, выражение или тембр голоса (например, голос Бин Ладена), которое входит в так называемый словарь Эшелона, то сообщение записывается. Словарь Эшелона содержит огромное количество ключевых «слов» на многих языках мира и постоянно обновляется.

Как уйти от тотальной слежки COPM-2 и ЭШЕЛОН?
Нужно для выхода в сеть использовать VPN (Virtual Private Network) т.е шифровать весь исходящий/входящий трафик стойкими криптоалгоритмами вроде DES, чтобы ваш интернет провайдер не знал, какие сайты вы посещаете, с кем ведете переписку, какие файлы скачиваете и т.п. К примеру, если вы скачаете или выложите в сеть «пиратский» контент к вам домой могут заявиться «органы» и сообщить что вы нарушили права правообладателей контента. Как вам такая перспектива? Но, ваш провайдер не будет знать на каких сайтах вы были, то не узнают и спцслужбы, ведь именно провайдеры хранят и сливают по спецслужбам всю информацию о вашей интернет активности.

Как работает VPN?
Шифрование трафика — услуга платная, но если исходить из принципа что собственная безопасность чего-то стоит, то это не так уж и страшно. При использовании VPN ваш трафик шифруется, сжимается одним из алгоритмов архиваторов, отправляется на сервер VPN сервиса, там происходит расшифровка и передача трафика в интернет. Таким образом, в логах посещенных вами сайтов не будет вашего IP, там будет IP VPN сервера.

VPN сервис:

Возможности

  • VPN-цепочки (DoubleVPN, TripleVPN, QuadroVPN)
  • Прозрачный доступ к .onion и .bit ресурсам
  • VPN + Tor
  • Перенаправление портов
  • Дополнительные IP-адреса
  • Удаленная помощь в настройке VPN
  • 4096-битные RSA ключи аутентификации
  • Стойкое шифрование AES-256
  • Собственные DNS
  • Полный доступ к сети Интернет, P2P, VoIP и Torrent
  • Отсутствие ограничений скорости и трафика
  • Отсутствие логов

Ссылка: https://vk.cc/71eV5f

Скидочный купон: TOVIKO

Как спрятать DNS-запросы от любопытных глаз провайдера / Habr

Настройка 1.1.1.1 от Cloudflare и других DNS-сервисов по-прежнему требует навыков работы в командной строке



Шифрование трафика между вашим устройством и DNS-сервисом помешает посторонним лицам отслеживать трафик или подменить адрес

Смерть сетевого нейтралитета и ослабление правил для интернет-провайдеров по обработке сетевого трафика вызвали немало опасений по поводу конфиденциальности. У провайдеров (и других посторонних лиц, которые наблюдают за проходящим трафиком) уже давно есть инструмент, позволяющий легко отслеживать поведение людей в интернете: это их серверы доменных имен (DNS). Даже если они до сих пор не монетизировали эти данные (или не подменяли трафик), то наверняка скоро начнут.

DNS — это телефонный справочник Сети, выдающий фактический сетевой адрес IP, связанный с хостингом и доменными именами сайтов и других интернет-служб. Например, он превращает arstechnica.com в 50.31.169.131. Ваш интернет-провайдер предлагает DNS в пакете услуг, но он также может журналировать DNS-трафик — по сути, записывать историю ваших действий в интернете.

«Открытые» DNS-сервисы позволяют обходить сервисы провайдеров ради конфиденциальности и безопасности, а кое в каких странах — уклоняться от фильтрации контента, слежки и цензуры. 1 апреля (не шутка) компания Cloudflare запустила свой новый, бесплатный и высокопроизводительный DNS-сервис, предназначенный для повышения конфиденциальности пользователей в интернете. Он также обещает полностью скрыть DNS-трафик от посторонних глаз, используя шифрование.

Названный по своему IP-адресу, сервис 1.1.1.1 — это результат партнёрства с исследовательской группой APNIC, Азиатско-Тихоокеанским сетевым информационным центром, одним из пяти региональных интернет-регистраторов. Хотя он также доступен как «открытый» обычный DNS-резолвер (и очень быстрый), но Cloudflare ещё поддерживает два протокола шифрования DNS.

Хотя и разработанный с некоторыми уникальными «плюшками» от Cloudflare, но 1.1.1.1 — никак не первый DNS-сервис с шифрованием. Успешно работают Quad9, OpenDNS от Cisco, сервис 8.8.8.8 от Google и множество более мелких сервисов с поддержкой различных схем полного шифрования DNS-запросов. Но шифрование не обязательно означает, что ваш трафик невидим: некоторые службы DNS с шифрованием всё равно записывают ваши запросы в лог для различных целей.

Cloudflare пообещал не журналировать DNS-трафик и нанял стороннюю фирму для аудита. Джефф Хастон из APNIC сообщил, что APNIC собирается использовать данные в исследовательских целях: диапазоны 1.0.0.0/24 и 1.1.1.0/24 изначально были сконфигурированы как адреса для «чёрного» трафика. Но APNIC не получит доступ к зашифрованному трафику DNS.

Для пользователей подключить DNS-шифрование не так просто, как изменить адрес в настройках сети. В настоящее время ни одна ОС напрямую не поддерживает шифрование DNS без дополнительного программного обеспечения. И не все сервисы одинаковы с точки зрения софта и производительности.

Но учитывая важность вопроса — в последнее время во всех новостях говорят о превращении пользовательских данных в продукт — я решил посмотреть, как работает DNS-шифрование у Cloudflare. В итоге моя внутренняя лабораторная крыса победила — и я обнаружил, что тестирую и разбираю клиенты для нескольких провайдеров DNS через три протокола DNS-шифрования: DNSCrypt, DNS по TLS и DNS по HTTPS. Все они работоспособны, но предупреждаю: хотя процедура становится проще, но вряд ли вы сможете объяснить шифрование DNS родителям по телефону (если только они не опытные пользователи командной строки Linux).


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


Есть много причин для лучшей защиты DNS-трафика. Хотя веб-трафик и другие коммуникации могут быть защищены криптографическими протоколами, такими как Transport Layer Security (TLS), но почти весь трафик DNS передаётся незашифрованным. Это означает, что ваш провайдер (или кто-то другой между вами и интернетом) может регистрировать посещаемые сайты даже при работе через сторонний DNS — и использовать эти данных в своих интересах, включая фильтрацию контента и сбор данных в рекламных целях.


Как выглядит типичный обмен данными между устройством и DNS-резолвером

«У нас есть проблема “последней мили” в DNS, — говорил Крикет Лю, главный архитектор DNS в компании Infoblox, которая занимается информационной безопасностью. — Большинство наших механизмов безопасности решают вопросы коммуникаций между серверами. Но есть проблема с суррогатами резолверов на различных операционных системах. В реальности мы не можем их защитить». Проблема особенно заметна в странах, где власти более враждебно относятся к интернету.

В некоторой степени помогает использование DNS, который не ведёт логи. Но это всё равно не мешает злоумышленнику фильтровать запросы по контенту или перехватывать адреса методом пакетного перехвата или глубокой инспекции пакетов. Кроме пассивной прослушки есть угроза более активных атак на ваш DNS-трафик — спуфинг DNS-сервера со стороны провайдера или спецслужб с перенаправлением на собственный сервер для отслеживания или блокировки трафика. Что-то подобное (хотя, по-видимому, не злонамеренно), похоже, происходит со случайным перенаправлением трафика на адрес 1.1.1.1 из сети AT&T, судя по сообщениям на форумах DSLReports.

Наиболее очевидный способ уклонения от слежки — использование VPN. Но хотя VPN скрывают содержимое вашего трафика, для подключения к VPN может потребоваться запрос DNS. И в ходе VPN-сеанса запросы DNS тоже могут иногда направляться веб-браузерами или другим софтом за пределы VPN-тоннеля, создавая «утечки DNS», которые раскрывают посещённые сайты.

Вот где вступают в игру протоколы шифрования DNS: это DNSCrypt (среди прочих, его поддерживает OpenDNS от Cisco), DNS по TLS (поддерживается Сloudflare, Google, Quad9, OpenDNS) и DNS по HTTPS (поддерживается Сloudflare, Google и сервисом блокировки «взрослого» контента CleanBrowsing). Шифрование гарантирует, что трафик не просканируют и не изменят, и что запросы не получит и не обработает поддельный DNS-сервер. Это защищает от атак MiTM и шпионажа. DNS-прокси с одной из этих служб (непосредственно на устройстве или на «сервере» в локальной сети) поможет предотвратить DNS-утечки через VPN, поскольку прокси-сервер всегда будет самым быстрым DNS-сервером среди всех доступных.

Однако эта опция защиты недоступна массовому пользователю. Ни один из этих протоколов нативно не поддерживается ни одним DNS-резолвером, который идёт в комплекте с ОС. Все они требуют установки (и, вероятно, компиляции) клиентского приложения, которое действует как локальный «сервер» DNS, ретранслируя запросы, сделанные браузерами и другими приложениями вверх по течению к безопасному провайдеру DNS по вашему выбору. И хотя две из трёх данных технологий предлагаются на роль стандартов, ни один из проверенных нами вариантов пока не представлен в окончательном виде.

Поэтому если хотите погрузиться в шифрование DNS, то лучше взять для DNS-сервера в домашней сети Raspberry Pi или другое отдельное устройство. Потому что вы наверняка обнаружите, что настройка одного из перечисленных клиентов — это уже достаточно хакерства, чтобы не захотеть повторять процесс заново. Проще запросить настройки DHCP по локальной сети — и указать всем компьютерам на одну успешную установку DNS-сервера. Я много раз повторял себе это во время тестирования, наблюдая падение одного за другим клиентов под Windows и погружение в спячку клиентов под MacOS.


Сообщество DNSCrypt пыталось сделать доступный инструмент для тех, кто не обладает навыками работы в командной строке, выпустив программы DNSCloak (слева) под iOS и Simple DNSCrypt (справа) под Windows


Для полноты картины в исторической перспективе начнём обзор с самой первой технологии шифрования DNS — DNSCrypt. Впервые представленный в 2008 году на BSD Unix, инструмент DNSCrypt изначально предназначался для защиты не от прослушки, а от DNS-спуфинга. Тем не менее, его можно использовать как часть системы обеспечения конфиденциальности — особенно в сочетании с DNS-сервером без логов. Как отметил разработчик DNSCrypt Фрэнк Денис, гораздо больше серверов поддерживают DNSCrypt, чем любой другой вид шифрования DNS.

«DNSCrypt — это немного больше, чем просто протокол, — говорит Фрэнк Денис. — Сейчас сообщество и активные проекты характеризуют его гораздо лучше, чем мой изначальный протокол, разработанный в выходные». Сообщество DNSCrypt создало простые в использовании клиенты, такие как Simple DNSCrypt для Windows и клиент для Apple iOS под названием DNS Cloak, что делает шифрование DNS доступнее для нетехнических людей. Другие активисты подняли независимую сеть приватных DNS-серверов на основе протокола, помогающего пользователям уклониться от использования корпоративных DNS-систем.

«DNSCrypt — это не подключение к серверам конкретной компании, — сказал Денис. — Мы призываем всех поднимать собственные сервера. Сделать это очень дёшево и легко. Теперь, когда у нас есть безопасные резолверы, я пытаюсь решить задачу фильтрации контента с учётом конфиденциальности».

Для тех, кто хочет запустить DNS-сервер с поддержкой DNSCrypt для всей своей сети, лучшим клиентом будет DNSCrypt Proxy 2. Старая версия DNSCrypt Proxy по-прежнему доступна как пакет для большинства основных дистрибутивов Linux, но лучше загрузить бинарник новой версии непосредственно с официального репозитория на GitHub. Есть версии для Windows, MacOS, BSD и Android.

Опыт сообщества DNSCrypt по защите конфиденциальности воплощён в DNSCrypt Proxy. Программа легко настраивается, поддерживает ограничения по времени доступа, шаблоны для доменов и чёрный список IP-адресов, журнал запросов и другие функции довольно мощного локального DNS-сервера. Но для начала работы достаточно самой базовой конфигурации. Есть пример файла конфигурации в формате TOML (Tom’s Obvious Minimal Language, созданный соучредителем GitHub Томом Престоном-Вернером). Можете просто переименовать его перед запуском DNSCrypt Proxy — и он станет рабочим файлом конфигурации.

По умолчанию прокси-сервер использует открытый DNS-резолвер Quad9 для поиска и получения с GitHub курируемого списка открытых DNS-сервисов. Затем подключается к серверу с самым быстрым откликом. При необходимости можно изменить конфигурацию и выбрать конкретный сервис. Информация о серверах в списке кодируется как «штамп сервера». Он содержит IP-адрес поставщика, открытый ключ, информацию, поддерживает ли сервер DNSSEC, хранит ли провайдер логи и блокирует ли какие-нибудь домены. (Если не хотите зависеть от удалённого файла при установке, то можно запустить «калькулятор штампов» на JavaScript — и сгенерировать собственный локальный статичный список серверов в этом формате).

Для своего тестирования DNSCrypt я использовал OpenDNS от Cisco в качестве удалённого DNS-сервиса. При первых запросах производительность DNSCrypt оказалась немного хуже, чем у обычного DNS, но затем DNSCrypt Proxy кэширует результаты. Самые медленные запросы обрабатывались в районе 200 мс, в то время как средние — примерно за 30 мс. (У вас результаты могут отличаться в зависимости от провайдера, рекурсии при поиске домена и других факторов). В целом, я не заметил замедления скорости при просмотре веб-страниц.

Основное преимущество DNSCrypt в том, что он похож на «обычный» DNS. Хорошо это или плохо, но он передаёт UDP-трафик по порту 443 — тот же порт используется для безопасных веб-соединений. Это даёт относительно быстрый резолвинг адресов и снижает вероятность блокировки на файрволе провайдера. Чтобы ещё больше снизить вероятность блокировки, можно изменить конфигурацию клиента и передавать запросы по TCP/IP (как показало тестирование, это минимально влияет на время отклика). Так шифрованный DNS-трафик для большинства сетевых фильтров похож на трафик HTTPS — по крайней мере, с виду.


Показан трафик DNSCrypt и локальный трафик DNSCrypt Proxy. Снифер Wireshark говорит, что это трафик HTTPS, потому что я форсировал использование TCP. Если пустить его по UDP, то Wireshark увидит трафик Chrome QUIC

С другой стороны, DNSCrypt для шифрования не полагается на доверенные центры сертификации — клиент должен доверять открытому ключу подписи, выданному провайдером. Этот ключ подписи используется для проверки сертификатов, которые извлекаются с помощью обычных (нешифрованных) DNS-запросов и используются для обмена ключами с использованием алгоритма обмена ключами X25519. В некоторых (более старых) реализациях DNSCrypt есть условие для сертификата на стороне клиента, который может использоваться в качестве схемы управления доступом. Это позволяет им журналировать ваш трафик независимо от того, с какой IP-адреса вы пришли, и связывать его с вашим аккаунтом. Такая схема не используется в DNSCrypt 2.

С точки зрения разработчика немного сложно работать с DNSCrypt. «DNSCrypt не особенно хорошо документирован, и не так много его реализаций», — говорит Крикет Лю из Infoblox. На самом деле мы смогли найти только единственный клиент в активной разработке — это DNSCrypt Proxy, а OpenDNS прекратил поддерживать его разработку.

Интересный выбор криптографии в DNSCrypt может напугать некоторых разработчиков. Протокол использует Curve25519 (RFC 8032), X25519 (RFC 8031) и Chacha20Poly1305 (RFC 7539). Одна реализация алгоритма X24419 в криптографических библиотеках Pyca Python помечена как «криптографически опасная», потому что с ней очень легко ошибиться в настройках. Но основной используемый криптографический алгоритм Curve25519, является «одной из самых простых эллиптических кривых для безопасного использования», — сказал Денис.

Разработчик говорит, что DNSCrypt никогда не считался стандартом IETF, потому что был создан добровольцами без корпоративной «крыши». Представление его в качестве стандарта «потребовало бы времени, а также защиты на заседаниях IETF», — сказал он. «Я не могу себе этого позволить, как и другие разработчики, которые работают над ним в свободное время. Практически все ратифицированные спецификации, связанные с DNS, фактически написаны людьми из одних и тех же нескольких компаний, из года в год. Если ваш бизнес не связан с DNS, то действительно тяжело получить право голоса».

Хотя несколько DNS-сервисов используют DNSCrypt (например, CleanBrowsing для блокировки «взрослого» контента и Cisco OpenDNS для блокировки вредоносных доменов), новые ориентированные на приватность DNS-провайдеры (в том числе Google, Cloudflare и Quad9) отказались от DNSCrypt и выбрали одну из других, одобренных группой IETF технологий: DNS по TLS и DNS по HTTPS. Сейчас DNSCrypt Proxy поддерживает DNS по HTTPS и указывает Cloudflare, Google и Quad9 в настройках по умолчанию.


TLS стал приоритетом для CloudFlare, когда понадобилось усилить шифрование веб-трафика для защиты от слежки


У DNS по TLS (Transport Layer Security) несколько преимуществ перед DNSCrypt. Во-первых, это предлагаемый стандарт IETF. Также он довольно просто работает по своей сути — принимает запросы стандартного формата DNS и инкапсулирует их в зашифрованный TCP-трафик. Кроме шифрования на основе TLS, это по существу то же самое, что и отправка DNS по TCP/IP вместо UDP.

Существует несколько рабочих клиентов для DNS по TLS. Самый лучший вариант, который я нашел, называется Stubby, он разработан в рамках проекта DNS Privacy Project. Stubby распространяется в составе пакета Linux, но есть также версия для MacOS (устанавливается с помощью Homebrew) и версия для Windows, хотя работа над последней ещё не завершена.

Хотя мне удалось стабильно запускать Stubby на Debian после сражения с некоторыми зависимостями, этот клиент регулярно падал в Windows 10 и имеет тенденцию зависать на MacOS. Если вы ищете хорошее руководство по установке Stubby на Linux, то лучшая найденная мной документация — это пост Фрэнка Сантосо на Reddit. Он также написал shell скрипт для установки на Raspberry Pi.

Положительный момент в том, что Stubby допускает конфигурации с использованием нескольких служб на основе DNS по TLS. Файл конфигурации на YAML позволяет настроить несколько служб IPv4 и IPv6 и включает в себя настройки для SURFNet, Quad9 и других сервисов. Однако реализация YAML, используемая Stubby, чувствительна к пробелам, поэтому будьте осторожны при добавлении новой службы (например, Cloudflare). Сначала я использовал табы — и всё поломал.

Клиенты DNS по TLS при подключении к серверу DNS осуществляют аутентификацию с помощью простой инфраструктуры открытых ключей (Simple Public Key Infrastructure, SPKI). SPKI использует локальный криптографический хэш сертификата провайдера, обычно на алгоритме SHA256. В Stubby этот хэш хранится как часть описания сервера в файле конфигурации YAML, как показано ниже:

upstream_recursive_servers:
#IPv4
#Cloudflare DNS over TLS server

- address_data: 1.1.1.1
  tls_auth_name: "cloudflare-dns.com"
  tls_pubkey_pinset:
  - digest: "sha256"
    value: yioEpqeR4WtDwE9YxNVnCEkTxIjx6EEIwFSQW+lJsbc=
- address_data: 1.0.0.1
  tls_auth_name: "cloudflare-dns.com"
  tls_pubkey_pinset:
  - digest: "sha256"
    value: yioEpqeR4WtDwE9YxNVnCEkTxIjx6EEIwFSQW+lJsbc=

После установления TCP-соединения клиента с сервером через порт 853 сервер представляет свой сертификат, а клиент сверяет его с хэшем. Если всё в порядке, то клиент и сервер производят рукопожатие TLS, обмениваются ключами и запускают зашифрованный сеанс связи. С этого момента данные в зашифрованной сессии следуют тем же правилам, что и в DNS по TCP.

После успешного запуска Stubby я изменил сетевые настройки сети DNS, чтобы направлять запросы на 127.0.0.1 (localhost). Сниффер Wireshark хорошо показывает этот момент переключения, когда трафик DNS становится невидимым.


Переключаемся с обычного трафика DNS на шифрование TLS

Хотя DNS по TLS может работать как DNS по TCP, но шифрование TLS немного сказывается на производительности. Запросы dig к Cloudflare через Stubby у меня выполнялись в среднем около 50 миллисекунд (у вас результат может отличаться), в то время как простые DNS-запросы к Cloudflare получают ответ менее чем за 20 мс.

Частично замедление работы происходит на стороне сервера из-за лишнего использования TCP. Обычно DNS работает по быстрому протоколу UDP: отправил и забыл, в то время как сообщение TCP требует согласования соединения и проверки получения пакета. Основанная на UDP версия DNS по TLS под названием DNS over Datagram Transport Layer Security (DTLS) сейчас в экспериментальной разработке — она может увеличить производительность протокола.

Здесь тоже имеется проблема с управлением сертификатами. Если провайдер удалит сертификат и начнёт использовать новый, то в настоящее время нет чистого способа обновления данных SPKI на клиентах, кроме вырезания старого и вставки нового сертификата в файл конфигурации. Прежде чем с этим разберутся, было бы полезно использовать какую-то схему управления ключами. И поскольку сервис работает на редком порту 853, то с высокой вероятностью DNS по TLS могут заблокировать на файрволе.

Но это не проблема для лидера нашего хит-парада — DNS по HTTPS. Он проходит через большинство файрволов, словно тех не существует.


Google и Cloudflare, похоже, одинаково видят будущее зашифрованного DNS


И Google, и Cloudflare, кажется, видят протокол DNS по HTTPS, также известный как DoH, как самый перспективный вариант для шифрования DNS. Опубликованный в виде черновика стандарта IETF, протокол DoH инкапсулирует DNS-запросы в пакеты HTTPS, превращения их в обычный зашифрованный веб-трафик.

Запросы отправляются как HTTP POST или GET с телом в формате сообщения DNS (датаграммы из обычных DNS-запросов) или как запрос HTTP GET в формате JSON (если вы не против небольшого оверхеда). И здесь нет никаких проблем с управлением сертификатами. Как и при обычном веб-трафике HTTPS, для подключения через DoH не требуется аутентификация, а сертификат проверяется центром сертификации.


Фиксация DNS-транзакции через DoH. Видно только HTTPS, TLS и ничего больше

HTTPS — довольно громоздкий протокол для запросов DNS, особенно в формате JSON, поэтому придётся смириться с некоторым снижением производительности. Необходимые ресурсы на стороне сервера почти наверняка заставят прослезиться администратора обычного DNS-сервера. Но простота работы с хорошо понятными веб-протоколами делает разработку как клиентского, так и серверного кода для DoH намного более доступной для разработчиков, собаку съевших на веб-приложениях (всего несколько недель назад инженеры Facebook выпустили концепт сервера и клиента DoH на Python).

В результате, хотя на спецификациях RFC для DoH ещё не просохли чернила, уже готов к работе целый ряд клиентов DNS по HTTPS. Правда, некоторые из них заточены под конкретных провайдеров DNS. Потеря производительности во многом зависит от сервера и от качества конкретного клиента.

Например, возьмём клиент туннелирования Argo от Cloudflare (aka cloudflared). Это многофункциональный инструмент туннелирования, предназначенный в первую очередь для установления безопасного канала для связи веб-серверов с CDN-сетью Cloudflare. DNS по HTTPS — просто ещё одна служба, которую теперь поддерживает CDN.

По умолчанию, если запустить Argo из командной строки (в Linux и MacOS для этого нужны привилегии суперпользователя, а на Windows нужно запускать клиента из PowerShell от имени администратора), то он направляет DNS-запросы на https://cloudflare-dns.com/dns-query. Если не настроен обычный DNS, то возможна небольшая проблемка, потому что данный адрес должен резолвиться в 1.1.1.1, иначе Argo не запустится.

Это можно исправить одним из трёх способов. Первый вариант: установить устройство с локальным хостом (127.0.0.1 для IPv4 и ::1 для IPv6) как основной DNS-сервер в сетевой конфигурации, а затем добавить 1.1.1.1 в качестве дополнительного резолвера. Это рабочий вариант, но он не идеален с точки зрения приватности и производительности. Лучше добавить URL сервера из командной строки при загрузке:

$ sudo cloudflared proxy-dns --upstream https://1.0.0.1/dns-query

Если вы уверены, что хотите перейти на DNS-сервер от Cloudflare, что даёт преимущество автоматического обновления, — то можете настроить его в качестве службы в Linux, используя YAML-файл конфигурации, содержащий адреса IPv4 и IPv6 службы DNS от Cloudflare:
proxy-dns: true
proxy-dns-upstream:
- https://1.1.1.1/dns-query
- https://1.0.0.1/dns-query

При настройке с правильной восходящей адресацией производительность dig-запросов через Argo широко варьируется: от 12 мс для популярных доменов аж до 131 мс. Страницы с большим количеством межсайтового контента загружаются… немного дольше обычного. Опять же, ваш результат может быть другим — вероятно, он зависит от вашего местоположения и связности. Но это примерно то, чего я ожидал от мрачного протокол DoH.


Как Cloudflare, мы считаем, что туннели иллюстрируют операцию «Арго» лучше, чем Бен Аффлек

Дабы убедиться, что проблема именно в протоколе DoH, а не в программистах Cloudflare, я испытал два других инструмента. Во-первых, прокси-сервер от Google под названием Dingo. Его написал Павел Форемски, интернет-исследователь из Института теоретической и прикладной информатики Академии наук Польши. Dingo работает только с реализацией DoH от Google, но его можно настроить на ближайшую службу Google DNS. Это хорошо, потому что без такой оптимизации Dingo сожрал всю производительность DNS. Запросы dig в среднем выполнялись более 100 миллисекунд.

Во время проверки обработки стандартных запросов службой dns.google.com я наткнулся на альтернативу дефолтному адресу 8.8.8.8 от Google (172.217.8.14, если знаете). Я добавил его в Dingo из командной строки:

$ sudo ./dingo-linux-amd64 -port=53 -gdns:server=172.216.8.14

Это сократило время отклика примерно на 20%, то есть примерно до того показателя, как у Argo.

А оптимальную производительность DoH неожиданно показал DNSCrypt Proxy 2. После недавнего добавления DoH Cloudflare в курируемый список публичных DNS-сервисов DNSCrypt Proxy почти всегда по умолчанию подключается к Cloudflare из-за низкой задержки этого сервера. Чтобы убедиться, я даже вручную сконфигурировал его под резолвер Cloudflare для DoH, прежде чем запустить батарею dig-запросов.

Все запросы обрабатывались менее чем за 45 миллисекунд — это быстрее, чем собственный клиент Cloudflare, причём с большим отрывом. С сервисом DoH от Google производительность оказалась похуже: запросы обрабатывались в среднем около 80 миллисекунд. Это показатель без оптимизации на ближайший DNS-сервер от Google.

В целом производительность DNSCrypt Proxy по DoH практически неотличима от резолвера DNS по TLS, который я проверял ранее. На самом деле он даже быстрее. Я не уверен, то ли это из-за какой-то особой реализации DoH — может быть, из-за использования стандартного формата сообщений DNS, инкапсулированных в HTTPS, вместо формата JSON — то ли связано с тем, как Cloudflare обрабатывает два разных протокола.


Я не Бэтмен, но моя модель угроз всё равно немного сложнее, чем у большинства людей


Я профессиональный параноик. Моя модель угроз отличается от вашей, и я предпочел бы сохранить в безопасности как можно больше своих действий в онлайне. Но учитывая количество нынешних угроз приватности и безопасности из-за манипуляций с трафиком DNS, у многих людей есть веские основания использовать какую-либо форму шифрования DNS. Я с удовольствием обнаружил, что некоторые реализации всех трёх протоколов не оказывают сильно негативного влияния на скорость передачи трафика.

Тем не менее, важно отметить, что одно лишь шифрование DNS не скроет ваши действия в интернете. Если на сервере хостятся несколько сайтов, то расширение TLS под названием Server Name Indicator (SNI), используемое в соединениях HTTPS, всё равно может показать открытым текстом название сайта, на который вы зашли. Для полной конфиденциальности всё равно нужно использовать VPN (или Tor) для такой инкапсуляции трафика, чтобы провайдер или какая-либо другая шпионящая сторона не могла вытянуть метаданные из пакетов. Но ни один из перечисленных сервисов не работает с Tor. И если против вас работает правительственное агентство, то ни в чём нельзя быть уверенным.

Другая проблема в том, что, хотя прекрасные ребята из сообщества DNSCrypt проделали большую работу, но такая приватность по-прежнему слишком сложна для обычных людей. Хотя некоторые из этих DNS-клиентов для шифрования оказалось относительно легко настроить, но ни один из них нельзя назвать гарантированно простым для нормальных пользователей. Чтобы эти услуги стали действительно полезными, их следует плотнее интегрировать в железо и софт, который покупают люди — домашние маршрутизаторы, операционные системы для персональных компьютеров и мобильных устройств.

Интернет-провайдеры наверняка постараются активнее монетизировать обычный DNS-трафик, и никуда не исчезнут государственные агентства и преступники, которые стремятся использовать его во вред пользователю. Но маловероятно, что крупные разработчики ОС стремятся надёжно защитить DNS доступным для большинства людей способом, потому что они часто заинтересованы в монетизации, как и интернет-провайдеры. Кроме того, эти разработчики могут столкнуться с сопротивлением изменениям со стороны некоторых правительств, которые хотят сохранить возможности мониторинга DNS.

Так что в ближайшее время эти протоколы останутся инструментом для тех немногих людей, кто реально заботится о конфиденциальности своих данных и готов для этого немного потрудиться. Надеюсь, сообщество вокруг DNSCrypt продолжит свою активность и продвинет ситуацию вперёд.

«Зачем нужно шифровать трафик? Каким образом это можно сделать?» – Яндекс.Знатоки

Почему нужно шифровать интернет трафик?
Каждый раз, когда мы выходим в интернет всё, что мы делаем в интернете, записывается на серверах «органов», через которые проходит весь трафик (поток информации) всех провайдеров и всех хостингов. В России перехватом и анализом интернет трафика занимается система «СОРМ-2», в США и странах НАТО — система «ЭШЕЛОН».

Что такое система СОРМ?
СОРМ расшифровывается как «система оперативно-розыскных мероприятий», подразделяется на две системы: СОРМ-1 и СОРМ-2. Первая предназначена для контроля телефонной связи, вторая анализирует Интернет-трафик. В соответствии с документами, Интернет-провайдер на свои деньги был обязан установить оборудование, программы и выделенную линию для местного отделения ФСБ, а также провести обучение сотрудников. Все это позволяет последним отслеживать, перехватывать и прерывать связь любого клиента этого провайдера. На данный момент практически все российские провайдеры провели данные работы. Принцип функционирования СОРМ-2 похож на принцип работы Эшелона, т. е. подобным образом происходит обработка и накопление информации по ключевым словам. Системы подобные СОРМ существуют во многих других странах, например, в США и странах НАТО.
Что такое система Эшелон?
Эшелон — американская сеть глобального электронного шпионажа. Эшелон может перехватывать информацию, передаваемую практически по любым каналам связи (спутниковым, цифровым) в любой точке планеты. Источниками информации служат Интернет, электронная почта, телефон, факс, телекс. Эшелон — включает в себя более ста спутников-шпионов, большое количество суперсовременных и мощных компьютеров, множество наземных станций, расположенных по всему миру, на которых работают десятки тысяч сотрудников — программисты, криптологи, математики, лингвисты… Принцип работы системы Эшелон приблизительно следующий: каналы связи постоянно сканируются сверхмощными компьютерами, если проходящее сообщение содержит ключевое слово, выражение или тембр голоса (например, голос Бин Ладена), которое входит в так называемый словарь Эшелона, то сообщение записывается. Словарь Эшелона содержит огромное количество ключевых «слов» на многих языках мира и постоянно обновляется.

Как уйти от тотальной слежки COPM-2 и ЭШЕЛОН?
Нужно для выхода в сеть использовать VPN (Virtual Private Network) т.е шифровать весь исходящий/входящий трафик стойкими криптоалгоритмами вроде DES, чтобы ваш интернет провайдер не знал, какие сайты вы посещаете, с кем ведете переписку, какие файлы скачиваете и т.п. К примеру, если вы скачаете или выложите в сеть «пиратский» контент к вам домой могут заявиться «органы» и сообщить что вы нарушили права правообладателей контента. Как вам такая перспектива? Но, ваш провайдер не будет знать на каких сайтах вы были, то не узнают и спцслужбы, ведь именно провайдеры хранят и сливают по спецслужбам всю информацию о вашей интернет активности.

Как работает VPN?
Шифрование трафика — услуга платная, но если исходить из принципа что собственная безопасность чего-то стоит, то это не так уж и страшно. При использовании VPN ваш трафик шифруется, сжимается одним из алгоритмов архиваторов, отправляется на сервер VPN сервиса, там происходит расшифровка и передача трафика в интернет. Таким образом, в логах посещенных вами сайтов не будет вашего IP, там будет IP VPN сервера.

VPN сервис:

Возможности

  • VPN-цепочки (DoubleVPN, TripleVPN, QuadroVPN)
  • Прозрачный доступ к .onion и .bit ресурсам
  • VPN + Tor
  • Перенаправление портов
  • Дополнительные IP-адреса
  • Удаленная помощь в настройке VPN
  • 4096-битные RSA ключи аутентификации
  • Стойкое шифрование AES-256
  • Собственные DNS
  • Полный доступ к сети Интернет, P2P, VoIP и Torrent
  • Отсутствие ограничений скорости и трафика
  • Отсутствие логов

Ссылка: https://vk.cc/71eV5f

Скидочный купон: TOVIKO

Заворачиваем весь трафик локальной сети в vpn без ограничения скорости / Postuf corporate blog / Habr


В прошлой статье мы разбирали, как анонимизировать весь Интернет-трафик одного хоста. Теперь давайте повысим уровень безопасности, обернув всю локальную сеть VPN-ом. При этом мы избавимся от опасности выйти в интернет с еще не настроенного девайса и ассоциировать адрес своего провайдера с этим устройством.

Для этой цели можно просто настроить VPN-клиент на шлюзе, если это позволяет роутер. Но такое решение черевато последствиями в виде уменьшения скорости работы Интернета, повышенной нагрузки на роутер, к тому же некоторые клиенты отправляют весь трафик через основное соединение сразу же в случае отключения от VPN. Не стоит забывать, что даже ведущие VPN-провайдеры не могут обеспечить 100% аптайм своих серверов.

Итак, каковы наши цели:

  • пропускать через VPN весь без исключения исходящий трафик
  • делать это с максимально возможной скоростью
  • не зависеть от временных неполадок VPN-провайдера
  • максимум анонимности в Интернете


Нам нужен мощный роутер, способный шифровать трафик на высокой скорости. Он будет выступать в роли VPN-шлюза. Мы нашли замечательные мини-ПК на AliExpress, которые подошли под эту задачу: четырехъядерный Intel Celeron, нативная поддержка AES-CBC, AES-XTS, AES-GCM, AES-ICM и аж четыре RJ-45 порта. И по умолчанию на них была установлена pfSense. С ней и будем работать.

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


Статья предполагает, что интернет подключен к первому порту, ваш ПК или домашняя сеть — ко второму, и что до настройки VPN вы смогли выйти в интернет.

Во избежание дальнейших проблем давайте авторизуемся у любимого VPN-провайдера и найдем инструкцию по настройке pfSense. Если ваш провайдер не предоставляет инструкцию по ручной настройке в pfSense, можно воспользоваться вот этой от моего любимого провайдера: www.expressvpn.com/support/vpn-setup/pfsense-with-expressvpn-openvpn — основная суть не изменится. Приведенная статья с картинками расписывает, как полностью настроить только что купленный роутер с pfSense.

Вот краткий чеклист настройки нового VPN-а:

  • System — Cert. Manager — CAs. Добавляем сертификат VPN CA
  • System — Cert. Manager — Certificates. Добавляем сертификат VPN сервера
  • VPN — OpenVPN — Clients. Создаем нового клиента по инструкции от VPN-провайдера
  • Interfaces — Assignment. Добавляем клиентов как интерфейсы
  • System — Routing. Проверяем что появился шлюз.
  • Firewall — NAT. Добавляем правила NAT для каждого клиента
  • Firewall — Rules — LAN. Добавляем перенаправление всего трафика из сети через Gateway
  • System — Routing. Для активного VPN-a в настройках шлюза указываем Monitor IP, пингом до которого будет проверяться работоспособность VPN-а

Перезагрузка VPN-ов осуществляется в Status — OpenVPN. Просмотр логов в Status — Package Logs — OpenVPN.

На этом этапе останавливаемся и проверяем, что доступ в интернет через VPN есть, и что при отключении от VPN доступ пропадает вовсе. Если интернета нет — где-то ошиблись, смотрим логи VPN, проверяем настройки заново. Если после отключения VPN трафик начинает идти через основной шлюз, значит накосячили в Firewall — Rules — LAN.

Теперь интересная часть. Если ваш провайдер выдает 20 Мбит в секунду, и то ночью — то на этом этапе вы уже получили локальную сеть, полностью закрытую VPN-ом, который работает с максимально возможной скоростью. Но что, если у вас канал пошире?


Настраиваем еще пару-тройку VPN клиентов для разных серверов по инструкции выше. Добавлять сертификаты CA и сервера не нужно, выбираем уже добавленные. Также не выполняем шаг с Firewall — Rules — LAN, его мы сделаем позже. Необходимое количество клиентов устанавливается эмпирическим путем по результатам замеров скорости через каждый отдельный сервер.

После того как завершили, у нас должна быть следующая картина:

— В VPN — OpenVPN — Clients созданы и активированы клиенты

— В Interfaces — Assignment созданы и активированы интерфейсы для каждого клиента

— В Status — OpenVPN все клиенты находятся в состоянии «up»

— В System — Routing появились шлюзы, и для них указаны пингуемые IP-адреса.
(Если не можете придумать, кого попинговать — откройте shodan.io и найдите все IP google)

Теперь зайдем в System — Routing — Gateway Groups. Нажмите Add. Укажите запоминающееся имя в Group Name.

Теперь обратите внимание на таблицу Gateway Priority. Группы шлюзов работают следующим образом: failover по уровням, балансировка внутри уровня. Столбец Tier указывает, в каком уровне будет использоваться данный шлюз. Простейший вариант — указываем все активные VPN-шлюзы в первом уровне. Вариант для медленного интернета — создаем двух клиентов и размещаем их на первом и втором уровне, но в этом случае будет только отказоустойчивость.

Ниже найдите Trigger Level. Это условие, при котором произойдет временное исключение шлюза из группы. Варианты кроме Member Down позволяют перестать отправлять пакеты шлюзу чуть раньше, чем он упадет полностью — по превышению порога потери пакетов и/или по высокому пингу. Пороги потерь и пинга задаются для каждого шлюза индивидуально в System — Routing — Gateway.

Как только выбрали удобный вариант расстановки шлюзов по уровням, нажмите Save.

Пришло время направить трафик в новую группу шлюзов. Идем в Firewall — Rules — LAN, открываем созданное ранее правило перенаправления, спускаемся до списка со шлюзами и видим в этом списке созданную нами группу. Выбираем её, сохраняем правило и применяем изменения. Всё, теперь каждое новое соединение будет идти через новый VPN-клиент в группе.

Время тестирования: открываем api.ipify.me, отключаем кэш и keep-alive, и перезагружаем страницу. Если вы единственный пользователь в сети, на каждое обновление страницы вы должны видеть новый IP адрес, отличающийся от вашего домашнего. Если вы видите один и тот же адрес, полностью обновите страницу при помощи Ctrl+F5 (Command+Shift+R на маках), или откройте новую приватную вкладку. Если не помогло — значит где-то ошиблись в настройках группы, или не сменили шлюз в правилах фаерволла.

Теперь о плохом. К сожалению, у данного решения есть небольшой трудноуловимый баг, если использовать его перед роутером локальной сети (а не коммутатором). Рано или поздно у вас отваливается один из VPN-клиентов, срабатывает исключение его из группы, и всё хорошо до того момента, пока VPN не поднимется обратно. Так как все пользователи находятся за NAT, а VPN-роутер видит только один IP-адрес и 65 тысяч портов, со временем он ассоциирует все порты с теми VPN-клиентами, которые никогда не падали. Соответственно, как только VPN-клиент поднимается, через него не идет никакой трафик. Клиент полностью жив, через него идут пинги и некоторое стабильное количество служебного трафика, но через него не идет трафик клиентов. По идее это решалось бы сбросом таблицы соединений, и для этого даже есть галочка в настройках pfSense, но в моих исследованиях эта галочка напрочь блокировала всякий доступ к роутеру, так как клиенты начинали валиться циклично, при этом роняя только-только установленные соединения с веб-интерфейсом, что сильно затрудняло исправление проблемы. Без этой галочки при наличии более двух VPN-ов они уравновешивали себя, так что доступ хотя бы через один всегда был. В конце концов я настроил в мониторинге условие «если пять минут на интерфейсе было меньше 1000 байт трафика в секунду, сообщить мне», и в особо запущенных случаях перезагружаю зомби-VPN-клиента вручную с целью сбросить таблицу соединений.

Итак, мы получили сеть, полностью пропускаемую через несколько распределенных VPN-ов. За счет сочетания нескольких разных VPN-серверов мы не зависим от доступности каждого из них в отдельности, а скорость сети ограничена только вашим каналом за вычетом шифрования. Если вдруг вам не хватит одного роутера — их тоже можно масштабировать, но это тема для отдельной статьи.

Совет дня. Как зашифровать ВЕСЬ интернет-трафик. — 9 Октября 2016

Программа SoftEnter VPN Client.

В связи с реальной угрозой расширения карательных функций «Антипиратского закона» и возможным началом переноса его действия на простых пользователей, а именно, возможным введением штрафов за скачивание пиратского контента (фильмов музыки программ и так далее), продолжаю знакомить посетителей моих сайтов с информацией, как этих штрафов избежать, то есть, как скачивать с интернета АНОНИМНО. Ранее, я показал, как скачивать анонимно по прямым ссылкам и с торрентов. В данной статье рассмотрим один из способов, как зашифровать весь интернет-трафик. Шифрование всего интернет-трафика позволит вам стать полностью анонимным в интернете, сменив свой IP-адрес, на сторонний. После смены IP-адреса при помощи предлагаемого в данной статье приложения никто из посторонних уже не сможет узнать какие сайты вы посещали, что скачивали, в том числе будет зашифрован и ваш интернет-трафик в торрент-клиенте.
Речь пойдет о приложении под названием SoftEnter VPN Client. Это клиентская программа для связи с сервисом под названием VPN Gate.
Сервис VPN Gate – это экспериментальный проект Высшей школы университета г. Цукуба (Япония). Идея проекта заключается в организации добровольцами публичной общественной сети туннелей VPN, которые создаются, с помощью специального программного обеспечения, и бесплатно предоставляются в публичное общее пользование. Подключиться к ним может каждый желающий.
Частные публичные сети VPN Gate предоставляются обычными людьми, а не компаниями и, даже гипотетическая возможность получения логов (истории посещённых Вами сайтов и истории скачивания) по запросу компетентных органов исключена. Сервис VPN Gate и создавался для того, чтобы дать возможность гражданам стран, где блокируются определённые сайты свободно и анонимно посещать их, но сервис можно использовать и для скачивания нужного вам контента, не опасаясь неприятных последствий.
Настроить работу программы SoftEnter VPN Client вовсе несложно. Сейчас покажу, как это сделать.


Для начала скачиваем на сайте разработчика по ссылке здесь архив с установочным файлом программного обеспечения SoftEnter VPN Client.

Кстати, информация для тех, кто уже пользовался универсальным моментальным немецким клеем Nano Kleber и для тех, кто еще не знаком с нашим продуктом — наш клей кардинально изменился.
Естественно в лучшую сторону. Во-первых, изменился внешний вид упаковки и флаконов клея. Во-вторых, объем флаконов увеличился на треть! Теперь вес флакона 31,5 граммов, флакона со сварочным гранулятом, 25 граммов.
И главное, улучшено качество самого клея. По многочисленным просьбам покупателей, клей стал гуще. Это позволяет работать с ним, перед сжатием (склеиванием) не торопясь. Срок подготовки увеличен в 2 раза! При этом его цена осталась прежней.
Подробнее узнать о клее Nano Kleber можно на нашем официальном сайте по ссылке здесь. Там же можно его и заказать. Доставка – по всей России.


После скачивания архива распаковываем папку с установочным файлом на рабочий стол.


Открываем ее и запускаем установку программного обеспечения SoftEnter VPN Client.


После установки программного обеспечения SoftEnter VPN Client запускаем его в работу.


Выбираем один из серверов VPN и подключаемся к нему.


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


То что вы подключены к выбранному вами серверу VPN легко можно узнать, посетив один из сервисов проверки IP-адресов. Найти их несложно. В поисковой строке любого поисковика, например, в Яндексе, пишем поисковую фразу «проверка ip».


Отключить VPN-соединение просто. В трее после установки программного обеспечения SoftEnter VPN Client появиться специальный значок. Кликните по нему правой кнопкой мыши и в выпавшем контекстном меню выберете нижнюю строчку отключения программы.


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


 

 

&amp;lt;p&amp;gt;Подпишитесь на обновления RSS заголовков от: &amp;lt;a href=»http://feeds.feedburner.com/http/halyavinru»&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;br/&amp;gt;Создано FeedBurner&amp;lt;/p&amp;gt;
Разное

Отправить ответ

avatar
  Подписаться  
Уведомление о