
Легко настройте скрытый сервис внутри сети Tor
Легко запускайте скрытый сервис в сети Tor с помощью этого контейнера
Сгенерируйте скелет конфигурации для вашего скрытого сервиса, замените
на имя шаблона скрытого сервиса. Например, если вы хотите, чтобы ваш скрытый
сервис содержал слово 'boss', просто используйте это слово в качестве аргумента. Вы можете использовать
регулярные выражения, например ^boss, создаст адрес, который будет начинаться
с 'boss'. Имейте в виду, что чем больше шаблон, тем больше времени потребуется на его
генерацию.
docker run -it --rm -v $(pwd)/web:/web \
strm/tor-hiddenservice-nginx generate <pattern>
Создайте контейнер с именем 'hiddensite' для обслуживания вашего сгенерированного скрытого сервиса
docker run -d --restart=always --name hiddensite -v $(pwd)/web:/web \
strm/tor-hiddenservice-nginx
Давайте создадим скрытый сервис с именем, начинающимся на strm.
docker pull strm/tor-hiddenservice-nginx
Дождитесь загрузки образа контейнера. Затем мы можем сгенерировать наш скелет сайта:
$docker run -it --rm -v $(pwd)/web:/web strm/tor-hiddenservice-nginx generate ^strm
[+] Generating the address with mask: ^strm
[+] Found matching domain after 137072 tries: strmfyygjp5st54g.onion
[+] Generating nginx configuration for site strmfyygjp5st54g.onion
[+] Creating www folder
[+] Generating index.html template
Теперь у нас есть сгенерированный скелет, мы можем запустить контейнер с:
docker run -d --restart=always --name hiddensite \
-v $(pwd)/web:/web strm/tor-hiddenservice-nginx
И ваш сервис запущен! :)
Хотя запускать всё в одном контейнере — не самая лучшая практика, это простой способ начать, если у вас не так много опыта работы с docker и скрытыми сервисами. Если вы хотите использовать что-то более сложное, ознакомьтесь с этим репозиторием.
Вот пример того, как выглядит развёртывание с использованием этого другого образа.
version: '3'
services:
tor:
image: strm/tor
restart: always
depends_on:
- backend
environment:
LISTEN_PORT: "80"
REDIRECT: "backend:80"
PRIVATE_KEY: |
-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQDSqBzjGxL+UFdrFJSdc+LJn3RrXiaZ7k6kgSw8KqOCSRgIr2qO
XZrCa3YHE+PqsfbDVF0GO0Xy3A9fsIxRFMUo3K++3BaVJslUbqK2TH9fJt5Ji1b6
N5UzXsEzf73atXwMF63hgVFZFLhfSWH8jGE1svwDXn0YQWP88PVX34SrWQIDASsd
AoGAUWdd+/m9TrTQyqK0IbzIr0fYQ5gDq4mv1GLEYjR4SWF8pSCxL1yOBsmQ02sj
BSS2Vw4dpFfloCrRw2ipM8ac4kdLGCoYefQHwW2Kfdf9raVfPDP7vcxrs37sOgOh
2rSXCOOrmcoMrEka2/OTGW15jaNUEEoWacS3YL1Fj0Bi6g0CQQD4ZmBiF6qu2XnT
8lMr1Asdz3K8fYiyfl6CzHItUubAbQ8ipv12q8CerJqk3dO98V+w8llAsQ7BT5wq
8AZOPQR3AkEA2RobnACDvb2Jw+dYSFsqrHyIDojKsrNiDEFedkiFijRFqme+nrif
kJ4yTnSiphC+rSSBbvYMawsqiWBA7UPSrwJBAKXSVQClxNUpJ2PZt91HZAtuipRt
t8suGIY4mot1iDRN0XdiNN8TNZ3qLag7wUU4or+Yn/3Xae1euHpyftTxmYsCQQCd
oJxsGotYx62ULxPqz0um7yEWOU6hUAy8MB3X3FcTCjGO0PPKpfJ2ntXo0Ajcp5ci
msi81/e9DTnF9mPjtsY9AkAUG6heBlETMFzyka9FHPgu9aN2kRwvJ3QZDHuPxYG4
VZwljLxstlx57+N74D0aj6wrJw+iBH2BI+b+ZpnLXyy7
-----END RSA PRIVATE KEY-----
Чтобы это заработало, вам также нужно добавить веб-сервер с именем backend и разместить
там ваш контент. При таком развёртывании появляется больше движущихся частей, поэтому
и существует этот репозиторий — для людей, которые никогда ничего не публиковали
в даркнете, чтобы они могли наслаждаться им, не напрягаясь с отладкой
инфраструктуры.
docker build -t strm/tor-hiddenservice-nginx .
docker run -d --restart=always --name hiddensite \
-v $(pwd)/web:/web strm/tor-hiddenservice-nginx
docker run -it --rm -v $(pwd)/web:/web \
--entrypoint /bin/bash strm/tor-hiddenservice-nginx