我正在尝试将对远程服务器上端口的所有请求转发到我在 localhost:5000 的本地开发环境上打开的端口。
我正在使用以下命令来实现这一点,但它总是因超时错误而失败:
ssh -nNT -R 9001:localhost:5000 root@<server ip>
# On another window...
curl https://<server ip>:9001/
curl: (7) Failed to connect to <server ip> port 9001: Operation timed out
我已经确定
- SSH 在客户端和服务器上都运行
- 我可以使用登录到本地主机
ssh localhost
- 我可以使用登录服务器
ssh root@<server ip>
- 如果我
curl localhost:9001
从远程服务器,它不会超时。它返回预期的响应。@RobertRSeattle lsof -i :9001
这是远程服务器上的结果
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 1425 root 8u IPv4 34175281 0t0 TCP *:9001 (LISTEN) sshd 1425 root 9u IPv6 34175282 0t0 TCP *:9001 (LISTEN)
谁能告诉我我做错了什么?
答案1
我发现服务器上的防火墙阻止了端口 9001。我不得不运行
sudo ufw allow 9001
使其工作。