【问题标题】:OpenVPN + obfsproxy on OSX client [closed]OSX 客户端上的 OpenVPN + obfsproxy [关闭]
【发布时间】:2015-03-29 15:24:21
【问题描述】:

我正在尝试绕过一个非常严格的防火墙,该防火墙会阻止除端口 80 和 443 之外的所有内容,并且显然甚至会使用 DPI 来阻止 VPN。为此,我正在尝试使用 obfsproxy 混淆 OpenVPN 流量。这是我的设置:

服务器

obfsproxy obfs2 --dest=127.0.0.1:16080 --shared-secret=[secret] server 0.0.0.0:3389 正在运行。

lsof -i :3389 显示

COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
obfsproxy 1341 root    3u  IPv4  14396      0t0  TCP *:3389 (LISTEN)

OpenVPN Server 在 TCP 16080 上运行,Access Server 控制台可访问,一切正常。

客户

编辑:obfsproxy是通过pip获取的python版本。

sudo obfsproxy obfs2 --shared-secret=[secret] socks 127.0.0.1:443 在 OSX 10.9.5 的终端窗口中运行。

尝试使用“Tunnelblick”与以下 client.ovpn 进行连接:

setenv FORWARD_COMPATIBLE 1
client
server-poll-timeout 4
nobind
pull
remote [Server-IP] 3389 tcp
route [Server-IP] 255.255.255.255 net_gateway
socks-proxy-retry
socks-proxy 127.0.0.1 443
dev tun
dev-type tun
ns-cert-type server
reneg-sec 604800
sndbuf 100000
rcvbuf 100000
auth-user-pass
comp-lzo no
verb 3
setenv PUSH_PEER_INFO

# Certs...

问题

Tunnelblick 不断尝试连接,并且客户端的 obfsproxy shell 在此期间不断打印以下行:2015-01-30 15:52:42,508 [ERROR] Invalid SOCKS command: '3'。所以,至少在客户端,Tunnelblick 似乎找到了 obfsproxy,但就我而言。我该如何解决这个问题或至少获得更多调试信息?

更新

obfsproxy 客户端在启动后还会在第一行打印2015-01-30 15:39:36,431 [ERROR] Invalid SOCKS version: '71'。这似乎是在以下 python 脚本中创建的:http://pydoc.net/Python/obfsproxy/0.2.7/obfsproxy.network.socks5/。 Obfsproxy 似乎需要 Socks5。我正在尝试弄清楚如何让我的 VPN 客户端与 Socks5 通信,到目前为止,我找不到更多关于如何强制版本的信息。

更新 2

Viscosity 客户端有更多的日志输出,它打印recv_socks_reply: Socks proxy returned bad reply。它也不会导致 obfsproxy 中的invalid version 错误,但是它仍然无法连接,obfsproxy 打印invalid socks command 3。此外,我尝试使用与 torbrowser OSX 发行版(2.4.6 alpha 2)捆绑在一起的旧 obfsproxy 二进制文件,我认为它不是 python 版本。粘度中的相同行为,proxy returned bad reply

【问题讨论】:

  • 尝试通过 PIP 安装 obfsproxy,它似乎包含了对 socks5 的支持
  • 谢谢。一旦有时间,我会再次研究它——不过这可能需要一点时间。
  • 顺便说一句:仅仅因为 PIP 下的 obfsproxy 支持 SOCKS5,并不意味着它可以与 OpenVPN 一起使用 :(
  • 哦,我现在通过再次阅读我的问题可以看到:>客户端>编辑:obfsproxy是通过pip获得的python版本。 -> 即 pip 版本不能解决我的问题。我认为这是客户端和 obfsproxy 之间的通信 - 袜子似乎并没有那么标准化。

标签: vpn openvpn tor tunneling


【解决方案1】:

我遇到了“对于无效的 SOCKS 命令:'3'”的问题。使用wireshark,我看到“命令3”是一个UdpConnect,实际上,我的OpenVPN配置是udp,这是推荐的,但obfsproxy不支持。 我可以看到你的 Tunnelbrick conf 上有 tcp。也许隧道砖不支持 TCP ?或者对于我的 OpenVPN 版本(2.3.6),我需要有“proto tcp-client”行,也许它改变了?

我也有“无效的 SOCKS 版本 xx”的问题。套接字版本是在 socks 服务器上发送的第一个字节。可能有人尝试使用错误的协议连接您的客户端。

在 Mac 上使用 wireshark,您可能会看到您的情况发生了什么。

【讨论】:

    【解决方案2】:

    您使用的是什么版本的 OpenVPN?我必须获取最新版本 (2.3.6) 才能获得 this 补丁,然后才能让 ab9il.net 示例正常工作。获取最新版本的说明请见here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-16
      • 1970-01-01
      • 2020-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-02
      • 1970-01-01
      相关资源
      最近更新 更多