v2ray配置ws+tls踩坑记录


v2使用tcp经常受干扰,因此研究ws+tls伪装。查找v2教程,真的千篇一律,基本都是233boy的一键脚本,然而不能对接面板。仅有的一篇博客http://sobaigu.com/ssrpanel-v2ray-go.html,记录的还并不是十分详细。作为一个渣渣小白,只能自己踩坑。

感谢该博客的作者阿拉凹凸曼的一键脚本deploy_node.sh,可以安装v2和caddy,其中的v2是面板的Go版插件,caddy用于域名伪装。

v2ray安装

最新版的Go版v2不知什么原因会出现如下错误:

# /usr/bin/v2ray/v2ray -config /etc/v2ray/config.json
V2Ray 4.21.2 (V2Fly, a community-driven edition of V2Ray.) Custom A unified platform for anti-censorship.
2020/02/15 21:08:13 [Error] V2ray-Poseidon: get panel from confirm err unexpected end of JSON input

暂未仔细研究,因此使用之前版本的。在之前跑v2的机子上执行

scp /usr/bin/v2ray/* root@0.0.0.0:/home/v2ray

将旧版的v2传到新机子上去。@之前的root是用户名,0.0.0.0换成新机IP。后接新机存放目录,需要提前新建。

使用以下代码

curl -L -s https://raw.githubusercontent.com/ColetteContreras/v2ray-ssrpanel-plugin/master/install-release.sh | sudo bash

安装好v2后,将/home/v2ray/目录下文件复制到/usr/bin/v2ray/替换即可。

caddy安装

  • 执行deploy_node.sh,选择3仅安装caddy即可自动配置 ws+tls。
  • 伪装域名需要提前解析至至服务器ip。
  • 转发路径使用默认即可。
  • 端口可以自定义,但是该端口需要与/etc/v2ray/config.json中对应一致。
  • 安装完成后编辑/etc/caddy/Caddyfile,修改第三行的tls_ca为你的邮箱账号。
  • 完成后执行caddy -conf /etc/caddy/Caddyfile --agree即可。

config.json

执行

vim /etc/v2ray/config.json 

粘贴以下内容:

{
    "log": {
        "loglevel": "debug"
    },
    "api": {
        "tag": "api",
        "services": [
            "HandlerService",
            "LoggerService",
            "StatsService"
        ]
    },
    "stats": {},
    "inbounds": [
        {
            "listen": "127.0.0.1",
            "port": 10087, //面板同步端口: 从面板同步过来的用户及配置信息,传递给V2的端口
            "protocol": "dokodemo-door",
            "settings": {
                "address": "127.0.0.1"
            },
            "tag": "api"
        },
        {
            "tag": "proxy",
            "port": 10086, //V2Ray端口: 即V2监听的端口,需要与caddy中设置的端口一致
            "protocol": "vmess",
            "settings": {
                "clients": [],
                "disableInsecureEncryption": false,
                "default": {
                    "level": 0,
                    "alterId": 16 //额外ID
                }
            },
            "streamSettings": {
                "network": "ws",
                "wsSettings": {
                    "path": "/game" //转发路径,默认/game
                }
            }
        }
    ],
    "outbounds": [{
        "protocol": "freedom"
    }],
    "routing": {
        "rules": [{
            "type": "field",
            "inboundTag": [ "api" ],
            "outboundTag": "api"
        }],
        "strategy": "rules"
    },
    "policy": {
        "levels": {
            "0": {
                "statsUserUplink": true,
                "statsUserDownlink": true
            }
        },
        "system": {
            "statsInboundUplink": true,
            "statsInboundDownlink": true
        }
    },
    "ssrpanel": {
        "nodeId": 1, //面板中该节点nodeID
        "checkRate": 300,
        "user": {
            "inboundTag": "proxy",
            "level": 0,
            "alterId": 16, //额外ID
            "security": "none"
        },
        "mysql": {
            "host": "0.0.0.0", //数据库主机IP
            "port": 3306, //数据连接端口
            "user": "ssrpanel", //数据库用户名
            "password": ".....", //数据库密码
            "dbname": "ssrpanel" //数据库名
        }
    }
}

最后测试运行

/usr/bin/v2ray/v2ray -config /etc/v2ray/config.json

后台运行

touch v2ray_logrun.sh
vim v2ray_logrun.sh

黏贴如下:

nohup /usr/bin/v2ray/v2ray -config /etc/v2ray/config.json >> v2ray_run.log 2>&1 &

保存并执行:

chmod a+x v2ray_logrun.sh && sh v2ray_logrun.sh

面板设置

添加V2Ray

  • 端口号一定记得是443,而不是之前caddy设置的端口,这里折腾了好久才明白过来。

  • 访问伪装域名hk1.tqraf.cn时,是一个2048小游戏,而当带上转发路径时hk1.tqraf.cn/game,则使用v2转发数据。
    伪装域名
    转发路径

  • 当提示Bad Request时,表示配置成功,如果是502 Bad Gateway则表示配置失败。

安装BBR加速

  • 安装BBR加速后,速度简直不是一个量级。实测安装前300k/s,安装后3M/s
  • 一键脚本:
wget "https://github.com/chiakge/Linux-NetSpeed/raw/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh
  • 选择1安装BBR/BBR魔改版内核,安装完成后重启,再次执行tcp.sh,选择5安装BBR魔改版即可。

更多

重新配置caddy请移步http://sobaigu.com/ssrpanel-v2ray-go.html
caddy配置


文章作者: Tqraf
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Tqraf !
评论
  目录