ЗАКАЗ

Руководство по созданию Tor-сайта на Windows-10. Анонимность в интернет и преимущества Tor

Анонимность в интернет

В настоящее время интернет не может считаться анонимным. В сети всегда передается ip-адрес устройства, с которого осуществляется выход в интернет. Этот ip-адрес хранится в логах у провайдера и по нему можно довольно точно определить местонахождение пользователя. Законы многих стран, в том числе и законы РФ, обязывают провайдеров вести лог всех запросов, хранить и предоставлять его по требованиям спецслужб.

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

Неважно, для чего вам нужна анонимность. К счастью, существую проекты, которые выступают за свободу интернета!

Преимущества и принцип работы Tor

Tor - это один из проектов за анонимность и свободу интернета, изначально создавался и финансировался за счет США. Код проекта был опубликован под свободной лицензией для проверки всеми желающими, а Tor-браузер - это переработанный FireFox.

Принцип работы Tor (картинка из Википедии)

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

Развертывание сайта на localhost

Следующие шаги напрямую не относятся к tor.

Установка программ

Для развертывания сайта на localhost вам будет нужен стандартный набор программ. В документации к Tor-проекту не рекомендуют устанавливать Apache, так ка он не безопасен и может раскрыть ip-адрес. Вам потребуется nginx.
  • Установка nginx
    web-сервер nginx/Windows-1.19.6 скачать

    С официального сайта скачиваете архив nginx-1.19.6.zip, распаковываете в папку c:\Program Files

    Папка C:\Program Files\nginx-1.19.6
  • Установка php-fpm
    php-fpm PHP 8.0 (8.0.2) VS16 x64 Non Thread Safe (2021-Feb-03 19:17:50) Zip [25.33MB] скачать

    С официального сайта скачиваете архив php-8.0.2-nts-Win32-vs16-x64.zip, распаковываете в папку c:\Program Files

    Папка C:\Program Files\php-8.0.2-nts-Win32-vs16-x64
  • Установка MySQL Server
    MySQL Server 8.0 скачать

    С официального сайта скачиваете установщик mysql-installer-community-8.0.23.0.msi. В опциях при установке вам следует выбирать developmentComputer или localhost.

    Я по ошибке скачал web-community MSI Installer, после мне пришлось переконфигурировать программу в правильном установщике

    Окно mysql-installer-community-8.0.23.0.msi

    В ходе установки будут созданы различные папки, папка с сервером c:\Program Files\MySQL\MySQL Server 8.0

Настройка и запуск программ

  • Настройка и запуск MySQL Server

    mysql-installer добавит службу MySQL в автозагрузку, необходимо чтобы она была запущена.

    Служба MySQL в диспетчере задач

    Mysql-server не требует специальных настроек. Для создания базы данных следует сначала подключиться к серверу командной строкой

    c:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -u root -p
    используйте ваше имя пользователя и пароль, по умолчанию (root, root).

    После этого в командной строке можно выполнить запрос на создание базы данных

    CREATE DATABASE tor_db CHARACTER SET utf8 COLLATE utf8_general_ci;

  • Настройка и запуск php-cgi

    В папке с распакованным php (см. картинку выше) должен находится конфигурационный файл php.ini. Для запуска php на localhost переименуйте php.ini-development в php.ini

    В php.ini содержится множество настроек обработки сценария: подключаемые модули, вывод ошибок, лимиты памяти и т.д. В исходном файле мне ничего существенного менять не приходилось.

    Расскомментируйте в php.ini строки:

    • extension_dir = "ext" - папка для .dll модулями php
    • extension=pdo_mysql - модуль pdo_mysql

    Для запуска php на localhost на 9000-порту вам необходимо набрать в комадной строке

    c:\Program Files\php-8.0.2-nts-Win32-vs16-x64>php-cgi.exe -b 127.0.0.1:9000

    Командная строка, tasklist
  • Настройка и запуск nginx

    файл C:\Program Files\nginx-1.19.6\conf\nginx.conf должен быть следующего содержания, как в примере, различия с исходным файлом на изображении (слева - отредактированный файл, справа - оригинал)

    Основные настройки:
    • worker_processes 2 (рекомендовано устанавливать равное числу ядер процессора)
    • В секции http >> server >> location для переадресация запросов на index.php и обработки запросов методами GET и POST, добавлена стрка try_files $uri $uri/ /index.php?$query_string;

    • Раскомментируй секцию location ~ \.php$ и укажите следующие настройки
      root E:/html;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;

      Указана папка с сайтом root E:/html;

    • Запустите C:\Program Files\nginx-1.19.6\nginx.exe от имени администратора
      Процессы nginx и mysql в диспетчере задач

Следует помнить, что после изменения настроек, для их применения требуется перезапуск программ.

Вы можете попробовать разместить файлы вашего сайта в папке, что вы указали в настройках root E:/html; Теперь ваш сайт должен открываться браузером по адресу http://localhost/ Для выполнения дальнейших шагов по подключению скрытых Tor-сервисов папка сайта должна быть пустой.

Настройка Tor

При установке и настройке скрытых tor-сервисов я в основном руководствовался вот этой статьей

  • Скачиваем и устанавливаем Tor - браузер для Windows.

    Закройте Tor - браузер, если он запущен.

  • Перейдите в папку, куда вы установили Tor Browser
    ...\Tor Browser\Browser\TorBrowser\Data\Tor
    Директория ...\Tor Browser\Browser\TorBrowser\Data\Tor

    Откройте torc - файл и добавьте следующие секции в конец файла:

    # Hidden Service
    HiddenServiceDir E:\html
    HiddenServicePort 80 127.0.0.1:80

    Задайте HiddenServiceDir - Директория где будет размещаться тор-сайт.

    HiddenServicePort вы должны записать порт, который использует nginx. Например, если 5000-й порт, HiddenServicePort 80 127.0.0.1:5000

  • Сейчас в папке root E:/html; или HiddenServiceDir не должно быть размещено никаких сайтов, папка должны быть пустой.

    1. Запустите nginx, если он еще не запущен
    2. Запустите Tor-browser
    3. Теперь, открыв директорию корня проекта, вы обнаружите файлы:
      HiddenServiceDir E:\html

      Файл hostname содержит onion-адрес вашего домена в сети tor

На этом настройка скрытых tor-сервисов завершена. Скопируйте ваш файлы вашего сайта в папку (root E:/html; или HiddenServiceDir) и убедитесь в доступности сайта обычным браузером на http://localhost/.

Убедитесь в доступности вашего onion - сайта в сети tor.

onion-домен в tor-браузере

Заключение

В этой статье описан только процесс настройки и установки tor-сайта, и не рассказывается как защитить его от раскрытия.

Для повышения безопасности следуйте следующим советам:

  • Спрячьте Tor-сайт за Proxy-сервером
  • Не распространяйте ссылки на ваш onion-сайт в публичном интернете без использования анонимайзеров.
  • Не используйте flash-плеер на onion-сайте. Эта технология устанавливает прямое соединение и раскрывает ip
  • tor-трафик может быть распознан с вероятностью около 70%, тем самым большой объем трафика можно локализовать. Tor-сайты не должны быть рассчитаны на большую аудиторию.

Выводы

Благодаря наличию в интернете подробной документации и простоте установки, развернуть onion-сайт на обычном недорогом ПК с Windows-10 не составит много труда и времени.

Для onion-сайта не требуется статического ip-адреса, onion-домен доступен почти сразу после регистрации или смены ip

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