Mac上使用Tor

发布于 2020-03-20 15:31:36

一般安装Tor会直接下载包含浏览器的懒人包,这次通过安装命令行版 tor 来访问洋葱网络。

  1. 安装 tor 命令:brew install tor
  2. 添加代理配置 Socks5Proxy 127.0.0.1:7891/usr/local/etc/tor/torrc,以解决国内网络问题
  3. 浏览器设置代理为 socks5://127.0.0.1:9050
  4. 浏览器打开 https://check.torproject.org/ 确认是否连接

配置 reflow 使 onion 地址的流量走 tor 网络

reflow是一个用Rust编写的自定义流量转发规则的工具,使用它来配置使得只有.onion网址走tor网络。所以这一步是个可选项。

Tor 网络内的 DNS 配置

方案一:使用Tor提供的DNS服务

配置更新为

Socks5Proxy 127.0.0.1:7891
DNSPort 127.0.0.1:9053 0
AutomapHostsOnResolve 1

最终 reflow 的配置为:(其中 onion-check 配置了 org.torproject,onion-sites 配置了 onion,分开配置的原因是为了方便调试,虽然最终的配置变成了一样的)

egress privacyproxy = socks5 127.0.0.1:7891
egress onionproxy = socks5 127.0.0.1:9050

dns{
   listen=udp 127.0.0.1:10053
   forward= {
       gfw-sites => privacyproxy|udp 1.1.1.1:53
       onion-check => udp 127.0.0.1:9053
       onion-sites => udp 127.0.0.1:9053
       else => udp 223.5.5.5:53
   }
}

relay{
    rule=mytrafficrule
    listen=socks5 127.0.0.1:1080
    resolver=udp 127.0.0.1:10053
}

rule mytrafficrule= any[
    cond domain {
      gfw-sites => privacyproxy
      onion-check => onionproxy
      onion-sites => onionproxy
    }

    direct
]

方案二:使用cloudflare提供的DNS服务(未成功)

reflow -> DNS request -> 127.0.0.1:53(UDP) -> cloudflared -> https://dns4torxxx.onion/dns-query (HTTPS) -> socat -> tor network (socks5) -> dns4torxxx.onion

一些截图

速度优化

可以设置入口节点和出口节点,这样速度就有保证了。最后配置变成:

Socks5Proxy 127.0.0.1:7891

DNSPort 127.0.0.1:9053 0
AutomapHostsOnResolve 1

EntryNodes {hk},{jp}
ExitNodes {hk},{jp}
ExcludeExitNodes {cn}
StrictNodes 1

移动设备使用Tor

Tor浏览器官方地址如下,正常搜索得到的结果是提供 VPN + Tor 浏览器功能的应用,会有广告和收费VPN项目。而且官方应用可以像前面那样配置高级选项。

高级配置截图

参考链接