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

背景

最近公司的网络不稳定,本地电脑访问公司内网的环境老是超时,请教了下组内的老前辈,得知可以通过使用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的用户名和地址,这里写root@127.0.0.1(ServerA要和自身建立互信)

所以执行命令为:ssh -f -N -D 192.168.20.22:7070 root@127.0.0.11

这样就建立了SOCKS5代理。

浏览器配置SOCKS5代理

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

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

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

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

 

博主:测试生财

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

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

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

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

 

   

上一篇:[CareerCup] 9.5 Permutations 全排列


下一篇:LeetCode 47——全排列 II