2个linux盒子,代理和ssh隧道

问题:我需要创buildssh转发到其他作为代理linux框。

我有两个Linux的箱子(centos 5.5),一个在办公室( server1 )后面的防火墙,其他在主机( server2

server1在端口3128上安装了squid代理。

我不能使用server1作为从家里的直接代理,因为它的防火墙后面。

我能够创build从服务器1服务器2的 SSH隧道,当我login到服务器2 ican ssh根@本地-p 12312到服务器1

我需要的是configurationserver2,所以它转发端口server2 :3128到server1 :3128

我可以添加server2的 IP地址和端口到Firefox的代理和访问的networking。

感谢名单

猜测工作

如果我正确地理解了你,你想从你的客户端用浏览器连接到server2,然后server2将连接隧道到server1,从而允许你通过安装在server1上的squid-proxy访问办公室networking。

只是为了让猜测工作完成,我认为你使用类似的东西

server1$ ssh -R 12312:localhost:22 server2 

build立第一条隧道。

解决scheme的尝试

如果你真的希望能够在客户端的firefox设置中inputserver2作为代理,请确保在server2的sshd_config(/ etc / ssh / sshd_config)中启用了GatewayPorts:

  GatewayPorts yes 

还要确保没有阻塞的iptables规则适用于您要使用的端口。

那么您可以使用现有的隧道,而不是:

 server1$ ssh -R *:3128:localhost:3128 server2 

或者如果你真的想使用你现有的隧道,你可以使用:

 server2$ ssh -L *:3218:localhost:3218 -p 12312 localhost 

一些附注

如果按照上面所述的方式进行操作,那么每个可以访问server2(无需login)的人都可以使用端口3128作为代理端口,从而访问您的办公室networking(如果没有其他措施)

我不知道你们公司有什么样的政策,但是在尝试这样的隧道之前,请确保你们没有违法。

另一种scheme

改变你现有的隧道

 server1$ ssh -R 3128:localhost:3128 server2 

从你的客户问题

 client$ ssh -L 3218:localhost:3128 server2 

然后在你的Firefox添加本地主机和端口3128作为代理configuration。

像这样,你不需要configurationGatewayPorts,只有在server2上login的人才能使用到server1的隧道