我正在尝试将 Web 流量从远程服务器转发到我的本地计算机,以测试一些 API 集成(tropo、paypal 等)。基本上,我正在尝试设置类似于 tunnlr.com 提供的内容。
我已经使用命令启动了 ssh 隧道
$ssh –nNT –R :7777:localhost:5000 user@server
然后我可以看到服务器现在正在侦听端口 7777
user@server:$netstat -ant | grep 7777
tcp 0 0 127.0.0.1:7777 0.0.0.0:* LISTEN
tcp6 0 0 ::1:7777 :::* LISTEN
$user@server:curl localhost:7777
Hello from local machine
Run Code Online (Sandbox Code Playgroud)
所以这很好用。curl 请求实际上是从本地机器提供的。
现在,我如何启用 server.com:8888 以通过该隧道路由?
我试过像这样使用 nginx:
upstream tunnel {
server 0.0.0.0:7777;
}
server {
listen 8888;
server_name server.com;
location / {
access_log /var/log/nginx/tunnel-access.log;
error_log /var/log/nginx/tunnel-error.log;
proxy_pass http://tunnel;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off; …Run Code Online (Sandbox Code Playgroud)