Как разместить сайт в сети Tor (onion) и обеспечить его круглосуточную работу: полное руководство

Подробное руководство по размещению сайтов в сети Tor и обеспечению их бесперебойной работы. Узнайте, как настроить onion-сайт, обеспечить 24/7 доступность и повысить безопасность вашего хомелаба.

Не указано

Подготовка сервера

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

sudo apt update && sudo apt upgrade -y
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
adduser username
usermod -aG sudo username

Установка Tor

Установка Tor и проверка корректности работы

sudo apt install tor -y
sudo systemctl restart tor
sudo journalctl -u tor.service

Настройка скрытого сервиса

Конфигурация Tor для создания onion-сайта

HiddenServiceDir /var/lib/tor/hidden_service/
HiddenServicePort 80 127.0.0.1:80
HiddenServicePort 443 127.0.0.1:443

Размещение сайта

Размещение файлов сайта и настройка веб-сервера

<VirtualHost *:80>
    ServerName your_onion_address.onion
    DocumentRoot /var/www/html
    
    <Directory /var/www/html>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

Обеспечение круглосуточной работы

Настройка автозапуска и мониторинга для стабильной работы

sudo systemctl enable tor
sudo systemctl enable apache2

[Создание файла /etc/systemd/system/tor-watcher.service]
[Unit]
Description=Watch Tor service
After=network.target

[Service]
Type=oneshot
ExecStart=/bin/systemctl restart tor

[Install]
WantedBy=multi-user.target

Настройка безопасности

Меры по обеспечению безопасности onion-сайта

sudo apt install fail2ban -y

[Конфигурация fail2ban]
[apache-ddos]
enabled = true
port = http,https
filter = apache-ddos
logpath = /var/log/apache2/access.log
maxretry = 2
findtime = 300
bantime = 3600

Продвинутые настройки

Дополнительные функции и оптимизация для улучшения производительности

HiddenServiceDir /var/lib/tor/hidden_service/
HiddenServicePort 80 127.0.0.1:80
HiddenServicePort 443 127.0.0.1:443

[Оптимизация производительности]
CacheDirectory /var/cache/tor
CacheSize 10MB
MaxAdvertisedBandwidth 10MB
RelayBandwidthRate 10MB