【问题标题】:Tunneling requests via an ssh connection in php通过 php 中的 ssh 连接隧道请求
【发布时间】:2012-03-20 02:06:16
【问题描述】:

假设在机器 A 上创建到机器 B 的 ssh 隧道,使用例如

ssh -D 9999 user@remote-server-ip-machine-B

在 php 中,如何使用 stream_socket_client() 从机器 A 向机器 C 发出请求,以便通过上述隧道发出这些请求,例如

$socket = stream_socket_client("tls://$ip-machine-C:$port", $errno,$errstr, 60, STREAM_CLIENT_CONNECT, $context);

换句话说,请求必须源自运行在机器 A 上的 php 脚本向机器 C 发出,但对于机器 C,请求必须看起来像是来自机器 B(与机器 C 的连接需要使用tls)。

或者,有没有办法在没有 ssh 隧道的情况下直接在 php 中实现相同的最终结果?对此的任何帮助将不胜感激

【问题讨论】:

  • 对上述问题没有回应,在做了更多研究之后,我现在正试图找到一种方法让 php 通过 socks 代理发出任何外部网络请求,即如果可以的话做对了,然后我可以让 stream_socket_client() 通过 ssh 隧道发出请求。对于这个特定问题的任何帮助也将不胜感激。

标签: php proxy ssl ssh-tunnel


【解决方案1】:

我发现解决这个问题的最好方法是使用像OpenVPN这样的VPN(将机器A连接到机器B)或一个非常有用的脚本sshuttle,它是一个透明的代理服务器,可以作为一个穷人男人的VPN。

【讨论】:

    猜你喜欢
    • 2014-08-19
    • 2021-02-15
    • 2018-10-06
    • 2016-02-04
    • 2012-06-19
    • 2021-11-13
    • 2019-05-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多