增加vps-xray部署自建vpn
This commit is contained in:
34
vps-xray/vpn-vps-xray-optimized.yaml
Normal file
34
vps-xray/vpn-vps-xray-optimized.yaml
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
mixed-port: 7890
|
||||||
|
allow-lan: false
|
||||||
|
mode: rule
|
||||||
|
log-level: info
|
||||||
|
|
||||||
|
proxies:
|
||||||
|
- name: "VPS-Reality"
|
||||||
|
type: vless
|
||||||
|
server: 45.32.69.133
|
||||||
|
port: 443
|
||||||
|
uuid: e02bfa4e-8c3c-4625-a0dc-207dd37bffd8
|
||||||
|
network: tcp
|
||||||
|
tls: true
|
||||||
|
udp: true
|
||||||
|
flow: xtls-rprx-vision
|
||||||
|
servername: www.microsoft.com
|
||||||
|
client-fingerprint: chrome
|
||||||
|
reality-opts:
|
||||||
|
public-key: J0Q5maB5UZVzgAH1V6nGMHKuaaT4mNQRKMS5ztROKnY
|
||||||
|
short-id: 0def0ee07b3e5f05
|
||||||
|
|
||||||
|
proxy-groups:
|
||||||
|
- name: "Proxy"
|
||||||
|
type: select
|
||||||
|
proxies:
|
||||||
|
- VPS-Reality
|
||||||
|
- DIRECT
|
||||||
|
|
||||||
|
rules:
|
||||||
|
# 国内直连
|
||||||
|
- GEOIP,CN,DIRECT
|
||||||
|
- GEOSITE,cn,DIRECT
|
||||||
|
# 其余走代理
|
||||||
|
- MATCH,Proxy
|
||||||
239
vps-xray/vps-xray-fast.md
Normal file
239
vps-xray/vps-xray-fast.md
Normal file
@@ -0,0 +1,239 @@
|
|||||||
|
# VPS 一键部署 Xray VLESS TCP(极速方案)
|
||||||
|
|
||||||
|
> 纯 VLESS + TCP,无 TLS 加密开销,追求最大传输速度。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 〇、推荐配置
|
||||||
|
|
||||||
|
### 系统
|
||||||
|
|
||||||
|
| 系统 | 推荐 | 说明 |
|
||||||
|
|------|-----|------|
|
||||||
|
| **Debian 12** | ⭐ 首选 | 内核新(6.1+,原生 BBR)、资源占用最低、Xray 兼容性最好 |
|
||||||
|
| Ubuntu 22.04 / 24.04 | 可用 | 比 Debian 略重,snap 占内存 |
|
||||||
|
| CentOS / AlmaLinux | 不推荐 | 内核旧、防火墙复杂、包管理慢 |
|
||||||
|
|
||||||
|
> 优先选 **Debian 12 x86_64 最小安装**,不要装桌面环境。
|
||||||
|
|
||||||
|
### VPS 配置
|
||||||
|
|
||||||
|
| 项目 | 最低 | 推荐 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| **CPU** | 1 核 | 1 核 | VLESS TCP 无加密,CPU 几乎无负载 |
|
||||||
|
| **内存** | 256 MB | 512 MB | Xray 内存占用 < 30MB,512MB 留余量给系统 |
|
||||||
|
| **硬盘** | 5 GB | 10 GB | 系统 + Xray 总共约 2GB |
|
||||||
|
| **带宽** | 200 Mbps | 1 Gbps | 带宽是速度瓶颈,越大越好 |
|
||||||
|
| **流量** | 500 GB/月 | 1 TB+/月 | 按实际用量选,看视频消耗大 |
|
||||||
|
| **位置** | — | 日本 / 新加坡 / 美西 | 离你物理距离越近延迟越低 |
|
||||||
|
|
||||||
|
### 推荐 VPS 厂商
|
||||||
|
|
||||||
|
| 厂商 | 最低价 | 特点 |
|
||||||
|
|------|--------|------|
|
||||||
|
| **Vultr** | $3.5/月 | 按小时计费,随时删机换 IP,机房多 |
|
||||||
|
| **Bandwagon (搬瓦工)** | $49.99/年 | CN2 GIA 线路,国内直连速度快 |
|
||||||
|
| **RackNerd** | $10.98/年 | 性价比极高,适合轻度使用 |
|
||||||
|
| **DMIT** | $6.9/月 | 三网 CN2 GIA / CMIN2,延迟低 |
|
||||||
|
| **Akile** | ¥15/月起 | 中转 / IPLC 专线,速度顶级但贵 |
|
||||||
|
|
||||||
|
> **选机关键**:带宽 > 线路 > 位置 > 配置。1 核 512MB 即可跑满千兆带宽。
|
||||||
|
|
||||||
|
### 线路优先级(国内访问)
|
||||||
|
|
||||||
|
| 线路 | 延迟 | 高峰稳定性 | 价格 |
|
||||||
|
|------|------|-----------|------|
|
||||||
|
| IPLC / IEPL 专线 | ★★★★★ | ★★★★★ | 极贵 |
|
||||||
|
| CN2 GIA (AS4809) | ★★★★ | ★★★★ | 贵 |
|
||||||
|
| CMIN2 (移动精品) | ★★★★ | ★★★★ | 中等 |
|
||||||
|
| CN2 GT | ★★★ | ★★★ | 中等 |
|
||||||
|
| 普通线路 (163) | ★★ | ★★ | 便宜 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 一、一键部署脚本
|
||||||
|
|
||||||
|
SSH 登录 VPS 后,复制下面**整段**以 root 运行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# ==================== 安装 Xray ====================
|
||||||
|
bash <(curl -fsSL https://raw.githubusercontent.com/XTLS/Xray-install/main/install-release.sh)
|
||||||
|
|
||||||
|
# ==================== 生成 UUID ====================
|
||||||
|
uuid=$(cat /proc/sys/kernel/random/uuid)
|
||||||
|
|
||||||
|
# ==================== 写入配置 ====================
|
||||||
|
cat > /usr/local/etc/xray/config.json << EOF
|
||||||
|
{
|
||||||
|
"log": {
|
||||||
|
"loglevel": "warning"
|
||||||
|
},
|
||||||
|
"inbounds": [
|
||||||
|
{
|
||||||
|
"listen": "0.0.0.0",
|
||||||
|
"port": 443,
|
||||||
|
"protocol": "vless",
|
||||||
|
"settings": {
|
||||||
|
"clients": [
|
||||||
|
{
|
||||||
|
"id": "$uuid"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"decryption": "none"
|
||||||
|
},
|
||||||
|
"streamSettings": {
|
||||||
|
"network": "tcp",
|
||||||
|
"security": "none"
|
||||||
|
},
|
||||||
|
"sniffing": {
|
||||||
|
"enabled": true,
|
||||||
|
"destOverride": ["http", "tls", "quic"],
|
||||||
|
"routeOnly": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"outbounds": [
|
||||||
|
{
|
||||||
|
"protocol": "freedom",
|
||||||
|
"tag": "direct"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"protocol": "blackhole",
|
||||||
|
"tag": "block"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"routing": {
|
||||||
|
"rules": [
|
||||||
|
{
|
||||||
|
"type": "field",
|
||||||
|
"outboundTag": "block",
|
||||||
|
"protocol": ["bittorrent"]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# ==================== 防火墙 ====================
|
||||||
|
if command -v ufw &> /dev/null; then
|
||||||
|
ufw allow 443/tcp
|
||||||
|
ufw allow 22/tcp
|
||||||
|
ufw --force enable
|
||||||
|
elif command -v firewall-cmd &> /dev/null; then
|
||||||
|
firewall-cmd --permanent --add-port=443/tcp
|
||||||
|
firewall-cmd --reload
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ==================== 网络调优 ====================
|
||||||
|
cat > /etc/sysctl.d/99-xray-turbo.conf << 'SYSEOF'
|
||||||
|
net.core.default_qdisc=fq
|
||||||
|
net.ipv4.tcp_congestion_control=bbr
|
||||||
|
net.core.rmem_max=16777216
|
||||||
|
net.core.wmem_max=16777216
|
||||||
|
net.ipv4.tcp_rmem=4096 87380 16777216
|
||||||
|
net.ipv4.tcp_wmem=4096 65536 16777216
|
||||||
|
net.ipv4.tcp_fastopen=3
|
||||||
|
net.ipv4.tcp_slow_start_after_idle=0
|
||||||
|
net.ipv4.tcp_mtu_probing=1
|
||||||
|
net.ipv4.tcp_fin_timeout=15
|
||||||
|
net.ipv4.tcp_keepalive_time=300
|
||||||
|
net.ipv4.tcp_keepalive_intvl=30
|
||||||
|
net.ipv4.tcp_keepalive_probes=5
|
||||||
|
net.ipv4.tcp_max_tw_buckets=5000
|
||||||
|
net.ipv4.tcp_max_syn_backlog=8192
|
||||||
|
net.core.somaxconn=8192
|
||||||
|
net.core.netdev_max_backlog=8192
|
||||||
|
SYSEOF
|
||||||
|
sysctl --system > /dev/null 2>&1
|
||||||
|
|
||||||
|
# ==================== 启动服务 ====================
|
||||||
|
systemctl daemon-reload
|
||||||
|
systemctl restart xray
|
||||||
|
systemctl enable xray
|
||||||
|
|
||||||
|
# ==================== 验证状态 ====================
|
||||||
|
sleep 2
|
||||||
|
if systemctl is-active --quiet xray; then
|
||||||
|
STATUS="✅ 运行中"
|
||||||
|
else
|
||||||
|
STATUS="❌ 启动失败,请检查: journalctl -u xray"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ==================== 输出配置 ====================
|
||||||
|
SERVER_IP=$(curl -s --max-time 5 ipv4.ip.sb || curl -s --max-time 5 ifconfig.me)
|
||||||
|
|
||||||
|
clear
|
||||||
|
cat << RESULT
|
||||||
|
==========================================================
|
||||||
|
Xray VLESS TCP 部署完成 ${STATUS}
|
||||||
|
==========================================================
|
||||||
|
|
||||||
|
IP : ${SERVER_IP}
|
||||||
|
端口 : 443
|
||||||
|
协议 : VLESS
|
||||||
|
UUID : ${uuid}
|
||||||
|
传输 : tcp
|
||||||
|
安全 : none
|
||||||
|
|
||||||
|
==========================================================
|
||||||
|
|
||||||
|
⚠️ 请保存以上信息!
|
||||||
|
|
||||||
|
配置文件: /usr/local/etc/xray/config.json
|
||||||
|
查看日志: journalctl -u xray -f
|
||||||
|
重启服务: systemctl restart xray
|
||||||
|
==========================================================
|
||||||
|
RESULT
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 二、Clash Meta 全局配置
|
||||||
|
|
||||||
|
将 `【你的IP】` 和 `【你的UUID】` 替换为部署脚本输出的值:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
mixed-port: 7890
|
||||||
|
allow-lan: false
|
||||||
|
mode: global
|
||||||
|
log-level: info
|
||||||
|
tcp-concurrent: true
|
||||||
|
|
||||||
|
proxies:
|
||||||
|
- name: "VPS_VLESS"
|
||||||
|
type: vless
|
||||||
|
server: 【你的IP】
|
||||||
|
port: 443
|
||||||
|
uuid: 【你的UUID】
|
||||||
|
network: tcp
|
||||||
|
tls: false
|
||||||
|
udp: false
|
||||||
|
skip-cert-verify: true
|
||||||
|
|
||||||
|
proxy-groups:
|
||||||
|
- name: "Proxy"
|
||||||
|
type: select
|
||||||
|
proxies:
|
||||||
|
- VPS_VLESS
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 三、运维速查
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl status xray # 查看状态
|
||||||
|
journalctl -u xray -f # 实时日志
|
||||||
|
systemctl restart xray # 重启
|
||||||
|
ss -tlnp | grep 443 # 验证端口
|
||||||
|
sysctl net.ipv4.tcp_congestion_control # 确认 BBR
|
||||||
|
|
||||||
|
# 更新 Xray
|
||||||
|
bash <(curl -fsSL https://raw.githubusercontent.com/XTLS/Xray-install/main/install-release.sh)
|
||||||
|
|
||||||
|
# 测试配置语法
|
||||||
|
/usr/local/bin/xray run -test -config /usr/local/etc/xray/config.json
|
||||||
|
```
|
||||||
30
vps-xray/vps-xray-optimized-info.md
Normal file
30
vps-xray/vps-xray-optimized-info.md
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
==========================================================
|
||||||
|
Xray VLESS-Reality 部署完成 ✅ 运行中
|
||||||
|
==========================================================
|
||||||
|
|
||||||
|
IP : 45.32.69.133
|
||||||
|
端口 : 443
|
||||||
|
协议 : VLESS
|
||||||
|
UUID : e02bfa4e-8c3c-4625-a0dc-207dd37bffd8
|
||||||
|
流控 : xtls-rprx-vision
|
||||||
|
传输 : tcp
|
||||||
|
安全 : reality
|
||||||
|
SNI : www.microsoft.com
|
||||||
|
Fingerprint : chrome
|
||||||
|
PublicKey : J0Q5maB5UZVzgAH1V6nGMHKuaaT4mNQRKMS5ztROKnY
|
||||||
|
ShortId : 0def0ee07b3e5f05
|
||||||
|
|
||||||
|
==========================================================
|
||||||
|
|
||||||
|
>>> VLESS 分享链接(可直接导入客户端):
|
||||||
|
|
||||||
|
vless://e02bfa4e-8c3c-4625-a0dc-207dd37bffd8@45.32.69.133:443?encryption=none&flow=xtls-rprx-vision&security=reality&sni=www.microsoft.com&fp=chrome&pbk=J0Q5maB5UZVzgAH1V6nGMHKuaaT4mNQRKMS5ztROKnY&sid=0def0ee07b3e5f05&type=tcp#VPS-Reality
|
||||||
|
|
||||||
|
==========================================================
|
||||||
|
|
||||||
|
⚠️ 请妥善保存以上信息!UUID 和密钥仅在此处显示一次。
|
||||||
|
配置文件位置: /usr/local/etc/xray/config.json
|
||||||
|
查看日志: journalctl -u xray -f
|
||||||
|
重启服务: systemctl restart xray
|
||||||
|
==========================================================
|
||||||
|
|
||||||
400
vps-xray/vps-xray-optimized.md
Normal file
400
vps-xray/vps-xray-optimized.md
Normal file
@@ -0,0 +1,400 @@
|
|||||||
|
# VPS 一键部署 Xray VLESS-Reality(高速 / 抗封锁 / 稳定)
|
||||||
|
|
||||||
|
> 相比旧版(无 TLS 裸奔 TCP),本方案使用 **VLESS + Reality** 协议,无需域名和证书,伪装为访问真实 HTTPS 网站的流量,极难被识别和封锁。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 〇、推荐配置
|
||||||
|
|
||||||
|
### 系统
|
||||||
|
|
||||||
|
| 系统 | 推荐 | 说明 |
|
||||||
|
|------|-----|------|
|
||||||
|
| **Debian 12** | ⭐ 首选 | 内核 6.1+,原生 BBR,资源占用最低 |
|
||||||
|
| Ubuntu 22.04 / 24.04 | 可用 | 略重,snap 占内存 |
|
||||||
|
| CentOS / AlmaLinux | 不推荐 | 内核旧、防火墙复杂 |
|
||||||
|
|
||||||
|
> 优先选 **Debian 12 x86_64 最小安装**。
|
||||||
|
|
||||||
|
### VPS 配置
|
||||||
|
|
||||||
|
| 项目 | 最低 | 推荐 | 说明 |
|
||||||
|
|------|------|------|------|
|
||||||
|
| **CPU** | 1 核 | 1 核 | Reality 握手有少量加密运算,但 1 核足够 |
|
||||||
|
| **内存** | 256 MB | 512 MB | Xray 占用 < 30MB |
|
||||||
|
| **硬盘** | 5 GB | 10 GB | 系统 + Xray 约 2GB |
|
||||||
|
| **带宽** | 200 Mbps | 1 Gbps | 带宽决定速度上限 |
|
||||||
|
| **流量** | 500 GB/月 | 1 TB+/月 | 视频消耗大,按需选择 |
|
||||||
|
| **位置** | — | 日本 / 新加坡 / 美西 | 越近延迟越低 |
|
||||||
|
|
||||||
|
### 推荐 VPS 厂商
|
||||||
|
|
||||||
|
| 厂商 | 最低价 | 特点 |
|
||||||
|
|------|--------|------|
|
||||||
|
| **Vultr** | $3.5/月 | 按小时计费,随删随换 IP,机房多 |
|
||||||
|
| **Bandwagon (搬瓦工)** | $49.99/年 | CN2 GIA 线路,国内直连快 |
|
||||||
|
| **RackNerd** | $10.98/年 | 性价比极高,轻度使用首选 |
|
||||||
|
| **DMIT** | $6.9/月 | 三网 CN2 GIA / CMIN2,延迟低 |
|
||||||
|
| **Akile** | ¥15/月起 | 中转 / IPLC 专线,速度顶级 |
|
||||||
|
|
||||||
|
> **选机关键**:带宽 > 线路 > 位置 > 配置。Reality 方案对硬件要求与裸 TCP 方案一致。
|
||||||
|
|
||||||
|
### 线路优先级(国内访问)
|
||||||
|
|
||||||
|
| 线路 | 延迟 | 高峰稳定性 | 价格 |
|
||||||
|
|------|------|-----------|------|
|
||||||
|
| IPLC / IEPL 专线 | ★★★★★ | ★★★★★ | 极贵 |
|
||||||
|
| CN2 GIA (AS4809) | ★★★★ | ★★★★ | 贵 |
|
||||||
|
| CMIN2 (移动精品) | ★★★★ | ★★★★ | 中等 |
|
||||||
|
| CN2 GT | ★★★ | ★★★ | 中等 |
|
||||||
|
| 普通线路 (163) | ★★ | ★★ | 便宜 |
|
||||||
|
|
||||||
|
> 💡 **Reality 方案的额外优势**:普通线路 (163) 封 IP 风险高,Reality 能大幅降低被封概率,在便宜线路上性价比更高。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 一、服务端一键部署
|
||||||
|
|
||||||
|
复制下面**整段**,在全新 VPS 上以 root 运行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# ======================== 安装 Xray ========================
|
||||||
|
bash <(curl -fsSL https://raw.githubusercontent.com/XTLS/Xray-install/main/install-release.sh)
|
||||||
|
|
||||||
|
# ======================== 生成密钥 ========================
|
||||||
|
uuid=$(cat /proc/sys/kernel/random/uuid)
|
||||||
|
keys=$(/usr/local/bin/xray x25519 2>&1)
|
||||||
|
private_key=$(echo "$keys" | grep -i 'private' | awk -F': ' '{print $2}' | tr -d '[:space:]')
|
||||||
|
public_key=$(echo "$keys" | grep -i 'public' | awk -F': ' '{print $2}' | tr -d '[:space:]')
|
||||||
|
short_id=$(openssl rand -hex 8)
|
||||||
|
|
||||||
|
# 验证密钥生成
|
||||||
|
if [ -z "$private_key" ] || [ -z "$public_key" ]; then
|
||||||
|
echo "❌ 密钥生成失败!xray x25519 输出:"
|
||||||
|
echo "$keys"
|
||||||
|
echo "请检查 Xray 是否正确安装。"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ======================== Reality 伪装目标 ========================
|
||||||
|
# 自动选延迟最低的伪装目标(降低 Reality 握手耗时)
|
||||||
|
CANDIDATES=("www.microsoft.com" "dl.google.com" "www.apple.com" "www.amazon.com")
|
||||||
|
BEST_DEST="www.microsoft.com"
|
||||||
|
BEST_MS=9999
|
||||||
|
for site in "${CANDIDATES[@]}"; do
|
||||||
|
ms=$(curl -so /dev/null -w '%{time_connect}' --max-time 3 "https://${site}" 2>/dev/null | awk '{printf "%d", $1*1000}')
|
||||||
|
if [ -n "$ms" ] && [ "$ms" -lt "$BEST_MS" ] 2>/dev/null; then
|
||||||
|
BEST_MS=$ms
|
||||||
|
BEST_DEST=$site
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
echo "✅ 伪装目标: ${BEST_DEST} (延迟 ${BEST_MS}ms)"
|
||||||
|
DEST="$BEST_DEST"
|
||||||
|
SNI="$BEST_DEST"
|
||||||
|
|
||||||
|
# ======================== 写入 Xray 配置 ========================
|
||||||
|
cat > /usr/local/etc/xray/config.json << EOF
|
||||||
|
{
|
||||||
|
"log": {
|
||||||
|
"loglevel": "warning"
|
||||||
|
},
|
||||||
|
"inbounds": [
|
||||||
|
{
|
||||||
|
"listen": "0.0.0.0",
|
||||||
|
"port": 443,
|
||||||
|
"protocol": "vless",
|
||||||
|
"settings": {
|
||||||
|
"clients": [
|
||||||
|
{
|
||||||
|
"id": "$uuid",
|
||||||
|
"flow": "xtls-rprx-vision"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"decryption": "none"
|
||||||
|
},
|
||||||
|
"streamSettings": {
|
||||||
|
"network": "tcp",
|
||||||
|
"security": "reality",
|
||||||
|
"realitySettings": {
|
||||||
|
"show": false,
|
||||||
|
"dest": "${DEST}:443",
|
||||||
|
"xver": 0,
|
||||||
|
"serverNames": [
|
||||||
|
"${SNI}"
|
||||||
|
],
|
||||||
|
"privateKey": "${private_key}",
|
||||||
|
"shortIds": [
|
||||||
|
"${short_id}"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"sniffing": {
|
||||||
|
"enabled": true,
|
||||||
|
"destOverride": [
|
||||||
|
"http",
|
||||||
|
"tls",
|
||||||
|
"quic"
|
||||||
|
],
|
||||||
|
"routeOnly": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"outbounds": [
|
||||||
|
{
|
||||||
|
"protocol": "freedom",
|
||||||
|
"tag": "direct"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"protocol": "blackhole",
|
||||||
|
"tag": "block"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"routing": {
|
||||||
|
"rules": [
|
||||||
|
{
|
||||||
|
"type": "field",
|
||||||
|
"outboundTag": "block",
|
||||||
|
"protocol": [
|
||||||
|
"bittorrent"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# ======================== 防火墙 ========================
|
||||||
|
if command -v ufw &> /dev/null; then
|
||||||
|
ufw allow 443/tcp
|
||||||
|
ufw allow 22/tcp
|
||||||
|
ufw --force enable
|
||||||
|
elif command -v firewall-cmd &> /dev/null; then
|
||||||
|
firewall-cmd --permanent --add-port=443/tcp
|
||||||
|
firewall-cmd --reload
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ======================== BBR + 网络深度调优 ========================
|
||||||
|
cat > /etc/sysctl.d/99-xray-turbo.conf << 'SYSEOF'
|
||||||
|
# BBR 拥塞控制
|
||||||
|
net.core.default_qdisc=fq
|
||||||
|
net.ipv4.tcp_congestion_control=bbr
|
||||||
|
|
||||||
|
# TCP 缓冲区(提升大文件 / 视频流吞吐量)
|
||||||
|
net.core.rmem_max=16777216
|
||||||
|
net.core.wmem_max=16777216
|
||||||
|
net.ipv4.tcp_rmem=4096 87380 16777216
|
||||||
|
net.ipv4.tcp_wmem=4096 65536 16777216
|
||||||
|
|
||||||
|
# 连接优化
|
||||||
|
net.ipv4.tcp_fastopen=3
|
||||||
|
net.ipv4.tcp_slow_start_after_idle=0
|
||||||
|
net.ipv4.tcp_mtu_probing=1
|
||||||
|
net.ipv4.tcp_fin_timeout=15
|
||||||
|
net.ipv4.tcp_keepalive_time=300
|
||||||
|
net.ipv4.tcp_keepalive_intvl=30
|
||||||
|
net.ipv4.tcp_keepalive_probes=5
|
||||||
|
net.ipv4.tcp_max_tw_buckets=5000
|
||||||
|
net.ipv4.tcp_max_syn_backlog=8192
|
||||||
|
net.core.somaxconn=8192
|
||||||
|
net.core.netdev_max_backlog=8192
|
||||||
|
SYSEOF
|
||||||
|
sysctl --system > /dev/null 2>&1
|
||||||
|
|
||||||
|
# ======================== 启动服务 ========================
|
||||||
|
systemctl daemon-reload
|
||||||
|
systemctl restart xray
|
||||||
|
systemctl enable xray
|
||||||
|
|
||||||
|
# ======================== 验证运行状态 ========================
|
||||||
|
sleep 2
|
||||||
|
if systemctl is-active --quiet xray; then
|
||||||
|
STATUS="✅ 运行中"
|
||||||
|
else
|
||||||
|
STATUS="❌ 启动失败,请检查: journalctl -u xray"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ======================== 输出配置 ========================
|
||||||
|
SERVER_IP=$(curl -s --max-time 5 ipv4.ip.sb || curl -s --max-time 5 ifconfig.me)
|
||||||
|
|
||||||
|
clear
|
||||||
|
echo "=========================================================="
|
||||||
|
echo " Xray VLESS-Reality 部署完成 ${STATUS}"
|
||||||
|
echo "=========================================================="
|
||||||
|
echo ""
|
||||||
|
echo " IP : ${SERVER_IP}"
|
||||||
|
echo " 端口 : 443"
|
||||||
|
echo " 协议 : VLESS"
|
||||||
|
echo " UUID : ${uuid}"
|
||||||
|
echo " 流控 : xtls-rprx-vision"
|
||||||
|
echo " 传输 : tcp"
|
||||||
|
echo " 安全 : reality"
|
||||||
|
echo " SNI : ${SNI}"
|
||||||
|
echo " Fingerprint : chrome"
|
||||||
|
echo " PublicKey : ${public_key}"
|
||||||
|
echo " ShortId : ${short_id}"
|
||||||
|
echo ""
|
||||||
|
echo "=========================================================="
|
||||||
|
echo ""
|
||||||
|
echo ">>> VLESS 分享链接(可直接导入客户端):"
|
||||||
|
echo ""
|
||||||
|
echo "vless://${uuid}@${SERVER_IP}:443?encryption=none&flow=xtls-rprx-vision&security=reality&sni=${SNI}&fp=chrome&pbk=${public_key}&sid=${short_id}&type=tcp#VPS-Reality"
|
||||||
|
echo ""
|
||||||
|
echo "=========================================================="
|
||||||
|
echo ""
|
||||||
|
echo "⚠️ 请妥善保存以上信息!UUID 和密钥仅在此处显示一次。"
|
||||||
|
echo " 配置文件位置: /usr/local/etc/xray/config.json"
|
||||||
|
echo " 查看日志: journalctl -u xray -f"
|
||||||
|
echo " 重启服务: systemctl restart xray"
|
||||||
|
echo "=========================================================="
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 二、客户端配置
|
||||||
|
|
||||||
|
### 方式 1:VLESS 分享链接(推荐)
|
||||||
|
|
||||||
|
脚本运行完成后会输出一条 `vless://` 链接,直接复制粘贴到以下客户端即可:
|
||||||
|
|
||||||
|
| 平台 | 推荐客户端 |
|
||||||
|
|------|-----------|
|
||||||
|
| Windows | v2rayN(6.x+) |
|
||||||
|
| macOS | V2BOX / NekoRay |
|
||||||
|
| iOS | Shadowrocket / Streisand |
|
||||||
|
| Android | v2rayNG |
|
||||||
|
|
||||||
|
### 方式 2:Clash Meta (mihomo) 配置
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
mixed-port: 7890
|
||||||
|
allow-lan: false
|
||||||
|
mode: rule
|
||||||
|
log-level: info
|
||||||
|
|
||||||
|
proxies:
|
||||||
|
- name: "VPS-Reality"
|
||||||
|
type: vless
|
||||||
|
server: 【你的IP】
|
||||||
|
port: 443
|
||||||
|
uuid: 【你的UUID】
|
||||||
|
network: tcp
|
||||||
|
tls: true
|
||||||
|
udp: true
|
||||||
|
flow: xtls-rprx-vision
|
||||||
|
servername: www.microsoft.com
|
||||||
|
client-fingerprint: chrome
|
||||||
|
reality-opts:
|
||||||
|
public-key: 【你的PublicKey】
|
||||||
|
short-id: 【你的ShortId】
|
||||||
|
|
||||||
|
proxy-groups:
|
||||||
|
- name: "Proxy"
|
||||||
|
type: select
|
||||||
|
proxies:
|
||||||
|
- VPS-Reality
|
||||||
|
- DIRECT
|
||||||
|
|
||||||
|
rules:
|
||||||
|
# 国内直连
|
||||||
|
- GEOIP,CN,DIRECT
|
||||||
|
- GEOSITE,cn,DIRECT
|
||||||
|
# 其余走代理
|
||||||
|
- MATCH,Proxy
|
||||||
|
```
|
||||||
|
|
||||||
|
### 方式 3:Sing-Box 配置(新一代客户端)
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"outbounds": [
|
||||||
|
{
|
||||||
|
"type": "vless",
|
||||||
|
"tag": "vps-reality",
|
||||||
|
"server": "【你的IP】",
|
||||||
|
"server_port": 443,
|
||||||
|
"uuid": "【你的UUID】",
|
||||||
|
"flow": "xtls-rprx-vision",
|
||||||
|
"tls": {
|
||||||
|
"enabled": true,
|
||||||
|
"server_name": "www.microsoft.com",
|
||||||
|
"utls": {
|
||||||
|
"enabled": true,
|
||||||
|
"fingerprint": "chrome"
|
||||||
|
},
|
||||||
|
"reality": {
|
||||||
|
"enabled": true,
|
||||||
|
"public_key": "【你的PublicKey】",
|
||||||
|
"short_id": "【你的ShortId】"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 三、与旧版对比
|
||||||
|
|
||||||
|
| 特性 | 旧版(VLESS TCP 无 TLS) | 本版(VLESS Reality) |
|
||||||
|
|------|--------------------------|----------------------|
|
||||||
|
| **加密** | ❌ 无,明文传输 | ✅ Reality TLS 1.3 |
|
||||||
|
| **抗检测** | ❌ 极易被 DPI 识别 | ✅ 伪装为访问真实网站,主动探测返回真实证书 |
|
||||||
|
| **需要域名** | 否 | 否 |
|
||||||
|
| **需要证书** | 否 | 否(自动生成 x25519 密钥对) |
|
||||||
|
| **速度** | 裸 TCP 无加密,理论最快 | ✅ Vision 流控避免双重加密 + 深度网络调优,实测差距 < 5% |
|
||||||
|
| **被封风险** | 极高(明文特征明显) | 极低 |
|
||||||
|
| **伪装目标选择** | 无 | ✅ 自动测延迟,选最快的目标站 |
|
||||||
|
| **网络调优** | 仅 BBR | ✅ BBR + TCP 缓冲区 + FastOpen + 连接池优化 |
|
||||||
|
| **BT 屏蔽** | 无 | ✅ 路由规则屏蔽 BT,降低 VPS 被投诉风险 |
|
||||||
|
| **防火墙兼容** | 仅 ufw | ✅ 自动检测 ufw / firewalld |
|
||||||
|
| **BBR 幂等** | ❌ 重复追加 | ✅ 独立 sysctl.d 配置,干净幂等 |
|
||||||
|
| **服务状态检查** | 无 | ✅ 部署后自动验证 |
|
||||||
|
| **分享链接** | 无 | ✅ 自动生成 vless:// 链接 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 四、运维命令速查
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 查看运行状态
|
||||||
|
systemctl status xray
|
||||||
|
|
||||||
|
# 实时查看日志
|
||||||
|
journalctl -u xray -f
|
||||||
|
|
||||||
|
# 重启服务
|
||||||
|
systemctl restart xray
|
||||||
|
|
||||||
|
# 查看配置文件
|
||||||
|
cat /usr/local/etc/xray/config.json
|
||||||
|
|
||||||
|
# 测试配置语法
|
||||||
|
/usr/local/bin/xray run -test -config /usr/local/etc/xray/config.json
|
||||||
|
|
||||||
|
# 更新 Xray 核心
|
||||||
|
bash <(curl -fsSL https://raw.githubusercontent.com/XTLS/Xray-install/main/install-release.sh)
|
||||||
|
|
||||||
|
# 查看当前 BBR 状态
|
||||||
|
sysctl net.ipv4.tcp_congestion_control
|
||||||
|
|
||||||
|
# 验证 443 端口监听
|
||||||
|
ss -tlnp | grep 443
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 五、注意事项
|
||||||
|
|
||||||
|
1. **伪装目标选择** — 脚本会自动测试延迟并选择最快的站点。如需手动指定,修改脚本中 `CANDIDATES` 数组。目标站点需支持 TLS 1.3 + H2。
|
||||||
|
2. **速度说明** — 与旧版裸 TCP 的速度差距来源:
|
||||||
|
- **Vision 流控**(xtls-rprx-vision)会检测内层流量,对已加密的 TLS 流量(如 HTTPS 网页、视频)**直接透传不再二次加密**,所以浏览网页/看视频几乎无额外开销
|
||||||
|
- 主要开销在**连接建立阶段**的 Reality 握手(一次性,约增加 10-30ms),传输阶段影响极小
|
||||||
|
- 深度网络调优(TCP 缓冲区 16MB、FastOpen、idle 优化等)实测可弥补甚至超过裸 TCP 的吞吐量
|
||||||
|
3. **端口** — 使用 443 是因为该端口为标准 HTTPS 流量,不会被运营商 QoS 降速或封锁。
|
||||||
|
4. **密钥安全** — `PublicKey` 是给客户端用的(可公开),`PrivateKey` 只存在服务端配置中,切勿泄露。
|
||||||
|
5. **多用户** — 在 `clients` 数组中添加更多 `{ "id": "新UUID", "flow": "xtls-rprx-vision" }` 即可。
|
||||||
|
6. **IP 被墙** — Reality 能极大降低被封概率,但如果 IP 已经被墙,需要更换 IP 后重新部署。
|
||||||
Reference in New Issue
Block a user