Подробное объяснение анонимной сети Tor, луковичной маршрутизации и принципов работы скрытых сервисов
Ссылка на сайтTor (The Onion Router) — это свободное программное обеспечение и открытая сеть, которая обеспечивает анонимность в Интернете с помощью многоуровневого шифрования.
Данные оборачиваются в несколько слоёв шифрования, как слои лука. Каждый ретранслятор снимает только один слой, не зная ни отправителя, ни получателя одновременно.
Тысячи добровольных серверов по всему миру создают распределённую сеть. Нет единой точки управления или слежки — сеть устойчива к цензуре.
Каждый слой данных зашифрован отдельным ключом. Даже если злоумышленник перехватит трафик на одном узле — он не сможет отследить полный маршрут.
Сайты в доменной зоне .onion работают целиком внутри сети Tor. Ни клиент, ни сервер не раскрывают своих реальных IP-адресов.
Сеть Tor поддерживается волонтёрами и организациями по всему миру. Проект развивается при поддержке некоммерческой организации Tor Project.
Каждые несколько минут Tor меняет маршрут (цепочку узлов). Это делает долгосрочное отслеживание пользователя крайне сложным.
Когда вы открываете .onion сайт, ваш запрос проходит через три обязательных узла-ретранслятора, прежде чем достигнуть пункта назначения.
Перед отправкой данные оборачиваются в три слоя шифрования — по одному на каждый узел в цепочке.
Tor Browser скачивает из директории список узлов и выбирает три. С каждым он выполняет криптографическое согласование (DH) и получает симметричный ключ для сессии.
Данные сначала шифруются ключом Exit-узла, затем Middle, затем Guard. Получается три слоя — как слои лука.
Guard снимает свой слой и передаёт Middle. Middle снимает свой — передаёт Exit. Exit снимает последний слой и видит данные (или передаёт дальше в сеть Tor для .onion).
Ответ от сервера проходит тот же путь в обратную сторону — каждый узел добавляет свой слой шифрования, чтобы только клиент мог расшифровать итоговый результат.
.onion адреса v3 (текущий стандарт) состоят из 56 символов и криптографически связаны с публичным ключом сервера.
Base32-кодированный публичный ключ Ed25519
Контрольная сумма (SHA3-256)
Версия протокола (v3 = 0x03)
Псевдо-TLD, зарезервирован RFC 7686
Адрес содержит публичный ключ сервера. При подключении клиент автоматически проверяет, что общается именно с тем сервером — без CA и SSL-сертификатов.
Адреса .onion не регистрируются в DNS. Браузер Tor сам разрешает адрес внутри сети. Обычный браузер не может открыть .onion сайт.
Современная эллиптическая криптография. 256-битный ключ обеспечивает уровень безопасности ~128 бит — взломать перебором практически невозможно.
Старые v2-адреса (16 символов) были устаревшими с 2021 г. и отключены в 2022 г. Сейчас актуален только v3 (56 символов) с более стойкой криптографией.
Каждая технология защищает от разных угроз. Вот наглядное сравнение.
| Характеристика | Обычный HTTPS | VPN | Tor (.onion) |
|---|---|---|---|
| IP скрыт от сайта | Нет | Частично | Да |
| IP скрыт от провайдера | Нет | Да | Да |
| Доверие посреднику | Провайдер | VPN-сервер | Не нужно |
| IP сервера скрыт | Нет | Нет | Да (для .onion) |
| Устойчивость к цензуре | Нет | Частично | Высокая |
| Скорость соединения | Высокая | Высокая | Низкая |
| Единая точка отказа | Есть (DNS) | Есть (VPN) | Нет |
.onion адреса не индексируются Google и не хранятся в обычном DNS. Есть несколько надёжных способов найти актуальную ссылку.
Внутри сети Tor существуют собственные поисковые системы и каталоги, которые индексируют .onion адреса. Примеры: Ahmia (доступен и в обычном интернете), Torch, Not Evil. Они позволяют искать сайты по ключевым словам прямо в Tor Browser.
Крупные легальные сервисы (The New York Times, DuckDuckGo, Facebook, ProPublica и др.) публикуют свои .onion адреса прямо на своём официальном сайте в открытом интернете. Это самый надёжный способ — ссылка верифицирована самим сервисом.
duckduckgo.com — ищите раздел «Tor» или «Privacy».
Тематические форумы, Reddit (r/TOR, r/onions), Telegram-каналы и специализированные ресурсы регулярно обновляют списки актуальных адресов. Ссылки там обсуждаются сообществом, что снижает риск попасть на фишинг.
Tor Browser поставляется с предустановленными закладками на проверенные .onion ресурсы. Для уже известных вам сайтов сохраняйте ссылки в закладки сразу — это исключит необходимость каждый раз искать адрес заново.
Зеркало — это точная копия сайта, доступная по другому адресу. Зеркала используются для обхода блокировок, распределения нагрузки и повышения отказоустойчивости.
Копия сайта, размещённая на обычном домене (.com, .net и т.д.). Доступна без Tor. Часто используется, когда основной домен заблокирован провайдером. Анонимность при этом не обеспечивается — ваш IP виден серверу.
Отдельный .onion адрес, ведущий на тот же контент. Владелец сервера запускает несколько скрытых сервисов с разными ключами, но одинаковым бэкендом. Все преимущества анонимности Tor сохраняются полностью.
Основной сервер и зеркала указывают на одну и ту же базу данных и файловое хранилище. Контент синхронизирован в реальном времени — пользователь видит идентичный сайт вне зависимости от того, через какой адрес зашёл.
Каждый .onion адрес генерируется с отдельной парой криптографических ключей. Отключение одного зеркала никак не затрагивает остальные — у каждого своя цепочка введения в сеть Tor.
Несколько зеркал позволяют принимать больше одновременных подключений. Пользователи автоматически или вручную выбирают менее загруженный адрес.
Если основной адрес стал недоступен (технический сбой, DDoS или изъятие сервера), пользователи переключаются на резервные зеркала. Сайт остаётся доступным, пока жив хотя бы один адрес.
Настоящие зеркала публикуются самим сервисом на проверенных каналах. Признаки надёжного зеркала: адрес опубликован на официальном сайте или подписан PGP-ключом администрации; зеркало упоминается в официальных объявлениях сервиса; контент полностью совпадает с основным сайтом без подозрительных изменений (лишних форм, изменённых адресов для оплаты и т.д.).
Ответы на распространённые вопросы о работе .onion сайтов и сети Tor.
Теоретически — да, практически — очень сложно. Наиболее известные атаки требуют контроля над большим числом узлов Tor одновременно («атака с корреляцией трафика»). Также пользователь может деанонимизироваться из-за уязвимостей в браузере, включённого JavaScript или неосторожных действий (вход в аккаунты, раскрытие личных данных).
Каждый запрос проходит через минимум 6 Tor-узлов (3 на стороне клиента + 3 на стороне сервера), расположенных в разных точках мира. Каждый узел вносит задержку. Кроме того, пропускная способность добровольных ретрансляторов ограничена. Суммарно задержка может составлять 500–2000 мс против 10–50 мс для обычного интернета.
Для .onion сайтов HTTPS технически не обязателен — сам Tor обеспечивает шифрование и аутентификацию сервера через встроенный криптографический механизм. Адрес .onion уже содержит публичный ключ сервера, поэтому подмена невозможна. Тем не менее, ряд крупных сервисов (например, The New York Times, Facebook) устанавливают SSL-сертификаты поверх .onion для дополнительной совместимости.
Мосты — это скрытые Entry-узлы, адреса которых не публикуются в общем списке. Они используются в странах, где провайдеры блокируют доступ к публичным Guard-узлам Tor. Помимо обычных мостов, существуют Pluggable Transports — технологии маскировки трафика Tor под обычный HTTPS, видеозвонки или другие протоколы.
Для создания .onion сайта достаточно установить Tor и настроить скрытый сервис в файле torrc. Директивы HiddenServiceDir и HiddenServicePort указывают Tor, куда сохранить ключи и какой локальный порт проксировать. После запуска Tor автоматически сгенерирует ключевую пару и .onion адрес. Веб-сервер (nginx, apache, caddy) должен слушать указанный локальный порт.
При посещении обычных HTTP-сайтов через Tor — да, Exit-узел видит передаваемые данные в открытом виде. При HTTPS — нет, данные зашифрованы TLS. При работе с .onion сайтами Exit-узел как таковой отсутствует: соединение остаётся полностью внутри сети Tor, и ни один узел не видит финальные данные.