从零开始自建一个onion网站
本文将展示从零开始自建一个onion网站的方法以及其中的坑等,如果你有更好的方案,欢迎在评论区相互交流。
注:我只是出于个人兴趣搭建的onion网站,你们想怎么玩不关我事啊 !
开始搭建
我觉得我之前FAQ写的太多了,又没啥人看,所以这次就直接懒得写了,直接进正文。
搭建流程预览(顺序无所谓):
搭建并配置Web伺服器(Nginx等)
搭建并配置应用层伺服器(Hexo Blog等)
搭建并配置Tor
搭建Nginx本博客已写过,故直接略过。
Hexo Blog搭建请看Hexo官方文档
本文重点讲解Tor的安装及相关配置。
本文默认你的机器可以连接Tor网络,所以请不要拿中国大陆机器这种东西来消遣我,谢谢 !
- 安装Tor
添加apt源
1 | cat > '/etc/apt/sources.list.d/tor.list' << EOF |
我们不需要自己编译Tor,所以deb-src注释掉。
导入Tor project公钥
1 | curl https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --import |
安装Tor及相关依赖
1 | apt-get install tor tor-geoipdb nyx -y |
nyx 与 python-stem为监控Tor运行状况软体。
安装完成。
- 配置Tor
Tor的主配置文件为/etc/tor/torrc
,主systemd service为systemctl status [email protected]
,修改完配置文件记得重启服务。
本文仅展示搭建onion网站的方法,所以不涉及Tor-relay相关内容。
1 | sudo nano /etc/tor/torrc |
写入以下内容
1 | ClientPreferIPv6ORPort 1 |
ClientPreferIPv6ORPort
,有IPv6网络连接的机器请设置为1
,否则为0
。ControlPort
,用于监控Tor运行状况,请勿对外网开放(不安全),故设置为仅监听本机。CookieAuthentication
,仅监听本机,故无需认证。HiddenServiceDir
,用于存放onion网站相关的公钥和私钥以及域名信息,请勿和web服务器可访问目录放于一起。HiddenServiceVersion
,v3为最新版。HiddenServicePort
,onion网站的监听端口,不监听本机端口,所以无论如何都不会和本机现有的网站形成冲突,可放心填80/443,127.0.0.1:80
为本机web/应用伺服器监听的地址,请改成你自己的。
重启服务使配置生效
systemctl restart [email protected]
验证服务是否正常运行中
systemctl status [email protected]
- 测试网站是否生效
获取网站onion域名
1 | cat /var/lib/tor/hidden_service/hostname |
打开Tor browser,访问这个域名,如果一切正常,那么就成功了 !
注: Tor browser的行为和Chrome不太一样,有些lazyload的file可能直接不显示。
本站的onion域名如下,欢迎访问
http://7ngf2ldciugefabz334x7glvtgospq7ganbzht5qyipi6ivaqi5y5aid.onion/
来聊聊onion site的坑与优点
onion site有些比较坑的地方,比如 : 不支援 https(其实可以支援的,只是.onion只支援ev证书,所以dv证书当然是不存在的) ; 连接缓慢(好像大量的中继节点都在欧洲?) ; Tor browser导致部分元素不能正常加载等 。
但是也是有些优点,比如 : 不需要公网ip就能提供Web服务,即可以位于任何可以连接Tor的网络中即可提供服务,非常方便 ; 隐私性好,不必担心ISP分析你干了啥见不得人的事情等。
啊,我懒得写了,欢迎各位补充。 溜了 溜了 ~~~