在主机之间转发stream量

请build议最简单的方法转发所有连接从主机:端口(外部接口)host2:端口(外部接口)

当我使用

ssh -L local_port:remote_host:remote_port -N -l user remote_host 

主要的问题是local_port必须在外部接口上也支持连接,以允许不仅从该机器上的本地主机连接

感谢您的build议

我会去这些路线之一:

  • 使用网桥时,只有当您不需要访问所涉及的两个接口中的任何一个时,才可以使用该网桥
  • 使用ipf安装相应的防火墙路由
  • ssh -L 0.0.0.0:localport:remote_host:remote_port -N -l user remote_host这种方式ssh将绑定到所有的接口不仅仅是本地的,这只是一个默认的

你没有解释你将要使用端口转发。 所以,除了使用-L标志之外,我还冒险build议为支持它的应用程序(例如Firefox)设置一个SOCKS代理:

 ssh -D *:9999 user@remote_host 

常用的方法是将Firefoxconfiguration为使用此SOCKS代理,并打开network.proxy.socks_remote_dns ,以通过其他主机将您的HTTP会话隧道化。

你错过了-g标志。 再加上远程主机也可以使用这个通道。

如果你使用的是freebsd,那么最好的办法是使用防火墙:

 kldload pf echo "rdr on INT proto tcp from any to any port PORT1 -> IP2 port PORT2" > /etc/pf.conf pfctl -f /etc/pf.conf pfctl -e 

INT – 接口名称(即rl0)

该命令将从INT:PORT1转发到IP2:PORT2

这是转发端口速度最快,最可定制的方法,但是仅限于BSD


检查PF常见问题的更多