Jac*_*ich 4 linux ssh iptables ssh-tunneling
我的家庭网络中有一台服务器(无法端口转发)和 WAN 上的 VPS。我需要一个特定的端口上的请求,以不从,该VPS将被转发到我的家庭服务器。我有一个 SSH 隧道,如果我将请求发送到localhostVPS ,它可以正常工作。但是我希望localhost从互联网转发到 VPS 的请求通过隧道发送到我的家庭服务器。它需要是双向的。
我见过这个问题,但它对我不起作用。我很可能做错了什么。
我的确切程序:
在a我的主服务器 server 上,我运行此命令来设置隧道:
ssh -v -N -R 2222:localhost:22 root@server-b.com
Run Code Online (Sandbox Code Playgroud)
我在服务器b(VPS)上运行了以下命令:
iptables -t nat -A PREROUTING -p tcp --dport 2223 -j DNAT --to-destination 127.0.0.1:2222
Run Code Online (Sandbox Code Playgroud)
并尝试ssh从另一台机器:
ssh root@server-b.com -p 2223
Run Code Online (Sandbox Code Playgroud)
我设置GatewayPorts yes了sshd_config但是我仍然发现同样的问题:
ssh: connect to host server-b.com port 2223: Connection denied。
在服务器上设置GatewayPorts yes并AllowTcpForwarding yes输入。有了明确提到IP或服务器上创建反向隧道。这样服务器上的 sshd 也接受来自公共的连接:sshd_configbGatewayPorts clientspecified0.0.0.0*ab
ssh -NTR *:2222:localhost:22 root@server-b.com
Run Code Online (Sandbox Code Playgroud)
否则 sshd 仅与GatewayPorts no.
现在ssh 从另一台机器到端口2222:
ssh root@server-b.com -p 2222
Run Code Online (Sandbox Code Playgroud)
a验证后您将登录到服务器。
无需设置iptables转发。顺便说一句,root如果可能,请避免用户进行远程登录。
如果您不想设置GatewayPorts选项,那么您需要将流量从其他端口转发2223到localhost:2222。
这可以iptables在服务器上完成b:
iptables -t nat -I PREROUTING -p tcp -m tcp --dport 2223 -j DNAT --to-destination 127.0.0.1:2222
Run Code Online (Sandbox Code Playgroud)
*REDIRECT仅适用于相同的界面
但是不允许路由到loopback接口,除非:
echo 1 | sudo tee /proc/sys/net/ipv4/conf/all/route_localnet
Run Code Online (Sandbox Code Playgroud)
现在ssh从另一台机器到端口2223:
ssh root@server-b.com -p 2223
Run Code Online (Sandbox Code Playgroud)另一种选择是建立从端口一些最低限度的本地转发服务器2223来2222使用工具,如ssh,socat,netcat,*inetd等。
在服务器上b,使用socat:
socat TCP-LISTEN:2223,fork TCP:127.0.0.1:2222
Run Code Online (Sandbox Code Playgroud)或与netcat:
nc -l -p 2223 -c "nc 127.0.0.1 2222"
Run Code Online (Sandbox Code Playgroud)或与ssh:
ssh -4gfNTL 2223:localhost:2222 localhost
Run Code Online (Sandbox Code Playgroud)以上任何一种都可以与反向隧道结合使用,以一步完成来自服务器的双重转发a:
ssh -TR *:2222:localhost:22 root@server-b.com "ssh -4gfNTL 2223:localhost:2222 localhost"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2197 次 |
| 最近记录: |