Управление Tor с помощью Nyx

Управляем Tor из консоли с помощью Nyx

Кроме того, что сервис Tor можно запускать, останавливать, перезапускать, смотреть статус и т.д. из консоли Linux с помощью systemctl, с ним можно проделывать ещё некоторые полезные операции, такие как:

  • инициирование «создания новой личности»;
  • просмотр графика входящего/исходящего трафика;
  • просмотр установленных подключений;
  • интерактивная правка конфига torrc с выводом подробной помощи по каждой опции;
  • просмотр лога работы с возможностью установки фильтров на отображение.

Это далеко не весь список функций, которые предоставляет консольная утилита для управления Tor под названием Nyx.

Установка Nyx

На официальном сайте Tor есть инструкция по установке nyx для разных дистрибутивов Linux. Рассмотрим самые популярные варианты.

Debian GNU/Linux, Ubuntu, Kubuntu, Xubuntu, Linux Mint

Для Debian и сотоварищи вроде Ubutnu подготовлен пакет в официальном репозитории дистрибутива. Устанавливается командой в консоли:

sudo apt install nyx

Arch Linux, Manjaro

В официальном репозитории пакетов Arch Linux и Manjaro так же есть готовый пакет, устанавливается стандартно:

sudo pacman -S nyx

Другие варианты

Так как nyx написан на Python, его можно установить менеджером python-пакетов pip. Для этого вначале устананавливаем в систему пакет python-setuptools, затем с помощью него устанавливаем pip:

sudo easy_install pip

после чего ставим сам Nyx:

sudo pip install nyx

Настройка Tor для возможности управления из Nyx

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

tor --hash-password SUPER_STRONG_PASSWORD

Строчку «SUPER_STRONG_PASSWORD» нужно заменить на собственный надёжный пароль. В ответ получаем что-то вроде:

16:9DCFFCC33B0E468D607F0D304A842F02458A4C95B20AC8D4F7C406E307

В конфигурационном файле /etc/tor/torrc нужно найти и раскомментировать строку конфигурации, отвечающую за включение возможности управлять Tor с помощью контрольного порта:

ControlPort 9051

Далее раскомментируем строку, которая включает защиту доступа к контрольному порту Tor с помощью пароля:

HashedControlPassword [...]

В данной строке нужно заменить значение с хешем пароля по умолчанию на своё, сгенерированное шагом ранее командой tor —hash-password. В моём примере получится:

HashedControlPassword 16:9DCFFCC33B0E468D607F0D304A842F02458A4C95B20AC8D4F7C406E307

Вы меняете значение на своё. Перезапускаем Tor.

sudo systemctl restart tor.service

Настройка Nyx

Конфигурационный файл отдельно для каждого пользователя находится в каталоге

~/.nyx/config

Открываем его для редактирования любым текстовым редактором и вставляем строку:

password SUPER_STRONG_PASSWORD

Где значение «SUPER_STRONG_PASSWORD» — заменяем на пароль, хеш которого генерировали командой tor —hash-password на предыдущем этапе. Сохраняем и закрываем файл.

Если захотелось настроить Nyx «под себя», вот пример конфигурационного файла с комментариями:

https://nyx.torproject.org/nyxrc.sample

Запуск и использование

Запускается nyx соответствующей командой в консоли от текущего пользователя:

nyx

После запуска пользователю сразу отображается график приёма/передачи данных и лог Tor.

Окно Konsole с запущенным Nyx
Пример работы Nyx

Клавишей «m» вызывается меню утилиты, с помощью которой можно управлять её работой: создавать новую личность, переключать отображение информации, править конфиг и т.д. По нажатию клавиши «h» выводится справка.