При настройке связки Linux, Apache, MySQL и PHP (LAMP) с поддержкой сети Tor многие администраторы сталкиваются с непониманием того, откуда брать «основную ссылку». Уникального URL-адреса для скачивания готового решения не существует. Вместо этого вам предстоит самостоятельно сконфигурировать взаимодействие между демоном Tor и веб-сервером Apache. Ключевым элементом здесь является не внешняя ссылка, а локально сгенерированный домен .onion, который появится после создания конфигурации скрытого сервиса.

Источники программного обеспечения

Первый шаг — получение безопасного кода. Единственным авторитетным источником является официальный сайт проекта torproject.org. Загрузка пакетов из сторонних зеркал без проверки цифровых подписей PGP недопустима, так как это ставит под угрозу анонимность всего сервера.

Для дистрибутивов Debian и Ubuntu подключение осуществляется через файл sources.list. Перед добавлением адреса репозитория необходимо импортировать открытые ключи разработчиков. Это гарантирует целостность обновлений. Если ваш сервер находится за цензурой или имеет ограниченный доступ к интернету, используйте мосты или специальные Onion-репозитории, доступные только внутри самой сети Tor.

Важные компоненты установки

  • Официальный домен: Место для загрузки бинарных файлов и чтения документации.
  • PGP-ключи: Инструмент верификации подлинности загруженных пакетов.
  • Исходный код: Возможность компиляции «из коробки» для максимальной прозрачности работы системы.

Установка компонентов стека LAMP

После подключения репозиториев установите демон Tor и веб-сервер Apache стандартными средствами менеджера пакетов (например, apt). При установке Tor убедитесь, что сервис запускается от имени непривилегированного пользователя — это базовое требование безопасности.

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

Генерация Hidden Service и поиск «ссылки»

Искомая вами «основная ссылка» — это содержимое файла hostname, которое генерируется автоматически. Для этого отредактируйте конфигурационный файл демона (обычно /etc/tor/torrc).

Добавьте следующие директивы:

  1. HiddenServiceDir: Укажите путь к папке, где будут храниться ключи (по умолчанию /var/lib/tor/hidden_service/). Этот путь можно изменить для повышения безопасности.
  2. HiddenServicePort: Определите правило перенаправления трафика. Например, 80 127.0.0.1:80 означает, что входящий трафик на порт 80 в сети Tor будет направляться на локальный порт 80, где слушает Apache.

Проведите по таблице влево, чтобы увидеть остальные столбцы

Директива Назначение Пример значения
HiddenServiceDir Путь к директории с приватными ключами /var/lib/tor/hidden_service/
HiddenServicePort Маппинг внешнего порта на внутренний 80 127.0.0.1:80
HiddenServiceVersion Версия протокола (рекомендуется v3) 3

Запустите службу Tor. В указанной директории появятся два файла: private_key и hostname. Содержимое файла hostname и есть тот самый адрес .onion, по которому ваш сайт станет доступен пользователям.

Безопасность ключей

Файл private_key дает полный контроль над вашим доменом. Его потеря приведет к невозможности доступа к сайту по старому адресу, а утечка позволит злоумышленникам создать точную копию вашего ресурса. Храните его в строгой изоляции.

Конфигурация Apache

Создайте отдельный виртуальный хост для Tor-сайта. В конфигурации VirtualHost укажите прием соединений исключительно с localhost (127.0.0.1). Это исключит прямой доступ к серверу по IPv4/IPv6 и предотвратит случайные утечки данных.

Установите параметр ServerName равным вашему новому адресу .onion. Настройте логи так, чтобы они не фиксировали личные данные пользователей. Для динамического контента на PHP убедитесь, что пути к временным файлам и сессиям находятся в защищенных директориях. Базы данных MySQL/MariaDB должны принимать соединения только с localhost.

Диагностика и проверка

После внесения изменений проверьте синтаксис конфигурации Apache командой apache2ctl configtest. Перезапустите службы только при отсутствии ошибок.

Для проверки работоспособности используйте браузер Tor или команду curl с указанием прокси: curl --socks5-hostname 127.0.0.1:9050 http://ваш-адрес.onion. Не пытайтесь открыть адрес в обычном браузере — это не сработает. Просмотрите логи Tor (/var/log/tor/log) на предмет успешной публикации дескриптора сервиса.

Часто задаваемые вопросы

Где находится файл torrc?

В большинстве систем он расположен в /etc/tor/torrc, но иногда может находиться в /usr/local/etc/tor/torrc или быть разделен на файлы в поддиректориях.

Можно ли использовать один Apache для обычного сайта и Onion?

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

Что делать, если адрес .onion меняется?

Если адрес меняется при перезапуске, значит, Tor не сохраняет файл private_key. Проверьте права доступа к папке HiddenServiceDir: она должна принадлежать пользователю tor и иметь права 700.