Для публикации скрытого сайта в сети tor достаточно простого веб сервера.
В качестве примера можно развернуть сайт на базе Ubuntu+nginx
Установим необходимые пакеты:
sudo apt-get install nginx
sudo apt-get install ntpdate tor
sudo service tor stop
В каталог где будут располагаться файлы сайта запишем html файл для теста:
echo "Test onion" > /usr/share/nginx/html/index.html
chown -R debian-tor:debian-tor /usr/share/nginx/html
Теперь настроим nginx для прослушивания порта 9070(может быть любой другой, но менять потом и в конфиге tor’а) и укажем расположение директории с сайтом. В файле /etc/nginx/sites-available/default очищаем все и вставляем следующее:
server{
listen 127.0.0.1:9070;
root /usr/share/nginx/html;
index index.html index.html;
server_name tortest;
location / {
autoindex on;
}
}
Откроем порт 9070 и запустим nginx:
sudo ufw allow 9070
sudo service nginx start
Теперь можно проверить — работает ли сайт, пройдя по адресу 127.0.0.1:9070
Осталось настроить tor.
mv /etc/tor/torrc /etc/tor/torrc-default
Отредактируем /etc/tor/torrc:
SocksPort 0
SocksListenAddress 127.0.0.1
RunAsDaemon 1
DataDirectory /var/lib/tor
HiddenServiceDir /var/lib/tor/myonion/
HiddenServicePort 80 127.0.0.1:9070 #Тут прописывается порт на котором будет висеть скрытый сервис
Запускаем tor и все готово:
sudo service tor start
Адрес сервера можно посмотреть в файле /var/lib/tor/myonion/hostname и перейти через tor browser.