# Linux 开启代理

今天折腾了几个小时终于把 linux 上的代理给搞好的了,真的无语啊。。。

# 下载 v2ray

v2ray 下载地址

# v2ray 配置

image-20211201134402956

主要是对 config.json 进行配置

{
  "inbounds": [
    {
      "port": 1080,
      "protocol": "socks",
      "sniffing": {
        "enabled": true,
        "destOverride": ["http", "tls"]
      },
      "settings": {
        "auth": "noauth"
      }
    }
  ],
  "outbounds": [
    {
      "protocol": "vmess",
      "settings": {
        "vnext": [
          {
            "address": "服务器IP",
            "port": 端口,
            "users": [
              {
                "id": "UUID",
                "alterId": alterID
              }
            ]
          }
        ]
      },
      "streamSettings": {
        "network": "tcp"
      }
    }
  ]
}

这玩意有点搞啊,Json 文件不能有注释,之前因为写了注释所以服务启动不起来。

这里我用的是香港 A IEPL < 广州移动节点,希望它能坚挺点,不至于很快挂掉。哪天有空写一个定时命令,定时更新节点。

开启代理: /home/wu/v2ray-cli/v2ray -config /home/wu/v2ray-cli/config.json

测试本地 IP: curl -4 ip.sb

测试代理 IP: proxychains curl -4 ip.sb

# 添加服务

vim /usr/lib/systemd/system/v2ray.service

[Unit]
Description=V2Ray Service
Documentation=https://www.v2fly.org/
After=network.target nss-lookup.target
[Service]
ExecStart=/home/wu/v2ray-cli/v2ray -config /home/wu/v2ray-cli/config.json
Restart=on-failure
RestartPreventExitStatus=23
[Install]
WantedBy=multi-user.target

# 启动服务

systemctl daemon-reload
systemctl start v2ray

# Proxychains

proxy 下载在 centos 下可能不可用,这里有一篇文章 Centos 7 安装 Proxychains 教程实现 Linux 伪全局代理

[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
socks5 127.0.0.1 1080

这里设置我的端口为 1080 用 socks5 协议

proxychains curl twitter.com -v

image-20211201140259549

可以正常跑通

# 设置全局代理

export all_proxy='socks://127.0.0.1'

curl facebook.com -v

image-20211201140533946

现在可以直接用 curl 跑通。

unset all_proxy 可以关闭全局代理

image-20211201140658853

这里有个问题,wget 不会走 sock5 协议,这就导致 wget 全局下不能直接用:

image-20211201140937663

但是可以用 proxychains 来强制执行。

image-20211201140955595

# 将开启代理配置成命令(sh 脚本)

#!/bin/bash
nohup /mnt/d/wsl/v2ray/v2ray -config /mnt/d/wsl/v2ray/config.json >/dev/null 2>&1 &           

>/dev/null 表示将标准输出扔到 null 里,

2>&1 表示将标准错误重定向为标准输出

& 表示后台执行

将这个命令命名为 v2 , 并移动到 /usr/local/bin 再加个权限 chmod 777 v2

Ok

直接终端可用

image-20211204160859836

参考链接:

Linux 终端设置代理

记录:Linux 下 V2Ray 原生客户端配置

Linux 下使用 v2ray

将一个 shell 脚本文件注册为一个全局命令

更新于

请我喝[茶]~( ̄▽ ̄)~*

Kalice 微信支付

微信支付

Kalice 支付宝

支付宝