大家好,欢迎来到IT知识分享网。
前言
Tor全称是The Onion Router(洋葱路由器)。使用了Tor的用户可以匿名地(相对地)浏览在线网站、
聊天和发送即时信息。官方项目地址为torproject,其对应的
onion域名为
http://2gzyxa5ihm7nsggfxnu52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion/.
onion域名只能通过Tor Browser访问。
本文章主要介绍onion站点的搭建流程,供技术交流使用。
搭建Nginx服务器
server {
listen 127.0.0.1:8080;
port_in_redirect off;
root /var/www/tomo.dev;
index index.html;
server_name _;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
}
其中port_in_redirect用来关闭跳转中带入的8080端口,否则在请求类似/posts路径时,
会跳转至:8080/posts/。如果Nginx监听在80端口,可以不用设置该参数。
搭建后,可以在服务器上通过命令curl http://127.0.0.1:8080测试站点访问是否正常。
安装Tor并配置
服务器使用的是Ubuntu,需要添加tor的仓库源:
sudo apt install apt-transport-https # add the gpg key wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | sudo tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null # add apt repository echo "deb [signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/tor.list echo "deb-src [signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org $(lsb_release -cs) main" | sudo tee -a /etc/apt/sources.list.d/tor.list # install sudo apt update sudo apt install tor deb.torproject.org-keyring
安装后,我们对Tor进行配置,其配置文件为/etc/tor/torrc。主要的配置为下面两项:
HiddenServiceDir /var/lib/tor/tomo.dev/ HiddenServicePort 80 127.0.0.1:8080
其中HiddenServiceDir表明运行后存放站点信息及密钥的目录,HiddenServicePort声明了
一个虚拟端口及转发端口,上面的配置表明站点信息在目录/var/lib/tor/tomo.dev/中,站点
监听了80端口并转发至本机的8080端口(即之前配置的Nginx服务器端口)。
配置后我们重启Tor服务sudo systemctl restart tor.service,成功后,在
/var/lib/tor/tomo.dev/目录中我们能够看到如下文件:
ll /var/lib/tor/tomo.dev/ total 24 drwx--S--- 3 debian-tor debian-tor 4096 Mar 22 01:15 ./ drwx--S--- 4 debian-tor debian-tor 4096 Apr 7 10:54 ../ drwx--S--- 2 debian-tor debian-tor 4096 Mar 22 01:15 authorized_clients/ -rw------- 1 debian-tor debian-tor 63 Mar 22 01:15 hostname -rw------- 1 debian-tor debian-tor 64 Mar 22 01:15 hs_ed25519_public_key -rw------- 1 debian-tor debian-tor 96 Mar 22 01:15 hs_ed25519_secret_ke
其中hostname为我们onion站点的域名
cat hostname zdunwj76t7oy6h4o67v4nox5gdykhxtoa73ldudp3k6jkl66ximlvnid.onion
在Tor浏览器中输入该地址,尝试访问,如果网络可达且配置正确,将会看到如下页面:
后续
| Characters | Time |
|---|---|
| 1 | Less than 1 second |
| 2 | Less than 1 second |
| 3 | Less than 1 second |
| 4 | 2 seconds |
| 5 | 1 minute |
| 6 | 30 minutes |
| 7 | 1 day |
| 8 | 25 days |
| 9 | 2.5 years |
| 10 | 40 years |
| 11 | 640 years |
| 12 | 10 millennia |
| 13 | 160 millennia |
| 14 | 2.6 million years |
我们可以使用mkp224o这个工具进行生成:
git clone https://github.com/cathugger/mkp224o.git cd mkp224o ./autogen.sh ./configure --enable-amd64-51-30k make
具体编译参数可以查看官方README。编译后,可以使用./mkp224o --help查看使用参数。
当前使用./mkp224o -d ~/onion -n 1 -s tomodev来生成我们tomodev前缀的站点名称。
运行过程中的输出如下:
./mkp224o -d ~/onion -n 1 -s tomodev set workdir: /home/tomo/onion/ sorting filters... done. filters: tomodev in total, 1 filter using 8 threads >calc/sec:.081099, succ/sec:0.000000, rest/sec:79., elapsed:0.sec >calc/sec:., succ/sec:0.000000, rest/sec:0.000000, elapsed:10.sec >calc/sec:., succ/sec:0.000000, rest/sec:0.000000, elapsed:20.sec ... >calc/sec:., succ/sec:0.000000, rest/sec:0.000000, elapsed:4770.sec >calc/sec:., succ/sec:0.000000, rest/sec:0.000000, elapsed:4780.sec tomodevqtaj5a3syxtrrclzs7p2625yr3hdwhbrzysviqzdeooakiayd.onion waiting for threads to finish... done.
在8核机器上运行大概1.5小时,结果保存在/home/tomo/onion/中,查看其中hostname内容,
可以看到生成的站点名称。将该目录同步至服务器,替换之前目录中的内容。
重启tor服务,我们可以在Tor浏览器访问进行测试,结果如下:
一些资料
- How To Install Tor
- Set Up Your Onion Service
- How Do Onion Services Work?
- How to create a vanity Tor .onion web address
原文发布在个人博客https://tomo.dev/posts/set-up-onion-service/
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/115019.html

