这是场景:
我有一个编码文件,我无法更改 API URL,但我知道它是什么。我们假设是这样https://my.api.site.com/v1
。
当我运行时php myfile.php
,它会连接到 API URL,但问题是最近由于我所在区域的某些网络问题而无法连接。
所以我必须运行袜子代理,然后通过袜子连接。
这就是我在本地服务器中所做的:ssh -L 0.0.0.0:9999:my.api.site.com:443 root@remote
,然后将其添加到/etc/hosts
:
127.0.0.1 my.api.site.com
我想做这个:
每当我跑步时
curl -L https://my.api.site.com/v1
,它都应该经过https://my.api.site.com:9999/v1
.
由于文件已编码,因此我无法更改 URL。
我怎样才能通过像iptables
或 之类的防火墙来做到这一点csf
?
操作系统是Ubuntu 20。
尝试这个:
这将拦截发往端口 443 上的 locahost 的流量,并将其 NAT 到端口 9999。您不需要使用 SOX 代理 - 您所需要做的就是拦截发往本地计算机上的端口 443 的流量并重写它,以便它转到端口 9999 改为。(域仍然需要解析为 localhost,因此您可能仍然需要主机文件条目)