我最近“购买”了一个 VPS,我想将其用作代理,以便能够使用我无法从德国访问的一些网站和内容。
由于我还懒得设置 Squid 和 OpenVPN(我目前认为这是必要的),所以我使用 ssh 隧道。
现在,几周后,我问自己 ssh 隧道是否不太好,或者 - 这就是我的问题 - 是否有任何我需要记住的警告/反对/缺点?
答案1
答案2
我能想到的一件事就是性能。但这实际上取决于您要挖掘的东西类型。
答案3
通常情况下,我发现延迟会增加,但 SSH 隧道的吞吐量正常(90%)。请务必进行设置ServerAliveInterval
以防止断开连接,并将其包装在脚本中以在失败时继续重新启动隧道。
主要缺点是它是每个 TCP 端口的隧道,除非您使用 SOCKS。 SOCKS 很好,但延迟似乎会增加更多,当然,并不是每个客户端都支持 SOCKS。
您可能需要GatewayPorts
在客户端或 SSH 服务器上运行以允许其他人通过您的隧道进行连接。在服务器上,这需要对 sshd_config 的 root 访问权限。
主要的性能警告(正如其他人所指出的)是,不可靠的连接可能无法很好地适应这种方法,因为 TCP 的算法在封装下反应不佳。
也就是说,大多数时候 SSH 似乎都在“做正确的事”。
答案4
SSH 隧道不应存在 TCP-over-TCP 问题。
ssh 解封装并重新封装 TCP,因此您不会遇到经典的 TCP-over-TCP 问题
参考:
https://en.wikipedia.org/wiki/Tunneling_protocol#cite_note-6