通过SSH隧道Windows VPN

好的,这是我的问题…

我想通过Windows XP上的pptp连接到一个VPN,但它是在我无法控制的防火墙后面。 我能够build立SSH连接。

我希望VPN到我无法控制的服务器,但允许VPN访问。 假设它有一个193.60.20.50的IP为参数。

我有一个运行Debian Wheezy的中间服务器,我可以完全控制它,并且可以从Windows计算机进行SSH连接。 假设它有一个IP为212.74.214.28的参数。

如何通过我的中间服务器将VPN连接从Windows机器连接到最终服务器? 我猜测这可能是在PuTTY中使用SSH隧道。 不过,我不知道我需要在中间服务器上允许stream量通过的iptables规则。

到目前为止,我已经设置PuTTY将端口1723转发到193.60.20.50:1723这似乎正在工作,因为VPN连接立即返回一个错误,而不是隧道closures时它会尝试连接一段较长的时间抛出一个错误。 但是我相信我的iptables规则拒绝连接。

我的iptables规则目前(我已经强调了我已经添加了试图解决这个问题的具体规则):

连锁input(政策接受)
目标人select源目的地
 fail2ban-ssh-ddos tcp  - 任何地方多端口dport ssh
 fail2ban-ssh tcp  - 任何地方多端口dport ssh
随时随地接受
拒绝所有 - 任何地方回环/ 8拒绝 - 与icmp-port-unreachable
接受所有 - 任何地方的任何地方状态RELATED,ESTABLISHED
接受tcp  - 任何地方tcp dpt:http
接受tcp  - 任何地方任何地方tcp dpt:https
 接受tcp  - 任何地方tcp dpt:1723
 接受gre  - 在任何地方
接受tcp  - 任何地方tcp dpts:http-alt:8090
接受udp  - 在任何地方udp dpts:60000:61000
接受tcp  - 任何地方的任何地方状态新tcp dpt:ssh
接受icmp  - 任何地方任何地方icmp回声请求
logging所有 - 任何地方的任何地方的限制:平均每分钟5分钟5日志级别debugging前缀“iptables denied:”
拒绝所有 - 在任何地方拒绝 -  icmp-port-unreachable

连锁FORWARD(政策接受)
目标人select源目的地
随时随地接受
随时随地接受
拒绝所有 - 在任何地方拒绝 -  icmp-port-unreachable

链式输出(策略ACCEPT)
目标人select源目的地
随时随地接受
 接受tcp  - 任何地方tcp dpt:1723
 接受gre  - 在任何地方

链fail2ban-ssh(1引用)
目标人select源目的地
随时随地返回

 chain fail2ban-ssh-ddos(1引用)
目标人select源目的地
随时随地返回

你不能通过SSH隧道GRE。 ( https://superuser.com/questions/657758/is-it-possible-to-tunnel-pptp-over-ssh

我build议你使用MyEnTunnel和Proxifier的设置。 MyEnTunnel是可选的,你也可以用腻子来做。

你可以通过SSH隧道在TCP模式的OpenVPN。