使用此容器在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 的 Web 服务器,并将你的内容放在那里。使用这种部署方式会有更多的移动部件,因此这就是这个仓库存在的理由——让从未在深网发布过内容的人能够享受它,而不必为了调试基础设施而焦头烂额。
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