这篇文章上次修改于 1134 天前,可能其部分内容已经发生变化,如有疑问可询问作者。

以下方法不推荐使用,因可能已经失效。
最新推荐Centos 7+宝塔+Xray(VLESS)+ws+tls

注意:
本教程采用的是 CentOS 7.6.1810(Py2.7.5) 的版本,宝塔免费版 7.1.0,安装成功

教程开始

1、安装宝塔

注:
如果是新版本的宝塔是可以直接在宝塔中一键申请ssl。。

宝塔官方地址:https://www.bt.cn/

Centos安装命令:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh

Ubuntu/Deepin安装命令:

wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && sudo bash install.sh

Debian安装命令:

wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && bash install.sh

Fedora安装命令:

wget -O install.sh http://download.bt.cn/install/install.sh && bash install.sh

宝塔安装完成后会出现以下内容,在网页上面登录即可。
14498-327nji4x8x6.png

2、安装Nginx

不做网站用的只要勾选Nginx就好,其他取消掉
77598-yk7obq3a0s.png

如做网站用的就默认一键安装如Nginx,PHP,mysql等

选择一键安装。

3、安装V2ray

据热心朋友反馈原官方的脚本【bash <(curl -L -s https://install.direct/go.sh)】已不能使用。
2021-2 更新脚本为 【V2Ray官方安装脚本】

bash <(curl -L https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh)

来源:1、V2Ray一键安装脚本

4、设置开机启动:

systemctl enable v2ray



5、伪装V2ray

选择网站,添加站点
30005-omd6vxm962.png

申请ssl,选择Let’s Encrypt申请证书

86371-opvctwqx0zs.png

编辑配置,选择左侧的配置文件

再最顶部添加这个变量 ,如下图
52286-7wva9uqmrr5.png

# 定义变量
map $http_upgrade $connection_upgrade {
  default upgrade;
  ''      close;
}

设置v2ray的nginx地址伪装

注意:为了达到更好的伪装效果,以下配置我进行过修改,跟下图不一致,添加位置如下图

12426-or51cqmuphs.png

#V2ray代理
location /v {
  set $flag 0;
  #如果是http访问v2ray的伪装
  if ($server_port = 80) {
    set $flag 1;
  }
  if ($scheme = http) {
    set $flag 1;
  }
  #如果是搜索引擎
  if ($http_user_agent ~* (baiduspider|soso|sogou|yahoo|sohu-search|yodao|YoudaoBot|robozilla|msnbot|MJ12bot|NHN|Twiceler)) {
    set $flag 2;
  }
  #如果是爬虫
  if ($http_user_agent ~* "python|curl|java|wget|httpclient|okhttp") {
    set $flag 2;
  }
  #返回到指定的网站,可以是自己的站点
  if ($flag = 1) {
    rewrite ^/(.*)$ https://baidu.com/;
  }
  if ($flag = 2) {
    rewrite ^/(.*)$ https://baidu.com/;
  }
  #如果不是websocket请求
  if ( $http_upgrade != "websocket" ) {
    rewrite ^/(.*)$ https://baidu.com/;
  }
  proxy_redirect off;
  proxy_pass http://127.0.0.1:10000;
  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection "upgrade";
  proxy_set_header Host $http_host;
  proxy_read_timeout 300s;
}

保存即可,注意这个10000的端口是v2ray的端口。

6、修改V2ray配置文件

选择文件,打开目录
00449-gypru2zq4ck.png

编辑config.json文件,将下面的代码提缓掉原有的数据。

根据自己的需求需改一下内容

port:v2ray端口

id:v2ray的uuid,也是密码。生成的网站:uuid一键生成

path:访问v2ray的路径,也就是nginx里面的location

{
  "log": {
    "access": "/var/log/v2ray/access.log",
    "error": "/var/log/v2ray/error.log",
    "loglevel": "warning"
  },
  "dns": {
    "servers": [
      "1.1.1.1",
      {
        "address": "114.114.114.114",
        "port": 53,
        "domains": ["geosite:cn"]
      },
      "localhost"
    ]
  },
  "stats": {},
  "inbounds": [{
    "port": 10000,
    "protocol": "vmess",
    "settings": {
      "clients": [{
        "id": "ab92ccbe-8579-4d10-8b93-23af94991a98",
        "alterId": 64
      }]
    },
    "streamSettings": {
      "network": "ws",
      "security": "none",
      "wsSettings": {
        "path": "/v"
      }
    },
    "listen": "127.0.0.1"
  }],
  "outbound": {
    "protocol": "freedom",
    "settings": {}
  },
  "routing": {
  },
  "policy": {
    "levels": {
      "0": {
        "handshake": 4,
        "connIdle": 300,
        "uplinkOnly": 2,
        "downlinkOnly": 5,
        "statsUserUplink": false,
        "statsUserDownlink": false,
        "bufferSize": 10240
      }
    },
    "system": {
      "statsInboundUplink": false,
      "statsInboundDownlink": false
    }
  },
  "reverse": {},
  "transport": {}
}


7、现在启动v2ray

启动命令

systemctl start v2ray

查看状态

systemctl status v2ray

8、客户端配置

40711-u8khtjon7mg.png

好了,教程结束,小伙伴们Enjoy~~~

排错:
很多新手小白容易在填写v2ray配置文件的时候填错内容,导致v2ray服务无法启动。这里给一个简单排错的方案。

1、确认端口是否冲突或者超过了系统的端口限制,端口范围推荐(1024-65535)。

2、如果是json格式错误可以利用这个网站进行排查json.cn

这种情况说明json格式是正常的。

如果有错误的话,就会如下图,在右边会提示出错的行数,进行对照修改就好了。

参考出处:https://blog.afreemen.com/2019/85/

1