Создание домена .onion

Тема в разделе "Интернет", создана пользователем Транклюкатор, 3 фев 2019.

Метки:
  1. Транклюкатор

    Транклюкатор Господин ПЖ

    TOR может скрыть реальное местоположение сайта, а это значит что его не смогут отключить, а создателя - найти и наказать/устранить (при соблюдении определённых правил). Кроме того TOR-адрес в доменной зоне .onion невозможно украсть/присвоить/отозвать до тех пор пока вы не потеряете секретный ключ от этого домена.

    Для создания домена, нам нужен настроенный web сервер. Как его настраивать, объяснять не буду. Во многих случаях вам его может настроить поддержка хостера.

    Для начала устанавливаем Nginx.
    Код:
    $ sudo apt-get install nginx
    
    
    Рекомендуется в файле /etc/nginx/nginx.conf поменять следующие значения:
    Код:
    http {
    
    ...
    
            # не предоставляем версию используемого софта
            server_tokens off;
            # отключаем ведение логов
            #access_log /var/log/nginx/access.log;
            #error_log /var/log/nginx/error.log;
    
            error_log /dev/null crit;
    ...
    Далее создаём файл нового виртуалхоста:
    /etc/nginx/sites-available/site1

    Код:
    server {
            listen 127.0.0.1:80 default_server;
            server_name localhost;
    
            root /var/www/site1;
            index index.html index.htm;
    
            location / {
                    allow 127.0.0.1;
                    deny all;
    
            }
    }
    Включаем его:
    Код:
    $ cd /etc/nginx/sites-enabled
    $ sudo ln -s ../sites-available/site1
    Перезапускаем nginx и добавляем его в автозагрузку:

    Код:
    $ sudo service nginx restart
    $ sudo update-rc.d enable nginx
    Создаём каталог с будущим сайтом:

    Код:
    $ sudo mkdir /var/www/site1
    Кладём туда необходимые файлы и сменяем владельца:

    Код:
    $ sudo chown -R www-data:www-data /var/www/site1
    Настройка TOR

    Настройка TOR сводится лишь к его установке и добавлению 2 строчек в конфиг.

    Код:
    $ sudo apt-get install tor
    Открываем /etc/tor/torrc:

    Код:
    HiddenServiceDir /var/lib/tor/site1 # каталог создаётся автоматически
    HiddenServicePort 80 127.0.0.1:80
    Перезапускаем TOR:

    Код:
    $ sudo /etc/init.d/tor restart
    Первая строчка в конфиге указывает путь к закрытому ключу, который создаётся автоматически TOR'ом при первом запуске после модификации конфига и играет роль onion-домена. Давайте посмотрим на содержимое каталога для большего понимания:
    Код:
    $ sudo ls /var/lib/tor/site1
    hostname  private_key
    Файл hostname содержит адрес домена сгенерированного на базе хеша ключа private_key, который в свою очередь сгенерировался случайным образом при первом запуске.

    Код:
    pigf5kfufjz63s5z.onion
    удаление/модификация файла hostname не влечёт никаких последствий, при следующем перезапуске TOR он вновь создаётся на основе ключа. Это скорее файл-подсказка для вас.

    А вот ключ private_key необходимо держать в секрете. До тех пор пока вы являетесь единственным владельцем этого файла - ваш домен никто и никогда не украдёт.

    Ключ имеет стандартный вид:

    Код:
    -----BEGIN RSA PRIVATE KEY-----
    MIICXQIBAAKBgQCiwfOmTC3c02kaz/BGftIXLafz4z6sTbufBpM/usaQAFdbW072
    xZ0ds2ZEVbQNOjewU9QihrtA25v20ZblbEZfrLkPytKzb/ghCIEQN/mbSsnBcJ9b
    JJa0OzhUy+V9uuXrO0afpk7eCB/EPNdwugfKu/G9JaBirWrRMkkAozhKjwIDAQAB
    AoGBAJlFVwMzWDlN6fvy+E4a3hQvzauSRBIVPevbUE3CwX0YpSuGSE2B+Zzfth4C
    K4YNXiYyO2KsSKkiZrS/2X+CQJ4WLy87VCkoF2TF5C4MKF3SOhGPorO4TCtxkhnN
    7tprZFIlT7/cP45XretG+i6ZuksZtv2Oje0r1oCwxv0F4V5BAkEA0rVve2Q0x5EG
    nZrBPFgsdPm6ikutuMUBFbNxv71ILbh3f+qePpH6wZIjgQ7FJXGXarC1DcyaPT52
    QQWWnhGCYQJBAMW97zxTD+9klPBisZ7ClFWh88VBCPVeyz5AS2oQdNtRaJeKyiiS
    JhtNIq5yPabCZ/JecqbtCoMY/pdJeJNs0u8CQFyAgG+YHz+ZYGEiRkDaqLG1zHnY
    HWznN8GyJHa7fwtrVzLV6iCn74C5SlLnDA+THZkd+G4Va4UFfd6vuF6uayECQD9Q
    aWFvVxLXqbiuYSDsPIKOsHbgM/YcvAban0r+qevvTQX4snH7Gah0Mj6Y5ZSXeqDo
    DN3V2B/RyPK325uYpJECQQCs/Ko0Z2LIk+fDaHRsWI00DbflRK8jptnjArVTrabs
    0Os5jX+UFum0kGRlNKQPV8suucP/5y6FanlmTs3RFwpt
    -----END RSA PRIVATE KEY-----
    Рекомендуется сделать копию ключа, предварительно зашифровав например GPG, используя криптостойкий пароль (либо ваш ключ) и куда-нибудь скопировать:

    Код:
    $ sudo gpg -c /var/lib/tor/site1/private_key
    Если очистить каталог /var/lib/tor/site1 от ключа, то при следующем перезапуске TOR сгенерирует новый ключ с новым случайным onion-адресом.

    Вернёмся к конфигу. Вторая строчка (HiddenServicePort 80 127.0.0.1:80) задаёт какой порт будет у onion-ресурса и какой адрес и порт будем форвардить на него. В нашем случае мы берём адрес/порт 127.0.0.1:80 и форвардим его на pigf5kfufjz63s5z.onion:80.

    Давайте проверим так ли это. Откройте в tor-browser, либо в любом другом браузере, но с настроенным TOR и введите адрес http://pigf5kfufjz63s5z.onion. Должна открыться страница что висит на 127.0.0.1:80.

    перезапускаем TOR, после чего создаются ключи в соответствующих каталогах.
     
    Izilda нравится это.
  2. Транклюкатор

    Транклюкатор Господин ПЖ

    Для создания сайта в даркнете потребуется настроить сервер для работы с сетью Tor и генерировать onion-домен (публичный ключ).

    Где взять хостинг для onion сайтов? Специализированных сервисов нет (а если и есть, то вряд ли им можно доверять), придется брать абузоустойчивый vps или vds.

    Ставим и настраиваем nginx так, чтобы он не собирал и не выдавал никакой информации.
    Код:
    http {
    ...
    server_tokens off; # отключаем показ версии софта
    error_log /dev/null crit; # отключаем логи
    ...
    }

    Устанавливаем Tor и генерируем onion адрес

    Код:
    $ sudo apt-get install tor
    или (в Centos)
    $ yum -y install tor
    Если не ставится, добавляем репозиторий Тора и пробуем ещё.
    Код:
    # touch /etc/yum.repos.d/torproject.repo
    # vi /etc/yum.repos.d/torproject.rep
    В torproject.rep вставляем
    Код:
    [Tor]
    name=Tor Project Repo
    baseurl=http://deb.torproject.org/torproject.org/rpm/el/6/$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=http://deb.torproject.org/torproject.org/rpm/RPM-GPG-KEY-torproject.org.asc
    После установки правим файл /etc/tor/torrc
    Код:
    HiddenServiceDir /var/lib/tor/site1 # путь к закрытому ключу
    HiddenServicePort 80 127.0.0.1:80
    Перезапускаем Тор.
    Код:
    /etc/init.d/tor restart
    При перезапуске Тора в папке /var/lib/tor/site1 будет создан приватный ключ (файл private_key). На основе приватного ключа генерируется onion-домен (файл hostname). Вам важно сохранить ключ, а файл hostname на работу сайта не влияет - это просто имя домена.

    Соответственно, если кто-то получит ваш ключ, то сможет вмешиваться в работу вашего сайта. Особенно это критично для даркнет-магазинов. Поэтому опасно привлекать к работе над сайтом третьих лиц или пользоваться услугами onion-хостеров.

    Генерированный домен будет представлять случайный набор из 16 символов вида p3igfi4pfjz63s5y.onion. Для создания красивого домена onion потребуется время и специальный софт.

    Программы для генерации читаемого onion домена.

    Scallion - использует подбор хэшей через GPU .NET/Mono.
    Eschalot - поиск по словарю, Unix/Linux

    Удобнее, на мой взгляд, Scallion, т.к. его можно запускать на своей домашней машине под Windows. Если ваш сервер мощнее домашнего компа, запускайте на сервере.

    Качаем и запускаем из командной строки файл scallion.exe, через пробел пишем интересующую фразу.

    [​IMG]


    Чем длиннее фраза, тем дольше времени уйдет на генерацию.

    Есть специальные магазины по продаже onion-доменов, типа udoheels4great5d.onion. Но продавец знает ваш ключ и сможет вмешаться в работу сайта.


    Настраиваем сервер для работы с сетью Tor

    Правим конфиг nginx.
    Код:
    server {
    listen 127.0.0.1:80 default_server;
    server_name localhost;

    root /var/www/site1; #путь к onion сайту
    index index.php;

    location / {
    allow 127.0.0.1;
    deny all; # делаем сайт доступным только для localhost.

    }
    }
    Теперь перезапускаем nginx и проверяем доступность сайта в Tor-браузере.
     
    Izilda нравится это.