Tor Hidden Service как техника Nat Traversal

Автор: admin от 16-09-2014, 20:15, посмотрело: 1833

За последние несколько месяцев мне несколько раз пришлось решать довольно однотипные задачи — регулярно получать доступ на компьютеры, «спрятанные» за NAT. Пока это был один стационарный компьютер, все решалось пробросом порта на домашнем роутере плюс DynDNS. Потом добавился ноутбук. И еще один. Ноутбуки могли подключаться к домашнему WiFi, а могли оказаться, например, на рабочем месте. Наша компания предоставляет услуги VPN, но именно в этот период VPN по каким-то причинам работал не стабильно. В ход пошли VPS, обратные ssh-тоннели. Когда конфигурация перестала помещаться в голове, пришла идея сократить количество сущностей, используя Tor Hidden Service.

Как известно, Tor предоставляет возможность создавать «скрытые» сервисы — сетевые имена из пространства .onion, подключение к которым возможно через любой клиент сети Tor. При этом с целью анонимизации сервера, на котором расположены эти сервисы, подключение происходит через «места встречи» (rendezvous points) — компьютеры, не закрытые NAT. Сам компьютер, на котором расположен скрытый сервис, может находиться за NAT, брандмауэром и т. п., но через сеть Tor к нему все равно можно получить доступ.

Сказано — сделано. Устанавливаем Tor-клиент. В конфигурационный файл добавляем две строчки:
HiddenServiceDir /var/lib/tor/hidden_service/
HiddenServicePort 22 127.0.0.1:22


В качестве HiddenServiceDir указываем любое место, в котором Tor сможет создать сам каталог (если его нет) и несколько конфигурационных файлов.
В строчке HiddenServicePort первое число — это номер порта, к которому мы получаем доступ через Tor. Теоретически можно указать не 22, а, например, 1234.

Перезапускаем Tor. В каталоге появятся два файла:


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

  • hostname — автоматически сгенерированный файл с именем вашего сервиса. Если вы удалите или поменяете это файл, все по-прежнему будет работать.



В файле hostname находится имя вашего сервиса вида xxxxxxxxxxxxxxxx.onion.
После этого я на любой машине могу сказать torsocks ssh xxxxxxxxxxxxxxxx.onion и попасть на свой ноутбук.

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

Один Tor-клиент может обслуживать несколько скрытых сервисов (достаточно указать эти строчки несколько раз). Каждый скрытый сервис «обслуживает» один или более портов, пробрасываемых через Tor (указываем несколько строк с HiddenServicePort подряд).

Источник: Хабрахабр

Категория: Системное администрирование, Информационная безопасность, Сетевые технологии

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Добавление комментария

Имя:*
E-Mail:
Комментарий:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите два слова, показанных на изображении: *