MENU

局域网内利用V2ray搭建Socks5科学代理

July 9, 2020 • Read: 26266 • 技术杂谈

前言

个人平常无论工作还是在家,对谷歌的需求都还是挺大的,在家我用树莓派3B刷了一个OpenWrt做软路由,用途也就是用来访问谷歌。
同时,开发工作呢刚好有一台Centos开发测试机器,其实之前也用它做了代理,但最近对这台测试机器有桌面使用需求,我索性把系统重装成了deepin20,然后重新配置一次,同时以此记录一下,或许某天哪天你也可以这样玩呢,嘿嘿。
这次装好deepin20之后倒是发现了另外一件事情,装好宝塔环境之后发现,貌似最新的面板基于Py3啦。
deepin 宝塔.png

这里说下我为什么要把这个代理单独独立出来哈,其实现在Win直接用 v2ray-N 这样的软件也是可以的,之所以这样做主要是两方面:

  1. 能够比较显著的提高传输速度,这个是真的有效果!
  2. 降低笔记本负载,也不用每次开机还要自启v2ray了(小本本经不住玩了)

废话一堆堆,嘿嘿~~~

配置条件

如果不满足下面这几个要求,那么后面的内容就没什么意义了。

  • 一台能够正常访问谷歌的服务器,并且也同时安装且配置好了 v2ray
  • 一台本地PC机,比如:一个树莓派,一台闲置电脑或一些路由器也行.
  • 和我一样爱瞎搞,哈哈

具体步骤

1、v2ray 安装
具体参考:https://v2ray.com/chapter_00/install.html (需梯子)
直接使用一键脚本安装:bash <(curl -L -s https://install.direct/go.sh)
事实上很大概率你会发现上面的命令在机器上无法安装,主要因为v2ray默认包下载地址是被干扰了滴...,所以只能用其它地址了,然后又实际上v2ray 其实里面是有jsdelivrCDN的,那这个就安装速度贼快了。

首先,用你的一切办法将https://install.direct/go.sh这个脚本下载到你的服务器

go.png

随后执行,bash go.sh --source jsdelivr,我的实际体验是10秒钟安装完成...
install.png
2、配置
v2ray 的配置的确有点麻烦,详细的就不讲了;简单说就是利用软件进行流量加密传输,然后对外开放一个代理(例如:socks5),然后再利用代理进行上网;想深入的伙伴可以去百度或者github,上面有很多资料和讲解,这里放一个自己的配置文件供参考。
默认配置文件路径:/etc/v2ray/config.json

{
  "policy": {
    "system": {
      "statsInboundUplink": true,
      "statsInboundDownlink": true
    }
  },
  "log": {
    "access": "/var/log/v2ray/access.log",
    "error": "/var/log/v2ray/error.log",
    "loglevel": "warning"
  },
  "inbounds": [
    {
      "tag": "proxy",
      "port": 10808,
      "listen": "0.0.0.0",
      "protocol": "socks",
      "sniffing": {
        "enabled": true,
        "destOverride": [
          "http",
          "tls"
        ]
      },
      "settings": {
        "auth": "noauth",
        "udp": true,
        "ip": null,
        "address": null,
        "clients": null
      },
      "streamSettings": null
    },
    {
      "tag": "api",
      "port": 7368,
      "listen": "127.0.0.1",
      "protocol": "dokodemo-door",
      "sniffing": null,
      "settings": {
        "auth": null,
        "udp": false,
        "ip": null,
        "address": "127.0.0.1",
        "clients": null
      },
      "streamSettings": null
    }
  ],
  "outbounds": [
    {
      "tag": "proxy",
      "protocol": "vmess",
      "settings": {
        "vnext": [
          {
            "address": "{远程v2ray服务器地址}",
            "port": {远程v2ray服务器端口},
            "users": [
              {
                "id": "481593de-022e-11ea-9e1d-00163e080e89",
                "alterId": 0,
                "email": "t@t.tt",
                "security": "auto"
              }
            ]
          }
        ],
        "servers": null,
        "response": null
      },
      "streamSettings": {
        "network": "ws",
        "security": null,
        "tlsSettings": null,
        "tcpSettings": null,
        "kcpSettings": null,
        "wsSettings": {
          "connectionReuse": true,
          "path": null,
          "headers": null
        },
        "httpSettings": null,
        "quicSettings": null
      },
      "mux": {
        "enabled": true,
        "concurrency": 8
      }
    },
    {
      "tag": "direct",
      "protocol": "freedom",
      "settings": {
        "vnext": null,
        "servers": null,
        "response": null
      },
      "streamSettings": null,
      "mux": null
    },
    {
      "tag": "block",
      "protocol": "blackhole",
      "settings": {
        "vnext": null,
        "servers": null,
        "response": {
          "type": "http"
        }
      },
      "streamSettings": null,
      "mux": null
    }
  ],
  "stats": {},
  "api": {
    "tag": "api",
    "services": [
      "StatsService"
    ]
  },
  "dns": null
}

3、启用代理
命令:systemctl start v2ray
状态:status.png
4、代理测试
命令:curl --socks5 127.0.0.1:10808 google.com
test.png
如果和我一样的看到谷歌301跳转,那就说明成功了。

其它

以上的配置只是利用v2ray搭建出一个能够上网的socks5代理,之后那些支持socks5的软件便可以借此遨游网络。
chrome 浏览器推荐插件:SwitchyOmega,同时刚才我的机器上面因为还装有宝塔面板,所以想要开放给其它的电脑使用还需要开放防火墙。

结言

最后,整个局域网内便都可以凭此代理进行上网;甚至:如果整个局域网的流量都经过此路由一次,那便可以实现路由科学上网。
proxy.png
google.png

Last Modified: May 25, 2021