L o a d i n g . . .
SHIWIVI-文章

//sunny forever
while(life<end){
love++;
beAwesome :)}

    <
  • 主题:
  • + -
  • 清除背景
  • 禁用背景

VLess+TLS+WS代理服务器搭建

字数:988 写于:2022-03-10
最新更新:2022-03-10 阅读本文预计花费您3分钟
本文采用 WTFPL 许可证书,转载请不要标注任何本站信息

简介

VLESS 是一种无状态的轻量级数据传输协议,使用 UUID 进行身份验,其协议不再依赖系统时间,配置灵活。但其本身协议不带加密,因此需要配合 TLS 等加密手段。

前置需要

一台可用的VPS

国内的可以使用香港、台湾地区的服务器,如GCP在台湾的节点、softshellweb,国外的推荐vultr、搬瓦工等主流厂商,支持支付宝付款并且不容易跑路。

操作系统请选择自己熟悉的发行版,并能解决防火墙策略、开放端口等问题,这里以CentOS7为例。

安装完毕后需要测试是否能Ping通,可以直接使用ping命令尝试,或者去相关网站,国内可以通过站长Ping工具检测,国外通过yougetsignal检测。如果国内能ping通,说明该服务器可用,可以开始搭建了。如果国外能ping通,国内无法ping通,则说明被拦截了,需要换一台服务器。如果国内国外都无法ping通,则说明服务器还未部署好,需等待几分钟后再重试。

域名

域名推荐去 godaddy 购买,顶级域名为.com的域名一般第一年只需要59元,.cn域名一般35元,最便宜的诸如.live结尾的域名第一年不到14元

拿到域名后将其解析到所购买的VPS IP地址,域名一般需要24h才会生效(实际不用)。

SSL/TLS证书

SSL/TLS证书可以从以下平台免费获取,证书有效期一般为90天,90天后需要更换

将获取的证书、密钥文件上传到服务器上,在配置文件时使用。如果不想手动更新SSL证书,可以使用脚本自动更新
脚本地址:https://github.com/acmesh-official/acme.sh

安装内核

安装V2fly

Github开源地址:https://github.com/v2fly/fhs-install-v2ray

安装/更新 v2fly命令:

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

安装完成后,配置文件放在/usr/local/etc/v2ray/config.json路径下

Google BBR加速算法

TCP BBR(Bottleneck Bandwidth and Round-trip propagation time)是由Google于2016年发布的一种拥塞控制算法,可以显著地提高Linux服务器吞吐量并减少TCP连接的延迟

安装bbrplus:

wget "https://github.com/cx9208/bbrplus/raw/master/ok_bbrplus_centos.sh" && chmod +x ok_bbrplus_centos.sh && ./ok_bbrplus_centos.sh

安装完毕需要重启系统,重启完毕可通过uname -r命令查询内核,返回bbr相关值说明升级完成,通过命令lsmod | grep bbr查看是否载入bbr系统模块,返回bbr相关值说明已经加载。

CentOS8+系统内核自带BBR,开启方法可自行百度。

服务端

服务端配置

使用vim在/usr/local/etc/v2ray/config.json配置文件中添加配置设置。

{
  {
    "log": {
    "loglevel": "warning",
    "access": "/var/log/v2ray/access.log",   
    "error": "/var/log/v2ray/error.log"  //日志输出路径
    },
    "inbounds": [{
    "port": 8180 ,  //监听端口
    "protocol": "vless",//主传入协议
    "settings": {
    "decryption": "none",
    "clients": [
    {
    "id": "41803377-5789-4bf5-8cb4-dd6ad659554c",//UUID
    "level": 0
        }
      ]
    },
    "streamSettings": {
    "network":"ws",  //传输协议
    "security": "tls", //传输层安全
    "wsSettings":{
    "path":"/",     //路径
    "headers":{}
    },
    "tlsSettings": {
    "serverName": "newyear101.xyz", //域名
    "certificates": [{
    "certificateFile": "/etc/ssl/certificate.crt",//SSL证书路径
    "keyFile": "/etc/ssl/private.key" //密钥路径
            }]
         }
      }
    }],
    "outbounds": [{
    "protocol": "freedom",//主传出协议
    "settings": {}
    },{
    "protocol": "blackhole",
    "settings": {},
    "tag": "blocked"
    }],
    "routing": {
    "rules": [
    {
    "type": "field",
    "ip": ["geoip:private"],
    "outboundTag": "blocked"
        }
      ]
   }
 }
  • UUID作为唯一身份识别码,可通过客户端生成,或通过UUID生成网站获得,不能自行编写
    检测配置文件是否正确
    v2ray官方检测命令:
    /usr/local/bin/v2ray -test -config  /usr/local/etc/v2ray/config.json
    文件正确会返回值:
    V2Ray 4.44.0 (V2Fly, a community-driven edition of V2Ray.) Custom (go1.17.3 linux/amd64) A unified platform for anti-censorship. 2021/02/03 21:46:12 [Info] main/jsonem: Reading config: /usr/local/etc/v2ray/config.json Configuration OK.

更新防火墙规则

Centos 7/8 firewalld 放行端口
// 8180改成自己的端口号 firewall-cmd --permanent --add-port=8180/tcp //重启使之生效 firewall-cmd --reload
ubuntu系统 ufw放行端口
//8180改成自己的端口号 sudo ufw allow 8180/tcp //重启 sudo ufw reload
Centos 6/7 iptable放行端口
//8180改成自己的端口号 iptables -I INPUT -p tcp --dport 8180 -j ACCEPT //保存添加的规则链 service iptables save

客户端

客户端需要使用4.23.2以上内核

客户端下载地址:

客户端配置

配置项
别名 任意
地址 VPS的IP地址
端口 配置文件中的端口号
用户ID UUID,需要和配置文件一致
传输协议 ws
伪装域名 解析的域名
路径 配置文件中的路径
传输层安全 tls

命令

系统命令

如果已经启动v2ray服务,修改的配置文件需要重启生效

  • systemctl start v2ray 运行
  • systemctl stop v2ray 停止
  • systemctl restart v2ray 重启

常用服务命令

生成uuid

v2ctl uuid 生成一个新的uuid

配置相关

v2ray [参数]

参数 说明
-version 查看当前版本
-test 测试配置文件有效性
-config 手动指定配置文件,值可以是绝对路径、相对路径、url链接、”stdin:”(从标准输入读取内容)
上一篇:一位资深数据工程师酒后的肺腑之言(转载)
下一篇:Nginx笔记(上)
z z z z z