如何在OpenWrt中设置tor桥?


2

先生们!我有一个严重的麻烦,我写这个是因为我无法在互联网上的任何其他地方找到解决方案。

我有时候需要使用tor而且它还没有正式禁止,但在我居住的地方它非常危险。所以我想建立一个带OpenWrt的路由器,并配置连接的方式是某些部分流量(来自不同的机器)将通过tor网络传输,但(原文如此!)使用我提供的网桥。

根据我的理解,为了使用桥设置完全功能的连接,我必须做的第一件事是下载这两个包,所以我做了:

opkg install tor
opkg install obfsproxy

我不得不提到obfsproxy及其所有依赖项如python等占用相当多的闪存,而我只有32 MB。因此,为了适应所有内容,我必须使用 OpenWrt网站上的指南连接USB闪存驱动器并扩展文件系统。我认为重要的是要说,因为它可能会对下一步会发生什么产生影响。

之后,我认为我需要编辑我找不到的torrc(虽然我知道它有时可能不存在)所以我创建了我的/ var / lib / tor,其中OpenWrt默认放置tor及其配置(即至少我能找到的东西)。所以在这个文件中我放置了这些行:

UseBridges 1
TransPort 9040
Exitpolicy reject *:*
ExtORPort auto
ClientTransportPlugin obfs4 exec /usr/bin/obfsproxy managed

#I placed my bridges here
bridge obfs4 ---------------- 
bridge obfs4 ----------------
bridge obfs4 ----------------

#I excluded the exit nodes which could be potentially run by the authorities of this area 
ExcludeExitNodes {XX}

之后我开始使用

/etc/init.d/tor start

它开始后经过几次尝试后才起作用。

我无法使用检查连接

torify curl -s https://check.torproject.org/ | grep -m 1

所以我不得不查看路由器的日志。我还可以观察到,tor正在使用默认配置加载,并且没有关于它应该使用桥接的事实的信息。而且我真的不想冒险不是100%确定这个东西适用于桥梁。

所以我尝试创建控制端口以检查电路并获取有关桥的信息,因此我将其添加到torrc

ControlPort 9051
CookieAuthentication 1

并使用 python脚本来检查电路。但是脚本没有正常工作,而且它导致系统故障,与路由器的ssh连接中断,我唯一能做的就是将路由器设置为救援模式并重新安装操作系统。

我哪里做错了?我怎么能正确设置OpenWrt中的tor桥?

UPDATE.1好像我发现了某种线索。我试图重复所有步骤,看看第一次出现问题的地方。我一直试图找到解决方案,检查不同的配置文件,但我找不到任何东西。

当我安装obfsproxy时,似乎第一次冲突就出现了。当我只安装了tor和obfsproxy并且在torrc中配置了桥(位于我最终使用Tomek的评论建议中找到的地方)使用你可以在这篇文章中找到的文本,我试图运行

tor

最新消息之一是:

failed to parce/validate config: 'unknown option usr/lib/python2.7/site-packages/obfsproxy/transport/scramblesuit/__init__.pyc' failing

有什么想法吗?

顺便说一句,我之后尝试删除obfsproxy包并使用删除其依赖项

opkg remove --autoremove '*'

它使我的系统故障,所以我不得不重新安装的OpenWrt 再次


我建议查看opkg files tor输出,看看是否安装了任何默认的torrc文件。如果是 - 这是您应该放置配置的地方。如果不是 - 您可能需要编辑/etc/init.d/tor文件以指向您的配置文件。此文件的替代lookint也可能为您提供了放置torrc文件的线索。
Tomek

@Tomek那么明显,但我没有想到它!谢谢,我终于可以使用位于/ etc / tor / torrc中的默认配置找到此文件,虽然这对我没有帮助,因为它似乎问题在其他地方。
OldMajorD

更新中的消息似乎来自obfsproxy,所以这可能是你现在应该看的地方(我无法帮助你,因为我从未使用它)。它有任何配置文件要检查吗?此外,你能连接到没有obfs的任何桥吗?
Tomek

Answers:


1

obfsproxy包的OpenWRT不支持obfs4,只支持obfs2obfs3scramblesuitTor的桥梁。

如果要使用obfs4,则必须使用obfs4proxy包,它支持obfs4所提及的其他桥类型。据我所知,obfs4proxy目前尚未从官方OpenWRT包数据库中获得。

作为解决方法,您可以使用obfs3或scramblesuit网桥。

还有一件事,确保您已经安装了OpenWRT网站中提到的所有Tor和obfsproxy依赖项:

https://openwrt.org/packages/pkgdata/tor

https://openwrt.org/packages/pkgdata/obfsproxy

这是我在OpenWRT v18.06.4中使用的Tor配置/etc/tor/torrc

Log notice syslog
DataDirectory /var/lib/tor

User tor
AvoidDiskWrites 1
RunAsDaemon 0

VirtualAddrNetworkIPv4 10.192.0.0/10
AutomapHostsOnResolve 1
AutomapHostsSuffixes .onion,.exit

TransPort 0.0.0.0:9040
DNSPort 0.0.0.0:9053
SocksPort 0.0.0.0:9050

UseBridges 1
ClientTransportPlugin obfs2,obfs3,scramblesuit exec /usr/bin/obfsproxy managed

#Place your bridges here:

bridge obfs3 -----------
bridge scramblesuit ----------
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.