V2ray 介绍

发布时间: 更新时间: 总字数:762 阅读时间:2m 作者:IP:上海 网址
专栏文章
  1. alpine 部署 v2ray 服务
  2. Clash 使用
  3. Hysteria 2 介绍
  4. Mitmproxy HTTPS 代理工具
  5. WireGuard VPN 安装和使用
  6. Inode VPN 使用
  7. V2ray 介绍(当前)
  8. Shadowsocks Python版一键安装脚本
  9. OpenVPN client 使用问题
  10. OpenVPN server 配置文件详细说明
  11. CentOS 6/7 安装配置 OpenVPN Server
  12. CentOS 架设PPTP VPN服务教程

V2ray 介绍

容器部署方案

服务端

安装

text
bash <(curl -s -L https://git.io/v2ray.sh)

说明:

  1. 建议采用WebSocket + TLS/VMess-WS-TLS方式,http 服务采用Caddy代理

管理

  • v2ray info 查看 V2Ray 配置信息
  • v2ray config 修改 V2Ray 配置
  • v2ray link 生成 V2Ray 配置文件链接
  • v2ray infolink 生成 V2Ray 配置信息链接
  • v2ray qr 生成 V2Ray 配置二维码链接
  • v2ray ss 修改 Shadowsocks 配置
  • v2ray ssinfo 查看 Shadowsocks 配置信息
  • v2ray ssqr 生成 Shadowsocks 配置二维码链接
  • v2ray status 查看 V2Ray 运行状态
  • v2ray start 启动 V2Ray
  • v2ray stop 停止 V2Ray
  • v2ray restart 重启 V2Ray
  • v2ray log 查看 V2Ray 运行日志
  • v2ray update 更新 V2Ray
  • v2ray update.sh 更新 V2Ray 管理脚本
  • v2ray uninstall 卸载 V2Ray

配置文件路径

  • V2Ray 配置文件路径:/etc/v2ray/config.json
  • Caddy 配置文件路径:/etc/caddy/Caddyfile
  • 脚本配置文件路径: /etc/v2ray/v2ray.conf

client 配置获取

  • 二维码v2ray qr
  • url v2ray url

配置定时重启

每天凌晨 03:00 重启(crontab -e):

text
00 03 * * * systemctl restart v2ray.service

客户端

bash
mkdir /usr/local/v2ray
unzip -d /usr/local/v2ray v2ray-linux-64.zip
cp /usr/local/v2ray/systemd/system/v2ray.service /usr/lib/systemd/system
/usr/local/v2ray/v2ray -test -config /usr/local/v2ray/config.json
systemctl enable|start v2ray.service

Nginx 国内代理

bash
mkdir /etc/nginx/cert && cd /etc/nginx/cert
openssl genrsa -out server.key 4096
openssl req -new -x509 -days 3650 -key server.key -out server.crt -subj "/C=CN/ST=mykey/L=mykey/O=mykey/OU=mykey/CN=*.166.xyz/CN=domain2/CN=domain3"
text
server {
    listen 8443 ssl http2;
    server_name 0628.166.xyz;

    ssl_protocols TLSv1.2 TLSv1.3;
		ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384';
    ssl_prefer_server_ciphers on;
    ssl_certificate     cert/server.crt;
    ssl_certificate_key cert/server.key;

    access_log /var/log/nginx/vproxy.access.log;
    error_log /var/log/nginx/vproxy.error.log error;

    location / {
        add_header Content-Type text/plain;
        return 200 'Hello, World!\n';
    }

    location /websocket {
        proxy_redirect off;
        proxy_pass https://0628.0931.date;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        # proxy_set_header Host $http_host;
				proxy_set_header Host "0628.0931.date";
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_ssl_verify off;
        proxy_ssl_server_name on;
        proxy_ssl_session_reuse off;
    }
}

使用时,将服务器 address 改为代理的域名和端口即可。

FAQ

Caddy 启动失败 - 证书申请失败

错误信息:Caddy 状态: 未在运行

解决办法:

  • 使用systemctl cat caddy找到caddy的ExecStart,手动调试启动,可能需要输入邮箱,就可以正常申请到证书。

访问失败

text
[ERROR] failed to copy buffer:  write tcp 172.17.0.3:443->123.118.24.241:16050: use of closed network connection

解决办法:

bash
$ cat /etc/caddy/Caddyfile
1.kb.cx:9958 {
    gzip
    timeouts none
    proxy / docs.xiexianbin.cn {
        except /233blog
    }
    proxy /233blog 127.0.0.1:9999 {
        without /233blog
        websocket
        header_upstream -Origin
        timeout 10m # to increase this time
    }
}
import sites/*

参考

  1. 官网