ssh端口转发实现socket5代理上网

背景

最近公司的网络不稳定,本地电脑访问公司内网的环境老是超时,请教了下组内的老前辈,得知可以通过使用ssh的socket5代理,通过隧道的方式走通。

如图,我本机机器到ServerA的延时较低,但是直接访问ServerB延时较高(A和B之间网络结构关系不明),这样可以在A与B通过ssh实现socket5代理,实现隧道转发功能。我只要在浏览器配上A提供的Socket5代理,即可以轻松访问B。

操作过程

帮助

ssh隧道相关的命令参数:

-f : 输入密码后进入后台模式

-N:不执行任何命令,用于端口转发

-D:使用socket5代理

-L: 转发tcp协议数据,需要指定host和port

-C:使用数据压缩,在网络慢的时候能提高上网速度;在网络快的时候会影响网速

建立ssh隧道

在A与B之间建立ssh互信(比较简单,此处省略)

我们在A机器上执行:

#执行此命令
ssh -f -N -D bindaddress:bindport username@address
#bindaddress:指的是serverA对外开放可访问的ip,比如serverA机器的ip为192.168.20.22(本地电脑可以ping通此ip)
#bindport:指的是serverA对外开放可访问的ip,随意填一个即可(比如7070)
#username@address:serverA的用户名和地址,这里写[email protected](ServerA要和自身建立互信)

所以执行命令为:ssh -f -N -D 192.168.20.22:7070 [email protected]

这样就建立了SOCKS5代理。

浏览器配置SOCKS5代理

打开firefox设置界面,如下设置:

配置A机器的socket5连接,相当于是A机器为代理,访问B机器。

 这样重新打开B服务器上的网站地址,速度明显提升了。


博主:测试生财

座右铭:专注测试与自动化,致力提高研发效能;通过测试精进完成原始积累,通过读书理财奔向财务自由。

csdn:https://blog.csdn.net/ccgshigao

博客园:https://www.cnblogs.com/qa-freeroad/

51cto:https://blog.51cto.com/14900374




猜你喜欢

转载自blog.51cto.com/14900374/2554274