新建一个APPVM作为网关,转发远端SOCK5流量


首先说明,本实验所需:

  • 一个云服务器,用来提供ss
  • qube os
  • qube os 里面基于debian 9 创建的一个NETVM,暂时起名为GateWay
  • qube os 里面基于debian 9 的系统,起名为personal(最终用来上网的系统)

目的:

  • GateWay连接到云服务器的ss
  • GateWay将其链接到云服务器的端口转发出来,给personal用
  • 实现了personal与云服务器的隔离

一、在qubes os里面,创建GateWay

1、安装ss客户端

sudo apt-get update 
sudo apt-get install python-gevent python-pip
sudo pip install shadowsocks

2、然后创建配置文件(在你喜欢的地方,创建ss.json),这里local_address设置为0.0.0.0是关键点,目的是让personal系统可以监听到这个1080端口

{
    "server":"xxx.xxx.xxx.xxx",
    "server_port":1024,
    "local_address": "0.0.0.0",
    "local_port":1080,
    "password":"xxxxxxxx",
    "timeout":300,
    "method":"aes-256-cfb"
}

3、启动客户端,链接到云服务器

sslocal -c ss/ss.json 

如果想安装图形界面版的ss客户端,请参见kali linux 开启SS 以及利用SS 实现全局代理

 

二、在qubes os 里面,找到personal,点击setting

1、如下配置:

  • 将network 设置为上面所创建的系统GateWay
  • template系统选择debian 9

2、启动系统

3、安装proxychains,(这个一般在template系统【即template Debian9 】里面先装好,否则重启之后就没了)

sudo apt-get install proxychains

4、修改proxychains配置文件

(1)打开配置文件

sudo vim /etc/proxychains.conf 

(2)将dynamic_chain前面的注释符去掉
(3)添加代理服务器列表

默认是socks4 xxxx xxx

改成socks5 GatWay的IP xxxx 

//xxxx是GatWay链接ss开放的端口,配置ss时输入的local_port:xxxx  我这里用的是1080
//GatWay的IP 即为网关,可以在qubes os的 setting里面看到,我这里是 10.137.0.16

那么就是添加这一句

socks5 10.137.0.16 1080

5、通过proxychains启动浏览器即可实现代理

proxychains google-chrome

 

三、有同学可能会问,直接在personal里面直接启动ss客户端就好了嘛,为什么要多一层GateWay

原因是:

这样玩是为了给qubes os 里面的whonix系统用的。如果想知道更多,请自行了解。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐