Featured image of post 局域网内利用V2ray搭建Socks5科学代理

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

前言

个人平常无论工作还是在家,对谷歌的需求都还是挺大的,在家我用树莓派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

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
{
  "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

使用 Hugo 构建
主题 StackJimmy 设计