突破内网最佳搭档:利用SSH反向隧道和本地转发工具加速服务器的外网访问

访问外网加速

突破内网

有的公司网络环境是受限的,上外网是需要通过代理的,而且对一些娱乐性子的网站进行了屏蔽。我们的目的就是要消除这个征象!

预备条件

  • 电脑一台
  • 一个可以上外网的公司代理
  • goagent/shadowsocks,而且有账号
  • proxifier: 控制网络请求
  • SwitchOmega: chrome的插件

实现原理

普通的科学上网上一节已经介绍过了,一样平常能直连外网的环境下都实用,但是在需要代理上网的环境下,就需要借助其他软件了。

普通环境下上网的過逞是: 请求->goagent/shadowsocks->访问。

但是内网代理环境下,全部需要访问外网的请求必须先经过代理。由于shadowsocks/goagent没有设置代理的选项(实在goagent有,但是不稳定),那么我们就需要借助proxifier类似的工具,先设置goagent/shadowsocks走代理访问外部,再将其他网络请求走goagent/shadowsocks创建的当地代理。这样我们就实现了穿越http代理。

关于这个穿越http代理,我说一下我的明白: 就是我们通过代理和外界进行了沟通,形成了一个隧道。我们将真实的请求通过这个隧道通报/担当,而代理只看到隧道有流量,却不知道内里详细是什么。

科学上网

科学上网现在首选的工具是shadowsocks,它可以创建一个当地的1080端口的socks5的代理,假如设置了容许局域网访问,还会在当地创建一个8123端口的http代理。

下面我们就要使用Proxifier这个软件,控制代理规矩。详细的操作如下:

  • Profile -> Advance -> Http Proxy Servers -> 开启
  • Profile -> Proxifier -> 添加可以访问外网的代理
  • Profile -> Proxification Rules -> Add
    1. 定名随意,好比 ss
    2. 应用软件添加shadowsocks.exe
    3. action选择第二步添加的可以访问外网的代理
    4. 假如http的代理不可用,可在第二步时,添加或追加一个相同地点的https代理
    5. 记得把新添加的放在最上面,规矩是从上往下实行的,而且保存最后一个defalut,否则其他环境上不了网了。。
  • Save

接着开启shadowsocks,启用系统代理(关于这个系统代理,我是将ie下面的Lan代理选择了主动模式)。

最后,安装chrome的插件SwitchOmega(实在就是proxySwitchy的新版本)。添加新规矩,选择socket5代理,地点填写127.0.0.1, 端口1080。使用新的规矩模式上网,好比twitter.com进行一下测试,要么察看一下ip地点。

关于SwitchOmega这个插件,我建议大家再创建一个规矩,设置为公司提供的代理。而且在主动切换模式下,将公司代理设置为默认访问方法。这样下来,通过chrome上网就不存在停滞了。

内网加速

进行了一番科学上网的设置后,基本全部的网络都是可以上了。缺点也有,就是公司封闭了的地点需要借助代理,这些大多的是国内的网站,走代理速率肯定不太好。那么我们另有什么措施可以让被公司封闭了的国内应用访问越发自如呢?这个想法我想在海外的留学生小伙伴肯定也有需求,海外看国内的视频网站也是被封闭的,以是需要借助国内的服务器,进行一下代理,这里我 建议一下goagent+SAE的方法。 实在还是建议自己在国内的vps上搭建一下shadowsocks,使用确实速率快,稳定。这两点我个人感觉比goagent好得多。

说了这么一大推,下面实践一下(原理还是和上面一样的)。

goagent+SAE

必备条件

  • SAE账号,便于创建应用
  • goagent
  • proxifier

步骤 :

  • 在SAE上创建一个应用,记着天生的地点(实在就是your_app_name.sinaapp.com这样的)
  • 将goagent/serve/php下目次文件打包上传SAE(SAE应用有上传代码的菜单)
  • 编辑goagent/local/proxy.ini
    • [gae] -> enable属性 -> 由1修改为0,封闭gae模块
    • [pac] -> 假如不需要切换的话,也是由1修改为0
    • [php] -> enable -> 设置为1, 表现开启
    • [php] -> fetchserver -> 设置为应用地点,就是类似 http://xxx.sinaapp.com/
  • 开启goagent.exe, 假如有告诫你需要使用管理员权限运行,而普通权限临时也没问题的环境下,忽略那个告诫吧。

开启之后,当地就会有一个8088端口的http代理,这样就可以通过proxifier要么switchOmega设置代理规矩了。

shadowsocks+阿里云

必备条件 :

我的国内代理搭建在阿里云上(ps:国内vps确实贵,带宽还小)。搭建的方法使用的是 docker ,详细操作可以查阅: 搭建shadowsocks 。

shadowsocks的客户端可以选择qt5,这样当地就可以开多个shadowsocks客户端了。

步骤 :

  • 服务器上搭建好 shadowsocks
  • 开启一个shadowsocks客户端,输入账号,指定当地端口
  • proxifier rules添加一个规矩,针对这个shadowsocks客户端,使其走公司提供的外网代理
  • browser要么proxifier可以使用当地端口的socks5代理

这样的话,国内访问速率就会比较流畅了,唯一的缺点就是国内vps价格比较贵。

参考资料

公司内网服务器(称作 hostA )访问外网速率特殊慢,以至于使用 Linuxbrew 安装工具特殊费事。经测试,下载同样的内容,处于办公网络的本机(称作 hostB )下载很快。遂起了代理加速的心思。

以下是解法。

本机当地转发

首先,我们需要在 hostB 上起一个历程,搭建一个当地的 socks5 代理。它将某个端口(记为 portB )收到的请求,全部转发到外网。

类似的工具有许多,这里不做睁开。

反向隧道

前作 中,我们介绍了 SSH 隧道功能。此处,我们可以从 hostB hostA 创建一个反向隧道,并在 hostA 上绑定端口 portA 。于是,发往 hostA:portA 的请求,都市经过 SSH 反向隧道转发到 hostB:portB ,再发到外网。我们需要在 hostB 上实行:

1
ssh -fTCNR localhost:portA:localhost:portB hostA

至此,大功告成~

域名注册服务 Domains

域名注册是华为云提供的集域名查询,购置,续费,管理,转入/转出等功能!于一体的域名服务,包含多种主流后缀域名,满意您种种建站诉求

com首购23元 | .cn首购15元 | 全场1元起

本文网址: http://www.11st22.com/d/202071651426_3692_3548327716/home

推荐阅读

tags

最新发布