xray-manager 1.7.8 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +121 -311
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/clash.d.ts +20 -0
- package/dist/commands/clash.d.ts.map +1 -0
- package/dist/commands/clash.js +135 -0
- package/dist/commands/clash.js.map +1 -0
- package/dist/commands/interactive.js +3 -3
- package/dist/commands/interactive.js.map +1 -1
- package/dist/commands/user.d.ts.map +1 -1
- package/dist/commands/user.js +13 -0
- package/dist/commands/user.js.map +1 -1
- package/dist/constants/paths.d.ts +2 -0
- package/dist/constants/paths.d.ts.map +1 -1
- package/dist/constants/paths.js +2 -0
- package/dist/constants/paths.js.map +1 -1
- package/dist/services/clash-config.d.ts +16 -0
- package/dist/services/clash-config.d.ts.map +1 -0
- package/dist/services/clash-config.js +107 -0
- package/dist/services/clash-config.js.map +1 -0
- package/dist/utils/vless-link.d.ts +27 -0
- package/dist/utils/vless-link.d.ts.map +1 -0
- package/dist/utils/vless-link.js +67 -0
- package/dist/utils/vless-link.js.map +1 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -49,18 +49,13 @@
|
|
|
49
49
|
- [🎯 主要特性](#-主要特性)
|
|
50
50
|
- [🆚 协议对比](#-协议对比)
|
|
51
51
|
- [🚀 快速开始](#-快速开始)
|
|
52
|
-
- [系统要求](#系统要求)
|
|
53
|
-
- [一键安装](#一键安装推荐)
|
|
54
|
-
- [📱 客户端配置](#-客户端配置)
|
|
55
52
|
- [🛠️ 服务管理](#️-服务管理)
|
|
53
|
+
- [📱 客户端配置](#-客户端配置)
|
|
56
54
|
- [🗑️ 卸载与清理](#️-卸载与清理)
|
|
57
|
-
- [📖 详细文档](#-详细文档)
|
|
58
|
-
- [🔒 安全建议](#-安全建议)
|
|
59
|
-
- [📊 支持的云平台](#-支持的云平台)
|
|
60
55
|
- [💡 常见问题](#-常见问题)
|
|
56
|
+
- [📖 详细文档](#-详细文档)
|
|
61
57
|
- [🤝 贡献指南](#-贡献指南)
|
|
62
58
|
- [📄 许可证](#-许可证)
|
|
63
|
-
- [⚠️ 免责声明](#️-免责声明)
|
|
64
59
|
|
|
65
60
|
---
|
|
66
61
|
|
|
@@ -220,126 +215,83 @@
|
|
|
220
215
|
|
|
221
216
|
## 🚀 快速开始
|
|
222
217
|
|
|
223
|
-
### 系统要求
|
|
218
|
+
### 📋 系统要求
|
|
219
|
+
|
|
220
|
+
<details>
|
|
221
|
+
<summary><b>点击查看详细配置要求</b></summary>
|
|
224
222
|
|
|
225
223
|
<table>
|
|
226
224
|
<tr>
|
|
227
225
|
<td width="50%">
|
|
228
226
|
|
|
229
|
-
|
|
230
|
-
-
|
|
231
|
-
-
|
|
232
|
-
-
|
|
233
|
-
-
|
|
227
|
+
**最低配置**
|
|
228
|
+
- 操作系统: Linux (见下方支持列表)
|
|
229
|
+
- 内存: 512 MB RAM
|
|
230
|
+
- 存储: 100 MB 可用空间
|
|
231
|
+
- 网络: 公网 IP 地址
|
|
234
232
|
|
|
235
233
|
</td>
|
|
236
234
|
<td width="50%">
|
|
237
235
|
|
|
238
|
-
|
|
239
|
-
-
|
|
240
|
-
-
|
|
241
|
-
-
|
|
242
|
-
-
|
|
236
|
+
**推荐配置**
|
|
237
|
+
- 操作系统: Ubuntu 22.04 LTS / Debian 12
|
|
238
|
+
- 内存: 1 GB RAM
|
|
239
|
+
- CPU: 1 核心
|
|
240
|
+
- 带宽: 10 Mbps+
|
|
243
241
|
|
|
244
242
|
</td>
|
|
245
243
|
</tr>
|
|
246
244
|
</table>
|
|
247
245
|
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
| 发行版 | 最低版本 | 包管理器 | 状态 |
|
|
251
|
-
|--------|----------|----------|------|
|
|
252
|
-
| Ubuntu | 22.04 | apt | ✅ 完全支持 |
|
|
253
|
-
| Debian | 11 | apt | ✅ 完全支持 |
|
|
254
|
-
| Kali Linux | 2023+ | apt | ✅ 完全支持 |
|
|
255
|
-
| CentOS Stream | 9 | dnf | ✅ 完全支持 |
|
|
256
|
-
| AlmaLinux | 9 | dnf | ✅ 完全支持 |
|
|
257
|
-
| Rocky Linux | 9 | dnf | ✅ 完全支持 |
|
|
258
|
-
| Fedora | 39 | dnf | ✅ 完全支持 |
|
|
259
|
-
| Amazon Linux | 2023 | dnf | ✅ 完全支持 |
|
|
260
|
-
|
|
261
|
-
### 一键安装(推荐)
|
|
246
|
+
**支持的操作系统**
|
|
262
247
|
|
|
263
|
-
|
|
248
|
+
| 发行版 | 最低版本 | 状态 |
|
|
249
|
+
|--------|----------|------|
|
|
250
|
+
| Ubuntu / Debian / Kali | 22.04 / 11 / 2023+ | ✅ 完全支持 |
|
|
251
|
+
| CentOS Stream / AlmaLinux / Rocky | 9 | ✅ 完全支持 |
|
|
252
|
+
| Fedora / Amazon Linux | 39 / 2023 | ✅ 完全支持 |
|
|
264
253
|
|
|
265
|
-
|
|
266
|
-
wget https://raw.githubusercontent.com/DanOps-1/Xray-VPN-OneClick/main/scripts/install.sh -O xray-install.sh
|
|
267
|
-
sudo bash xray-install.sh
|
|
268
|
-
```
|
|
254
|
+
</details>
|
|
269
255
|
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
```bash
|
|
273
|
-
curl -O https://raw.githubusercontent.com/DanOps-1/Xray-VPN-OneClick/main/scripts/install.sh
|
|
274
|
-
sudo bash install.sh
|
|
275
|
-
```
|
|
256
|
+
### ⚡ 一键安装
|
|
276
257
|
|
|
277
|
-
|
|
258
|
+
选择适合你的安装方式(推荐方式一):
|
|
278
259
|
|
|
279
|
-
|
|
260
|
+
<table>
|
|
261
|
+
<tr>
|
|
262
|
+
<td width="33%">
|
|
280
263
|
|
|
264
|
+
**方式一:直接安装**
|
|
281
265
|
```bash
|
|
282
|
-
|
|
283
|
-
wget https://ghproxy.com/https://raw.githubusercontent.com/DanOps-1/Xray-VPN-OneClick/main/scripts/install.sh -O xray-install.sh
|
|
266
|
+
wget https://raw.githubusercontent.com/DanOps-1/Xray-VPN-OneClick/main/scripts/install.sh -O xray-install.sh
|
|
284
267
|
sudo bash xray-install.sh
|
|
285
268
|
```
|
|
286
269
|
|
|
287
|
-
|
|
270
|
+
</td>
|
|
271
|
+
<td width="33%">
|
|
288
272
|
|
|
273
|
+
**方式二:加速安装**
|
|
289
274
|
```bash
|
|
290
|
-
#
|
|
291
|
-
wget https://
|
|
275
|
+
# 国内服务器推荐
|
|
276
|
+
wget https://ghproxy.com/https://raw.githubusercontent.com/DanOps-1/Xray-VPN-OneClick/main/scripts/install.sh -O xray-install.sh
|
|
292
277
|
sudo bash xray-install.sh
|
|
293
278
|
```
|
|
294
279
|
|
|
295
|
-
|
|
280
|
+
</td>
|
|
281
|
+
<td width="33%">
|
|
296
282
|
|
|
283
|
+
**方式三:克隆仓库**
|
|
297
284
|
```bash
|
|
298
|
-
# 直接克隆
|
|
299
285
|
git clone https://github.com/DanOps-1/Xray-VPN-OneClick.git
|
|
300
286
|
cd Xray-VPN-OneClick/scripts
|
|
301
287
|
sudo bash install.sh
|
|
302
|
-
|
|
303
|
-
# 如果 git clone 也超时,使用代理
|
|
304
|
-
git clone https://ghproxy.com/https://github.com/DanOps-1/Xray-VPN-OneClick.git
|
|
305
|
-
cd Xray-VPN-OneClick/scripts
|
|
306
|
-
sudo bash install.sh
|
|
307
|
-
```
|
|
308
|
-
|
|
309
|
-
### 安装过程
|
|
310
|
-
|
|
311
|
-
安装脚本会自动完成以下步骤:
|
|
312
|
-
|
|
313
|
-
1. ✅ 检测系统环境并安装依赖
|
|
314
|
-
2. ✅ 下载并安装最新版 Xray-core
|
|
315
|
-
3. ✅ 自动生成配置参数(UUID、密钥对、Short ID)
|
|
316
|
-
4. ✅ 创建优化的服务端配置文件
|
|
317
|
-
5. ✅ 配置并启动 systemd 服务
|
|
318
|
-
6. ✅ 显示客户端配置信息和分享链接
|
|
319
|
-
|
|
320
|
-
### 安装完成后
|
|
321
|
-
|
|
322
|
-
安装完成后,脚本会输出以下信息:
|
|
323
|
-
|
|
324
288
|
```
|
|
325
|
-
================================
|
|
326
|
-
✅ Xray 安装成功!
|
|
327
|
-
================================
|
|
328
289
|
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
🔑 客户端配置:
|
|
334
|
-
UUID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
|
335
|
-
Public Key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
|
336
|
-
...
|
|
337
|
-
|
|
338
|
-
📱 分享链接:
|
|
339
|
-
vless://xxxxxxxx@YOUR_IP:443?...
|
|
340
|
-
```
|
|
290
|
+
</td>
|
|
291
|
+
</tr>
|
|
292
|
+
</table>
|
|
341
293
|
|
|
342
|
-
|
|
294
|
+
安装完成后,脚本会自动输出服务器信息和客户端配置,**请妥善保存**。
|
|
343
295
|
|
|
344
296
|
---
|
|
345
297
|
|
|
@@ -372,127 +324,90 @@ vless://xxxxxxxx@YOUR_IP:443?...
|
|
|
372
324
|
|
|
373
325
|
## 🛠️ 服务管理
|
|
374
326
|
|
|
375
|
-
###
|
|
376
|
-
|
|
377
|
-
我们提供了一个强大的 npm 命令行工具,让 Xray 服务管理变得简单直观:
|
|
327
|
+
### 🎯 交互式 CLI 工具(推荐)
|
|
378
328
|
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
**方式一:从 npm 安装(推荐)⭐**
|
|
329
|
+
安装后使用强大的 CLI 工具管理 Xray 服务:
|
|
382
330
|
|
|
383
331
|
```bash
|
|
384
|
-
#
|
|
332
|
+
# 安装 CLI 工具
|
|
385
333
|
npm install -g xray-manager
|
|
386
334
|
|
|
387
|
-
#
|
|
388
|
-
npx xray-manager
|
|
389
|
-
```
|
|
390
|
-
|
|
391
|
-
**方式二:从源代码安装**
|
|
392
|
-
|
|
393
|
-
```bash
|
|
394
|
-
# 克隆仓库
|
|
395
|
-
git clone https://github.com/DanOps-1/Xray-VPN-OneClick.git
|
|
396
|
-
cd Xray-VPN-OneClick
|
|
397
|
-
|
|
398
|
-
# 安装依赖并全局安装
|
|
399
|
-
npm install
|
|
400
|
-
sudo npm install -g .
|
|
401
|
-
```
|
|
402
|
-
|
|
403
|
-
**npm 包信息**
|
|
404
|
-
- 📦 包名: `xray-manager`
|
|
405
|
-
- 🔗 npm 主页: https://www.npmjs.com/package/xray-manager
|
|
406
|
-
- 📥 每周下载: [](https://www.npmjs.com/package/xray-manager)
|
|
407
|
-
|
|
408
|
-
#### 启动交互式菜单
|
|
409
|
-
|
|
410
|
-
```bash
|
|
411
|
-
# 使用全名
|
|
335
|
+
# 启动交互式菜单
|
|
412
336
|
xray-manager
|
|
413
|
-
|
|
414
337
|
# 或使用简短别名
|
|
415
338
|
xm
|
|
416
339
|
```
|
|
417
340
|
|
|
418
|
-
|
|
341
|
+
> 💡 **提示**: 也可以使用 `npx xray-manager` 无需安装直接运行
|
|
419
342
|
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
343
|
+
#### 🎨 主要功能
|
|
344
|
+
|
|
345
|
+
| 功能模块 | 说明 |
|
|
346
|
+
|---------|------|
|
|
347
|
+
| 📊 **服务管理** | 查看状态、启动/停止/重启服务 |
|
|
348
|
+
| 👥 **用户管理** | 添加/删除用户、生成分享链接 |
|
|
349
|
+
| 📊 **流量配额** ⭐ | 设置配额、流量预警、超额自动禁用 |
|
|
350
|
+
| ⚙️ **配置管理** | 备份/恢复配置、修改配置项 |
|
|
351
|
+
| 📝 **日志查看** | 实时日志、按级别/时间过滤 |
|
|
352
|
+
| 📈 **仪表盘** | 服务概览、用户统计、流量统计 |
|
|
423
353
|
|
|
424
|
-
|
|
354
|
+
<details>
|
|
355
|
+
<summary><b>查看详细功能列表</b></summary>
|
|
356
|
+
|
|
357
|
+
**服务管理**
|
|
425
358
|
- 查看服务状态(运行时长、内存使用)
|
|
426
359
|
- 启动/停止/重启服务
|
|
427
360
|
- 自动检测权限和 systemd
|
|
428
361
|
|
|
429
|
-
|
|
430
|
-
<td width="50%">
|
|
431
|
-
|
|
432
|
-
**👥 用户管理**
|
|
362
|
+
**用户管理**
|
|
433
363
|
- 列出所有用户(含流量使用信息)
|
|
434
364
|
- 添加新用户(自动生成 UUID)
|
|
435
365
|
- 删除用户
|
|
436
366
|
- 显示分享链接(自动复制到剪贴板)
|
|
437
367
|
|
|
438
|
-
|
|
439
|
-
</tr>
|
|
440
|
-
<tr>
|
|
441
|
-
<td width="50%">
|
|
442
|
-
|
|
443
|
-
**📊 流量配额管理** ⭐ NEW
|
|
368
|
+
**流量配额管理** ⭐ NEW
|
|
444
369
|
- 为用户设置流量配额(预设/自定义)
|
|
445
370
|
- 查看流量使用情况和剩余配额
|
|
446
371
|
- 流量预警(80%黄色/100%红色)
|
|
447
372
|
- 超额自动禁用用户
|
|
448
373
|
- 重置流量和重新启用用户
|
|
449
374
|
|
|
450
|
-
|
|
451
|
-
<td width="50%">
|
|
452
|
-
|
|
453
|
-
**⚙️ 配置管理**
|
|
375
|
+
**配置管理**
|
|
454
376
|
- 查看当前配置
|
|
455
377
|
- 创建配置备份(时间戳命名)
|
|
456
378
|
- 列出所有备份
|
|
457
379
|
- 恢复配置
|
|
458
380
|
- 修改配置项
|
|
459
381
|
|
|
460
|
-
|
|
461
|
-
</tr>
|
|
462
|
-
<tr>
|
|
463
|
-
<td width="50%">
|
|
464
|
-
|
|
465
|
-
**📝 日志查看**
|
|
382
|
+
**日志查看**
|
|
466
383
|
- 查看最近日志
|
|
467
384
|
- 实时跟踪日志(Ctrl+C 停止)
|
|
468
385
|
- 按级别过滤(error/warning/info/debug)
|
|
469
386
|
- 按时间范围过滤
|
|
470
387
|
|
|
471
|
-
|
|
472
|
-
<td width="50%">
|
|
473
|
-
|
|
474
|
-
**📈 仪表盘**
|
|
388
|
+
**仪表盘**
|
|
475
389
|
- 服务状态概览
|
|
476
390
|
- 用户统计(活跃/警告/超额)
|
|
477
391
|
- 总流量使用统计
|
|
478
392
|
- 实时数据刷新
|
|
479
393
|
|
|
480
|
-
</
|
|
481
|
-
</tr>
|
|
482
|
-
</table>
|
|
394
|
+
</details>
|
|
483
395
|
|
|
484
396
|
#### 终端兼容性 🌍
|
|
485
397
|
|
|
486
|
-
|
|
398
|
+
<details>
|
|
399
|
+
<summary><b>查看终端兼容性详情</b></summary>
|
|
487
400
|
|
|
488
|
-
|
|
489
|
-
- ✅ **现代终端**: xterm, iTerm2, GNOME Terminal, Konsole(Unicode + 彩色)
|
|
490
|
-
- ✅ **Windows CMD**: 完全兼容(纯 ASCII 文本图标)
|
|
491
|
-
- ✅ **SSH 会话**: 自动检测并适配远程终端
|
|
492
|
-
- ✅ **传统终端**: vt100, dumb terminal(降级到 ASCII)
|
|
493
|
-
- ✅ **管道输出**: 重定向时自动切换到纯文本 + 时间戳模式
|
|
401
|
+
CLI 工具支持多种终端环境,自动适配不同系统:
|
|
494
402
|
|
|
495
|
-
|
|
403
|
+
**支持的终端**
|
|
404
|
+
- ✅ 现代终端: xterm, iTerm2, GNOME Terminal, Konsole(Unicode + 彩色)
|
|
405
|
+
- ✅ Windows CMD: 完全兼容(纯 ASCII 文本图标)
|
|
406
|
+
- ✅ SSH 会话: 自动检测并适配远程终端
|
|
407
|
+
- ✅ 传统终端: vt100, dumb terminal(降级到 ASCII)
|
|
408
|
+
- ✅ 管道输出: 重定向时自动切换到纯文本 + 时间戳模式
|
|
409
|
+
|
|
410
|
+
**三种输出模式**
|
|
496
411
|
|
|
497
412
|
| 模式 | 使用场景 | 特性 |
|
|
498
413
|
|------|---------|------|
|
|
@@ -500,110 +415,38 @@ CLI 工具现已支持多种终端环境,自动适配不同系统:
|
|
|
500
415
|
| **PLAIN_TTY** | 无彩色终端 | ASCII 图标 + 格式化(无彩色) |
|
|
501
416
|
| **PIPE** | 管道/日志文件 | 纯文本 + 时间戳 + 结构化输出 |
|
|
502
417
|
|
|
503
|
-
|
|
504
|
-
- TTY 状态检测
|
|
505
|
-
- 颜色支持检测(支持 NO_COLOR 环境变量)
|
|
506
|
-
- Unicode 支持检测(基于 TERM 环境变量和平台)
|
|
507
|
-
- 终端宽度自适应(80-160 列优化)
|
|
508
|
-
|
|
509
|
-
**📐 终端尺寸推荐**
|
|
510
|
-
|
|
511
|
-
为获得最佳交互式 UI 体验(v1.2.0+ 响应式布局系统):
|
|
512
|
-
|
|
513
|
-
| 尺寸类型 | 终端大小 | 布局模式 | 特性 |
|
|
514
|
-
|---------|---------|---------|------|
|
|
515
|
-
| **最小** | 60x20 | COMPACT | 紧凑模式,基本功能 |
|
|
516
|
-
| **标准** | 80x24 | STANDARD | 推荐配置,完整显示 |
|
|
517
|
-
| **宽屏** | 120+ 列 | WIDE | 多列布局,最佳体验 |
|
|
518
|
-
|
|
519
|
-
界面会自动检测终端大小并适配布局:
|
|
520
|
-
- 菜单选项 + 描述 ≤ 80 列
|
|
521
|
-
- 表格和分隔符自适应终端宽度
|
|
522
|
-
- 宽屏终端(>120 列)自动启用多列显示
|
|
523
|
-
- 窄终端(60-80 列)降级到紧凑模式
|
|
418
|
+
**终端尺寸推荐**
|
|
524
419
|
|
|
525
|
-
|
|
420
|
+
| 尺寸类型 | 终端大小 | 布局模式 |
|
|
421
|
+
|---------|---------|---------|
|
|
422
|
+
| **最小** | 60x20 | COMPACT |
|
|
423
|
+
| **标准** | 80x24 | STANDARD(推荐) |
|
|
424
|
+
| **宽屏** | 120+ 列 | WIDE |
|
|
526
425
|
|
|
527
|
-
|
|
528
|
-
# 现代终端 (RICH 模式)
|
|
529
|
-
✓ 服务启动成功!
|
|
530
|
-
[查看] 查看服务状态
|
|
531
|
-
[启动] 启动服务
|
|
532
|
-
|
|
533
|
-
# Windows CMD (PLAIN_TTY 模式)
|
|
534
|
-
[OK] 服务启动成功!
|
|
535
|
-
[查看] 查看服务状态
|
|
536
|
-
[启动] 启动服务
|
|
537
|
-
|
|
538
|
-
# 管道输出 (PIPE 模式)
|
|
539
|
-
2026-01-08T10:30:45.123Z [OK] 服务启动成功
|
|
540
|
-
```
|
|
541
|
-
|
|
542
|
-
#### 菜单结构
|
|
543
|
-
|
|
544
|
-
```
|
|
545
|
-
Xray Manager - 交互式管理工具
|
|
546
|
-
├── 📊 查看服务状态
|
|
547
|
-
├── 🚀 启动服务
|
|
548
|
-
├── 🛑 停止服务
|
|
549
|
-
├── 🔄 重启服务
|
|
550
|
-
├── 👥 用户管理
|
|
551
|
-
│ ├── 📋 查看用户列表(含流量信息)
|
|
552
|
-
│ ├── ➕ 添加用户
|
|
553
|
-
│ ├── ➖ 删除用户
|
|
554
|
-
│ └── 📤 显示分享链接
|
|
555
|
-
├── 📊 流量配额管理 ⭐ NEW
|
|
556
|
-
│ ├── 📋 查看配额列表
|
|
557
|
-
│ ├── ⚙️ 设置用户配额
|
|
558
|
-
│ ├── 📈 查看配额详情
|
|
559
|
-
│ ├── 🔄 重置已用流量
|
|
560
|
-
│ └── ✅ 重新启用用户
|
|
561
|
-
├── ⚙️ 配置管理
|
|
562
|
-
│ ├── 📄 查看当前配置
|
|
563
|
-
│ ├── 💾 备份配置
|
|
564
|
-
│ ├── 📋 查看备份列表
|
|
565
|
-
│ ├── ♻️ 恢复配置
|
|
566
|
-
│ └── ✏️ 修改配置项
|
|
567
|
-
└── 📝 日志查看
|
|
568
|
-
├── 📄 查看最近日志
|
|
569
|
-
├── 🔴 实时跟踪日志
|
|
570
|
-
└── 🔍 过滤日志
|
|
571
|
-
```
|
|
572
|
-
|
|
573
|
-
#### 安全特性
|
|
426
|
+
</details>
|
|
574
427
|
|
|
575
|
-
|
|
576
|
-
- ✅ **敏感信息脱敏** - UUID、密钥显示为 `前4后4` 格式
|
|
577
|
-
- ✅ **自动备份** - 修改配置前自动创建备份
|
|
578
|
-
- ✅ **权限检测** - 自动检测 sudo 权限并提示
|
|
579
|
-
- ✅ **安全文件权限** - 配置文件权限设置为 600
|
|
428
|
+
### 🔧 systemd 原生命令
|
|
580
429
|
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
### 方式二:systemd 原生命令
|
|
430
|
+
如果不使用 CLI 工具,也可以直接使用 systemd 命令:
|
|
584
431
|
|
|
585
432
|
```bash
|
|
586
433
|
# 查看服务状态
|
|
587
434
|
sudo systemctl status xray
|
|
588
435
|
|
|
589
|
-
#
|
|
436
|
+
# 启动/停止/重启服务
|
|
590
437
|
sudo systemctl start xray
|
|
591
|
-
|
|
592
|
-
# 停止服务
|
|
593
438
|
sudo systemctl stop xray
|
|
594
|
-
|
|
595
|
-
# 重启服务
|
|
596
439
|
sudo systemctl restart xray
|
|
597
440
|
|
|
598
|
-
#
|
|
599
|
-
sudo journalctl -u xray -f
|
|
600
|
-
|
|
601
|
-
# 查看最近日志
|
|
602
|
-
sudo journalctl -u xray -n 100
|
|
441
|
+
# 查看日志
|
|
442
|
+
sudo journalctl -u xray -f # 实时日志
|
|
443
|
+
sudo journalctl -u xray -n 100 # 最近 100 行
|
|
603
444
|
```
|
|
604
445
|
|
|
605
|
-
|
|
446
|
+
<details>
|
|
447
|
+
<summary><b>查看 Bash 脚本工具</b></summary>
|
|
606
448
|
|
|
449
|
+
**用户管理脚本**
|
|
607
450
|
```bash
|
|
608
451
|
# 添加新用户
|
|
609
452
|
sudo bash scripts/add-user.sh user@example.com
|
|
@@ -618,8 +461,7 @@ sudo bash scripts/show-config.sh users
|
|
|
618
461
|
sudo bash scripts/show-config.sh link user@example.com
|
|
619
462
|
```
|
|
620
463
|
|
|
621
|
-
|
|
622
|
-
|
|
464
|
+
**系统维护脚本**
|
|
623
465
|
```bash
|
|
624
466
|
# 更新 Xray 到最新版本
|
|
625
467
|
sudo bash scripts/update.sh
|
|
@@ -634,6 +476,8 @@ sudo bash scripts/restore.sh <备份文件>
|
|
|
634
476
|
sudo bash scripts/uninstall.sh
|
|
635
477
|
```
|
|
636
478
|
|
|
479
|
+
</details>
|
|
480
|
+
|
|
637
481
|
---
|
|
638
482
|
|
|
639
483
|
## 🗑️ 卸载与清理
|
|
@@ -735,16 +579,16 @@ sudo lsof -i :443
|
|
|
735
579
|
|
|
736
580
|
## 🔒 安全建议
|
|
737
581
|
|
|
738
|
-
|
|
582
|
+
**基本安全措施**
|
|
739
583
|
|
|
740
|
-
1. ✅
|
|
741
|
-
2. ✅
|
|
742
|
-
3. ✅
|
|
743
|
-
4. ✅
|
|
744
|
-
5. ✅
|
|
745
|
-
6. ✅ **配置备份** - 定期备份配置文件到安全位置
|
|
584
|
+
1. ✅ 定期更换密钥(建议每 3-6 个月)
|
|
585
|
+
2. ✅ 使用强密码或密钥认证
|
|
586
|
+
3. ✅ 配置防火墙,只开放必要端口
|
|
587
|
+
4. ✅ 及时更新 Xray 到最新版本
|
|
588
|
+
5. ✅ 定期检查日志和备份配置
|
|
746
589
|
|
|
747
|
-
|
|
590
|
+
<details>
|
|
591
|
+
<summary><b>查看进阶安全配置</b></summary>
|
|
748
592
|
|
|
749
593
|
```bash
|
|
750
594
|
# 限制 SSH 访问
|
|
@@ -762,66 +606,27 @@ sudo apt install unattended-upgrades
|
|
|
762
606
|
sudo dpkg-reconfigure --priority=low unattended-upgrades
|
|
763
607
|
```
|
|
764
608
|
|
|
609
|
+
</details>
|
|
610
|
+
|
|
765
611
|
---
|
|
766
612
|
|
|
767
613
|
## 📊 支持的云平台
|
|
768
614
|
|
|
769
615
|
本项目已在以下云平台测试通过:
|
|
770
616
|
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
- ✅ **Google Cloud Platform** - GCP Compute Engine
|
|
774
|
-
- ✅ **Microsoft Azure** - Azure Virtual Machines
|
|
775
|
-
- ✅ **DigitalOcean** - Droplets
|
|
776
|
-
- ✅ **Vultr** - Cloud Compute
|
|
777
|
-
- ✅ **Linode** - Akamai Cloud
|
|
778
|
-
- ✅ **Hetzner** - Cloud Servers
|
|
779
|
-
|
|
780
|
-
### 国内云平台
|
|
781
|
-
- ✅ **阿里云** - ECS 云服务器
|
|
782
|
-
- ✅ **腾讯云** - CVM 云服务器
|
|
783
|
-
- ✅ **华为云** - ECS 弹性云服务器
|
|
784
|
-
|
|
785
|
-
> **注意**: 在国内云平台使用可能面临合规风险,请谨慎选择。
|
|
786
|
-
|
|
787
|
-
---
|
|
788
|
-
|
|
789
|
-
## 🐳 Docker 部署(外部镜像)
|
|
617
|
+
<details>
|
|
618
|
+
<summary><b>查看支持的云平台列表</b></summary>
|
|
790
619
|
|
|
791
|
-
|
|
792
|
-
|
|
620
|
+
**国外云平台**
|
|
621
|
+
- ✅ AWS EC2, Google Cloud Platform, Microsoft Azure
|
|
622
|
+
- ✅ DigitalOcean, Vultr, Linode, Hetzner
|
|
793
623
|
|
|
794
|
-
|
|
624
|
+
**国内云平台**
|
|
625
|
+
- ✅ 阿里云、腾讯云、华为云
|
|
795
626
|
|
|
796
|
-
|
|
797
|
-
# 拉取外部镜像(示例)
|
|
798
|
-
docker pull danops/xray-reality
|
|
799
|
-
|
|
800
|
-
# 运行容器
|
|
801
|
-
docker run -d \
|
|
802
|
-
--name xray \
|
|
803
|
-
-p 443:443 \
|
|
804
|
-
-v /etc/xray:/etc/xray \
|
|
805
|
-
--restart=unless-stopped \
|
|
806
|
-
danops/xray-reality
|
|
807
|
-
```
|
|
808
|
-
|
|
809
|
-
### 使用 Docker Compose
|
|
810
|
-
|
|
811
|
-
```yaml
|
|
812
|
-
version: '3'
|
|
813
|
-
services:
|
|
814
|
-
xray:
|
|
815
|
-
image: danops/xray-reality
|
|
816
|
-
container_name: xray
|
|
817
|
-
restart: unless-stopped
|
|
818
|
-
ports:
|
|
819
|
-
- "443:443"
|
|
820
|
-
volumes:
|
|
821
|
-
- ./config:/etc/xray
|
|
822
|
-
```
|
|
627
|
+
> **注意**: 在国内云平台使用可能面临合规风险,请谨慎选择。
|
|
823
628
|
|
|
824
|
-
|
|
629
|
+
</details>
|
|
825
630
|
|
|
826
631
|
---
|
|
827
632
|
|
|
@@ -928,6 +733,9 @@ sudo sysctl -p
|
|
|
928
733
|
- ✅ 流量重置和用户重新启用功能
|
|
929
734
|
- ✅ 完整的单元测试和集成测试
|
|
930
735
|
|
|
736
|
+
<details>
|
|
737
|
+
<summary><b>查看历史版本</b></summary>
|
|
738
|
+
|
|
931
739
|
### v1.4.1 (2026-01-12)
|
|
932
740
|
|
|
933
741
|
**Bug 修复**
|
|
@@ -983,6 +791,8 @@ sudo sysctl -p
|
|
|
983
791
|
- ✅ 多平台客户端配置指南
|
|
984
792
|
- ✅ 性能优化和安全加固指南
|
|
985
793
|
|
|
794
|
+
</details>
|
|
795
|
+
|
|
986
796
|
---
|
|
987
797
|
|
|
988
798
|
## 📚 参考资源
|
package/dist/cli.js
CHANGED
|
@@ -18,6 +18,7 @@ const exit_codes_1 = require("./constants/exit-codes");
|
|
|
18
18
|
const preflight_1 = require("./utils/preflight");
|
|
19
19
|
const interactive_1 = require("./commands/interactive");
|
|
20
20
|
const review_1 = require("./commands/review");
|
|
21
|
+
const clash_1 = require("./commands/clash");
|
|
21
22
|
// Read package.json for version
|
|
22
23
|
const packageJson = require('../package.json');
|
|
23
24
|
/**
|
|
@@ -39,6 +40,7 @@ async function main() {
|
|
|
39
40
|
.option('--no-color', '禁用彩色输出')
|
|
40
41
|
.option('--verbose', '详细输出模式');
|
|
41
42
|
(0, review_1.registerReviewCommand)(program);
|
|
43
|
+
(0, clash_1.registerClashCommand)(program);
|
|
42
44
|
// Default action: start interactive menu when no command provided
|
|
43
45
|
program.action(async () => {
|
|
44
46
|
const options = program.opts();
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;AAEA;;;;;;;GAOG;;;;;AAEH,yCAAoC;AACpC,4DAAoC;AACpC,uDAAgE;AAChE,iDAAoD;AACpD,wDAA8D;AAC9D,8CAA0D;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clash config export command
|
|
3
|
+
*
|
|
4
|
+
* @module commands/clash
|
|
5
|
+
*/
|
|
6
|
+
import type { Command } from 'commander';
|
|
7
|
+
interface ClashExportOptions {
|
|
8
|
+
link?: string;
|
|
9
|
+
outputPath?: string;
|
|
10
|
+
proxyName?: string;
|
|
11
|
+
json?: boolean;
|
|
12
|
+
force?: boolean;
|
|
13
|
+
promptLink?: boolean;
|
|
14
|
+
promptOutputPath?: boolean;
|
|
15
|
+
promptOverwrite?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export declare function exportClashConfigFromLink(options?: ClashExportOptions): Promise<void>;
|
|
18
|
+
export declare function registerClashCommand(program: Command): void;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=clash.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clash.d.ts","sourceRoot":"","sources":["../../src/commands/clash.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBzC,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAgED,wBAAsB,yBAAyB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6C/F;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqB3D"}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Clash config export command
|
|
4
|
+
*
|
|
5
|
+
* @module commands/clash
|
|
6
|
+
*/
|
|
7
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
|
+
};
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.exportClashConfigFromLink = exportClashConfigFromLink;
|
|
12
|
+
exports.registerClashCommand = registerClashCommand;
|
|
13
|
+
const prompts_1 = require("@inquirer/prompts");
|
|
14
|
+
const fs_1 = require("fs");
|
|
15
|
+
const path_1 = require("path");
|
|
16
|
+
const os_1 = require("os");
|
|
17
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
18
|
+
const logger_1 = __importDefault(require("../utils/logger"));
|
|
19
|
+
const paths_1 = require("../constants/paths");
|
|
20
|
+
const vless_link_1 = require("../utils/vless-link");
|
|
21
|
+
const clash_config_1 = require("../services/clash-config");
|
|
22
|
+
function normalizeOutputPath(value) {
|
|
23
|
+
const trimmed = value.trim();
|
|
24
|
+
if (trimmed.startsWith('~/')) {
|
|
25
|
+
return (0, path_1.join)((0, os_1.homedir)(), trimmed.slice(2));
|
|
26
|
+
}
|
|
27
|
+
return trimmed || paths_1.DEFAULT_PATHS.CLASH_CONFIG_FILE;
|
|
28
|
+
}
|
|
29
|
+
async function fileExists(path) {
|
|
30
|
+
try {
|
|
31
|
+
await fs_1.promises.access(path);
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
async function writeClashConfigFile(options) {
|
|
39
|
+
const rawLink = options.link || '';
|
|
40
|
+
const link = rawLink.trim();
|
|
41
|
+
if (!link) {
|
|
42
|
+
throw new Error('未提供 VLESS 链接');
|
|
43
|
+
}
|
|
44
|
+
const outputPath = normalizeOutputPath(options.outputPath || paths_1.DEFAULT_PATHS.CLASH_CONFIG_FILE);
|
|
45
|
+
const info = (0, vless_link_1.parseVlessLink)(link);
|
|
46
|
+
const { yaml, proxyName, proxyGroupName } = (0, clash_config_1.buildClashConfigYaml)(info, { proxyName: options.proxyName });
|
|
47
|
+
const exists = await fileExists(outputPath);
|
|
48
|
+
if (exists && !options.force) {
|
|
49
|
+
if (options.promptOverwrite) {
|
|
50
|
+
const overwrite = await (0, prompts_1.confirm)({
|
|
51
|
+
message: chalk_1.default.yellow(`输出文件已存在,是否覆盖?\n${outputPath}`),
|
|
52
|
+
default: false,
|
|
53
|
+
});
|
|
54
|
+
if (!overwrite) {
|
|
55
|
+
logger_1.default.info('已取消生成 Clash 配置');
|
|
56
|
+
return null;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
throw new Error(`输出文件已存在: ${outputPath}`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
await fs_1.promises.mkdir((0, path_1.dirname)(outputPath), { recursive: true });
|
|
64
|
+
await fs_1.promises.writeFile(outputPath, yaml, 'utf8');
|
|
65
|
+
return {
|
|
66
|
+
outputPath,
|
|
67
|
+
proxyName,
|
|
68
|
+
proxyGroupName,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
async function exportClashConfigFromLink(options = {}) {
|
|
72
|
+
try {
|
|
73
|
+
let link = options.link;
|
|
74
|
+
if (!link && options.promptLink) {
|
|
75
|
+
link = await (0, prompts_1.input)({
|
|
76
|
+
message: '请输入 VLESS 链接:',
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
let outputPath = options.outputPath;
|
|
80
|
+
if (options.promptOutputPath) {
|
|
81
|
+
const outputInput = await (0, prompts_1.input)({
|
|
82
|
+
message: '请输入 Clash 配置输出路径:',
|
|
83
|
+
default: options.outputPath || paths_1.DEFAULT_PATHS.CLASH_CONFIG_FILE,
|
|
84
|
+
});
|
|
85
|
+
outputPath = outputInput;
|
|
86
|
+
}
|
|
87
|
+
const result = await writeClashConfigFile({
|
|
88
|
+
...options,
|
|
89
|
+
link,
|
|
90
|
+
outputPath,
|
|
91
|
+
});
|
|
92
|
+
if (!result) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
if (options.json) {
|
|
96
|
+
console.log(JSON.stringify(result, null, 2));
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
logger_1.default.newline();
|
|
100
|
+
logger_1.default.separator();
|
|
101
|
+
console.log(chalk_1.default.bold.cyan('📄 Clash 配置已生成'));
|
|
102
|
+
logger_1.default.separator();
|
|
103
|
+
logger_1.default.newline();
|
|
104
|
+
console.log(chalk_1.default.cyan(' 输出路径: ') + chalk_1.default.white(result.outputPath));
|
|
105
|
+
console.log(chalk_1.default.cyan(' 节点名称: ') + chalk_1.default.white(result.proxyName));
|
|
106
|
+
logger_1.default.newline();
|
|
107
|
+
}
|
|
108
|
+
catch (error) {
|
|
109
|
+
logger_1.default.error(error.message);
|
|
110
|
+
process.exit(1);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
function registerClashCommand(program) {
|
|
114
|
+
program
|
|
115
|
+
.command('clash')
|
|
116
|
+
.description('从 VLESS 分享链接生成 Clash 配置文件')
|
|
117
|
+
.option('--link <vless>', 'VLESS 分享链接')
|
|
118
|
+
.option('--out <path>', 'Clash 配置输出路径', paths_1.DEFAULT_PATHS.CLASH_CONFIG_FILE)
|
|
119
|
+
.option('--name <name>', '节点名称(覆盖链接内名称)')
|
|
120
|
+
.option('--json', '以 JSON 格式输出结果')
|
|
121
|
+
.option('-f, --force', '覆盖已存在的输出文件')
|
|
122
|
+
.action(async (options) => {
|
|
123
|
+
await exportClashConfigFromLink({
|
|
124
|
+
link: options.link,
|
|
125
|
+
outputPath: options.out,
|
|
126
|
+
proxyName: options.name,
|
|
127
|
+
json: options.json,
|
|
128
|
+
force: options.force,
|
|
129
|
+
promptLink: !options.link,
|
|
130
|
+
promptOutputPath: false,
|
|
131
|
+
promptOverwrite: true,
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=clash.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clash.js","sourceRoot":"","sources":["../../src/commands/clash.ts"],"names":[],"mappings":"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"}
|
|
@@ -197,7 +197,7 @@ async function handleUserManagementMenu(options) {
|
|
|
197
197
|
{ name: `${theme_1.THEME.success('[添加]')} ${theme_1.THEME.neutral('添加用户')}`, value: 'user-add' },
|
|
198
198
|
{ name: `${theme_1.THEME.error('[删除]')} ${theme_1.THEME.neutral('删除用户')}`, value: 'user-delete' },
|
|
199
199
|
{ name: `${theme_1.THEME.secondary('[分享]')} ${theme_1.THEME.neutral('显示分享链接')}`, value: 'user-share' },
|
|
200
|
-
|
|
200
|
+
new prompts_1.Separator(),
|
|
201
201
|
{ name: `${theme_1.THEME.neutral('[返回]')} ${theme_1.THEME.neutral('返回主菜单')}`, value: 'back' },
|
|
202
202
|
];
|
|
203
203
|
const selection = await showMenu(userMenuOptions, chalk_1.default.bold('请选择操作:'));
|
|
@@ -255,10 +255,10 @@ async function handleQuotaManagementMenu(options) {
|
|
|
255
255
|
{ name: `${theme_1.THEME.secondary('[详情]')} ${theme_1.THEME.neutral('查看配额详情')}`, value: 'quota-show' },
|
|
256
256
|
{ name: `${theme_1.THEME.warning('[重置]')} ${theme_1.THEME.neutral('重置已用流量')}`, value: 'quota-reset' },
|
|
257
257
|
{ name: `${theme_1.THEME.success('[启用]')} ${theme_1.THEME.neutral('重新启用用户')}`, value: 'quota-reenable' },
|
|
258
|
-
|
|
258
|
+
new prompts_1.Separator(),
|
|
259
259
|
{ name: `${theme_1.THEME.warning('[检查]')} ${theme_1.THEME.neutral('执行配额检查')}`, value: 'quota-check' },
|
|
260
260
|
{ name: `${theme_1.THEME.primary('[配置]')} ${theme_1.THEME.neutral('配置 Stats API')}`, value: 'stats-config' },
|
|
261
|
-
|
|
261
|
+
new prompts_1.Separator(),
|
|
262
262
|
{ name: `${theme_1.THEME.neutral('[返回]')} ${theme_1.THEME.neutral('返回主菜单')}`, value: 'back' },
|
|
263
263
|
];
|
|
264
264
|
const selection = await showMenu(quotaMenuOptions, chalk_1.default.bold('请选择操作:'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/commands/interactive.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/commands/interactive.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/commands/user.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/commands/user.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAkBH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uBAAuB;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,uBAAuB;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8F/E;AAED;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2D7E;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDhF;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6EnF"}
|
package/dist/commands/user.js
CHANGED
|
@@ -21,6 +21,7 @@ const format_1 = require("../utils/format");
|
|
|
21
21
|
const clipboard_1 = require("../utils/clipboard");
|
|
22
22
|
const traffic_formatter_1 = require("../utils/traffic-formatter");
|
|
23
23
|
const quota_1 = require("./quota");
|
|
24
|
+
const clash_1 = require("./clash");
|
|
24
25
|
const logger_1 = __importDefault(require("../utils/logger"));
|
|
25
26
|
const chalk_1 = __importDefault(require("chalk"));
|
|
26
27
|
const ora_1 = __importDefault(require("ora"));
|
|
@@ -270,6 +271,18 @@ async function showUserShare(options = {}) {
|
|
|
270
271
|
else {
|
|
271
272
|
logger_1.default.hint('可以手动复制上方链接');
|
|
272
273
|
}
|
|
274
|
+
const exportClash = await (0, prompts_1.confirm)({
|
|
275
|
+
message: '是否生成 Clash 配置文件?',
|
|
276
|
+
default: false,
|
|
277
|
+
});
|
|
278
|
+
if (exportClash) {
|
|
279
|
+
await (0, clash_1.exportClashConfigFromLink)({
|
|
280
|
+
link: shareInfo.shareLink,
|
|
281
|
+
proxyName: shareInfo.user.email,
|
|
282
|
+
promptOutputPath: true,
|
|
283
|
+
promptOverwrite: true,
|
|
284
|
+
});
|
|
285
|
+
}
|
|
273
286
|
}
|
|
274
287
|
catch (error) {
|
|
275
288
|
logger_1.default.error(error.message);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/commands/user.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;
|
|
1
|
+
{"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/commands/user.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,8 @@ export declare const DEFAULT_PATHS: {
|
|
|
30
30
|
readonly USER_CONFIG_DIR: string;
|
|
31
31
|
/** 用户配置文件 */
|
|
32
32
|
readonly USER_CONFIG_FILE: string;
|
|
33
|
+
/** Clash 配置文件(默认输出) */
|
|
34
|
+
readonly CLASH_CONFIG_FILE: string;
|
|
33
35
|
/** 服务器配置文件(公网 IP 等) */
|
|
34
36
|
readonly SERVER_CONFIG_FILE: "/usr/local/etc/xray/server-config.json";
|
|
35
37
|
/** 用户元数据文件(创建时间、状态等) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/constants/paths.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;GAEG;AACH,eAAO,MAAM,aAAa;IACxB,kBAAkB;;IAGlB,gBAAgB;;IAGhB,aAAa;;IAGb,mBAAmB;;IAGnB,qBAAqB;;IAGrB,mBAAmB;;IAGnB,qBAAqB;;IAGrB,aAAa;;IAGb,aAAa;;IAGb,aAAa;;IAGb,8BAA8B;;IAG9B,aAAa;;IAGb,uBAAuB;;IAGvB,wBAAwB;;CAEhB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,eAAe;IAC1B,uBAAuB;;IAGvB,eAAe;;IAGf,aAAa;;CAEL,CAAC;AAEX;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,GAAE,IAAiB,GAAG,MAAM,CAGtE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,CAE1D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD"}
|
|
1
|
+
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/constants/paths.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;GAEG;AACH,eAAO,MAAM,aAAa;IACxB,kBAAkB;;IAGlB,gBAAgB;;IAGhB,aAAa;;IAGb,mBAAmB;;IAGnB,qBAAqB;;IAGrB,mBAAmB;;IAGnB,qBAAqB;;IAGrB,aAAa;;IAGb,aAAa;;IAGb,aAAa;;IAGb,8BAA8B;;IAG9B,aAAa;;IAGb,uBAAuB;;IAGvB,uBAAuB;;IAGvB,wBAAwB;;CAEhB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,eAAe;IAC1B,uBAAuB;;IAGvB,eAAe;;IAGf,aAAa;;CAEL,CAAC;AAEX;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,GAAE,IAAiB,GAAG,MAAM,CAGtE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,CAE1D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEtD"}
|
package/dist/constants/paths.js
CHANGED
|
@@ -38,6 +38,8 @@ exports.DEFAULT_PATHS = {
|
|
|
38
38
|
USER_CONFIG_DIR: (0, path_1.join)((0, os_1.homedir)(), '.xray-manager'),
|
|
39
39
|
/** 用户配置文件 */
|
|
40
40
|
USER_CONFIG_FILE: (0, path_1.join)((0, os_1.homedir)(), '.xray-manager', 'config.json'),
|
|
41
|
+
/** Clash 配置文件(默认输出) */
|
|
42
|
+
CLASH_CONFIG_FILE: (0, path_1.join)((0, os_1.homedir)(), 'clash-config-v3.yaml'),
|
|
41
43
|
/** 服务器配置文件(公网 IP 等) */
|
|
42
44
|
SERVER_CONFIG_FILE: '/usr/local/etc/xray/server-config.json',
|
|
43
45
|
/** 用户元数据文件(创建时间、状态等) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/constants/paths.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/constants/paths.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAwEH,8CAGC;AAKD,8CAEC;AAKD,oCAEC;AAvFD,2BAA6B;AAC7B,+BAA4B;AAE5B;;GAEG;AACU,QAAA,aAAa,GAAG;IAC3B,kBAAkB;IAClB,WAAW,EAAE,iCAAiC;IAE9C,gBAAgB;IAChB,UAAU,EAAE,qBAAqB;IAEjC,aAAa;IACb,UAAU,EAAE,mBAAmB;IAE/B,mBAAmB;IACnB,YAAY,EAAE,MAAM;IAEpB,qBAAqB;IACrB,YAAY,EAAE,kCAAkC;IAEhD,mBAAmB;IACnB,WAAW,EAAE,qBAAqB;IAElC,qBAAqB;IACrB,OAAO,EAAE,eAAe;IAExB,aAAa;IACb,UAAU,EAAE,0BAA0B;IAEtC,aAAa;IACb,SAAS,EAAE,yBAAyB;IAEpC,aAAa;IACb,QAAQ,EAAE,mBAAmB;IAE7B,8BAA8B;IAC9B,eAAe,EAAE,IAAA,WAAI,EAAC,IAAA,YAAO,GAAE,EAAE,eAAe,CAAC;IAEjD,aAAa;IACb,gBAAgB,EAAE,IAAA,WAAI,EAAC,IAAA,YAAO,GAAE,EAAE,eAAe,EAAE,aAAa,CAAC;IAEjE,uBAAuB;IACvB,iBAAiB,EAAE,IAAA,WAAI,EAAC,IAAA,YAAO,GAAE,EAAE,sBAAsB,CAAC;IAE1D,uBAAuB;IACvB,kBAAkB,EAAE,wCAAwC;IAE5D,wBAAwB;IACxB,kBAAkB,EAAE,wCAAwC;CACpD,CAAC;AAEX;;GAEG;AACU,QAAA,eAAe,GAAG;IAC7B,uBAAuB;IACvB,qBAAqB,EAAE,OAAO;IAE9B,eAAe;IACf,mBAAmB,EAAE,6DAA6D;IAElF,aAAa;IACb,eAAe,EAAE,IAAI;CACb,CAAC;AAEX;;GAEG;AACH,SAAgB,iBAAiB,CAAC,YAAkB,IAAI,IAAI,EAAE;IAC5D,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC7D,OAAO,UAAU,SAAS,OAAO,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,SAAgB;IAChD,OAAO,IAAA,WAAI,EAAC,qBAAa,CAAC,UAAU,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;AACtE,CAAC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,QAAgB;IAC3C,OAAO,uBAAe,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC5D,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clash config generator for VLESS links
|
|
3
|
+
* @module services/clash-config
|
|
4
|
+
*/
|
|
5
|
+
import { VlessLinkInfo } from '../utils/vless-link';
|
|
6
|
+
export interface ClashConfigOptions {
|
|
7
|
+
proxyName?: string;
|
|
8
|
+
proxyGroupName?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface ClashConfigResult {
|
|
11
|
+
yaml: string;
|
|
12
|
+
proxyName: string;
|
|
13
|
+
proxyGroupName: string;
|
|
14
|
+
}
|
|
15
|
+
export declare function buildClashConfigYaml(info: VlessLinkInfo, options?: ClashConfigOptions): ClashConfigResult;
|
|
16
|
+
//# sourceMappingURL=clash-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clash-config.d.ts","sourceRoot":"","sources":["../../src/services/clash-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAcD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,GAAE,kBAAuB,GAAG,iBAAiB,CAoG7G"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Clash config generator for VLESS links
|
|
4
|
+
* @module services/clash-config
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.buildClashConfigYaml = buildClashConfigYaml;
|
|
8
|
+
function yamlQuote(value) {
|
|
9
|
+
const escaped = value.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
|
|
10
|
+
return `"${escaped}"`;
|
|
11
|
+
}
|
|
12
|
+
function renderStringList(lines, indent, values) {
|
|
13
|
+
const prefix = ' '.repeat(indent);
|
|
14
|
+
values.forEach((value) => {
|
|
15
|
+
lines.push(`${prefix}- ${yamlQuote(value)}`);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
function buildClashConfigYaml(info, options = {}) {
|
|
19
|
+
const proxyName = options.proxyName || info.name || `${info.server}:${info.port}`;
|
|
20
|
+
const proxyGroupName = options.proxyGroupName || 'PROXY';
|
|
21
|
+
const network = (info.type || 'tcp').toLowerCase();
|
|
22
|
+
const security = (info.security || '').toLowerCase();
|
|
23
|
+
const lines = [];
|
|
24
|
+
lines.push('port: 7890');
|
|
25
|
+
lines.push('socks-port: 7891');
|
|
26
|
+
lines.push('allow-lan: true');
|
|
27
|
+
lines.push('mode: rule');
|
|
28
|
+
lines.push('log-level: info');
|
|
29
|
+
lines.push('');
|
|
30
|
+
lines.push('proxies:');
|
|
31
|
+
lines.push(` - name: ${yamlQuote(proxyName)}`);
|
|
32
|
+
lines.push(' type: vless');
|
|
33
|
+
lines.push(` server: ${yamlQuote(info.server)}`);
|
|
34
|
+
lines.push(` port: ${info.port}`);
|
|
35
|
+
lines.push(` uuid: ${yamlQuote(info.uuid)}`);
|
|
36
|
+
lines.push(' udp: true');
|
|
37
|
+
lines.push(` network: ${yamlQuote(network)}`);
|
|
38
|
+
if (info.flow) {
|
|
39
|
+
lines.push(` flow: ${yamlQuote(info.flow)}`);
|
|
40
|
+
}
|
|
41
|
+
if (security === 'reality' || security === 'tls') {
|
|
42
|
+
lines.push(' tls: true');
|
|
43
|
+
if (info.sni) {
|
|
44
|
+
lines.push(` servername: ${yamlQuote(info.sni)}`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
if (security === 'reality') {
|
|
48
|
+
if (!info.pbk) {
|
|
49
|
+
throw new Error('Reality 链接缺少 pbk 参数');
|
|
50
|
+
}
|
|
51
|
+
lines.push(' reality-opts:');
|
|
52
|
+
lines.push(` public-key: ${yamlQuote(info.pbk)}`);
|
|
53
|
+
if (info.sid) {
|
|
54
|
+
lines.push(` short-id: ${yamlQuote(info.sid)}`);
|
|
55
|
+
}
|
|
56
|
+
if (info.spx) {
|
|
57
|
+
lines.push(` spider-x: ${yamlQuote(info.spx)}`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if (info.fp) {
|
|
61
|
+
lines.push(` client-fingerprint: ${yamlQuote(info.fp)}`);
|
|
62
|
+
}
|
|
63
|
+
if (info.alpn) {
|
|
64
|
+
const list = info.alpn
|
|
65
|
+
.split(',')
|
|
66
|
+
.map((value) => value.trim())
|
|
67
|
+
.filter(Boolean);
|
|
68
|
+
if (list.length > 0) {
|
|
69
|
+
lines.push(' alpn:');
|
|
70
|
+
renderStringList(lines, 6, list);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (network === 'ws') {
|
|
74
|
+
lines.push(' ws-opts:');
|
|
75
|
+
if (info.path) {
|
|
76
|
+
lines.push(` path: ${yamlQuote(info.path)}`);
|
|
77
|
+
}
|
|
78
|
+
if (info.host) {
|
|
79
|
+
lines.push(' headers:');
|
|
80
|
+
lines.push(` Host: ${yamlQuote(info.host)}`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
if (network === 'grpc') {
|
|
84
|
+
lines.push(' grpc-opts:');
|
|
85
|
+
const serviceName = info.serviceName || info.path;
|
|
86
|
+
if (serviceName) {
|
|
87
|
+
lines.push(` grpc-service-name: ${yamlQuote(serviceName)}`);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
lines.push('');
|
|
91
|
+
lines.push('proxy-groups:');
|
|
92
|
+
lines.push(` - name: ${yamlQuote(proxyGroupName)}`);
|
|
93
|
+
lines.push(' type: select');
|
|
94
|
+
lines.push(' proxies:');
|
|
95
|
+
lines.push(` - ${yamlQuote(proxyName)}`);
|
|
96
|
+
lines.push(' - DIRECT');
|
|
97
|
+
lines.push('');
|
|
98
|
+
lines.push('rules:');
|
|
99
|
+
lines.push(` - MATCH,${proxyGroupName}`);
|
|
100
|
+
lines.push('');
|
|
101
|
+
return {
|
|
102
|
+
yaml: `${lines.join('\n')}\n`,
|
|
103
|
+
proxyName,
|
|
104
|
+
proxyGroupName,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=clash-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clash-config.js","sourceRoot":"","sources":["../../src/services/clash-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* VLESS link parser utilities
|
|
3
|
+
* @module utils/vless-link
|
|
4
|
+
*/
|
|
5
|
+
export interface VlessLinkInfo {
|
|
6
|
+
uuid: string;
|
|
7
|
+
server: string;
|
|
8
|
+
port: number;
|
|
9
|
+
name: string;
|
|
10
|
+
encryption?: string;
|
|
11
|
+
security?: string;
|
|
12
|
+
type?: string;
|
|
13
|
+
flow?: string;
|
|
14
|
+
sni?: string;
|
|
15
|
+
fp?: string;
|
|
16
|
+
pbk?: string;
|
|
17
|
+
sid?: string;
|
|
18
|
+
spx?: string;
|
|
19
|
+
host?: string;
|
|
20
|
+
path?: string;
|
|
21
|
+
serviceName?: string;
|
|
22
|
+
alpn?: string;
|
|
23
|
+
headerType?: string;
|
|
24
|
+
}
|
|
25
|
+
export declare function normalizeVlessLink(raw: string): string;
|
|
26
|
+
export declare function parseVlessLink(raw: string): VlessLinkInfo;
|
|
27
|
+
//# sourceMappingURL=vless-link.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vless-link.d.ts","sourceRoot":"","sources":["../../src/utils/vless-link.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CA2DzD"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* VLESS link parser utilities
|
|
4
|
+
* @module utils/vless-link
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.normalizeVlessLink = normalizeVlessLink;
|
|
8
|
+
exports.parseVlessLink = parseVlessLink;
|
|
9
|
+
const validator_1 = require("./validator");
|
|
10
|
+
function normalizeVlessLink(raw) {
|
|
11
|
+
return raw.trim().replace(/\s+/g, '');
|
|
12
|
+
}
|
|
13
|
+
function parseVlessLink(raw) {
|
|
14
|
+
const normalized = normalizeVlessLink(raw);
|
|
15
|
+
let url;
|
|
16
|
+
try {
|
|
17
|
+
url = new URL(normalized);
|
|
18
|
+
}
|
|
19
|
+
catch {
|
|
20
|
+
throw new Error('无效的 VLESS 链接');
|
|
21
|
+
}
|
|
22
|
+
if (url.protocol !== 'vless:') {
|
|
23
|
+
throw new Error('仅支持 vless:// 链接');
|
|
24
|
+
}
|
|
25
|
+
const uuid = url.username;
|
|
26
|
+
if (!uuid) {
|
|
27
|
+
throw new Error('VLESS 链接缺少 UUID');
|
|
28
|
+
}
|
|
29
|
+
if (!(0, validator_1.isValidUuid)(uuid)) {
|
|
30
|
+
throw new Error('VLESS 链接 UUID 格式无效');
|
|
31
|
+
}
|
|
32
|
+
const server = url.hostname;
|
|
33
|
+
if (!server) {
|
|
34
|
+
throw new Error('VLESS 链接缺少服务器地址');
|
|
35
|
+
}
|
|
36
|
+
const port = url.port ? parseInt(url.port, 10) : 443;
|
|
37
|
+
if (!(0, validator_1.isValidPort)(port)) {
|
|
38
|
+
throw new Error('VLESS 链接端口无效');
|
|
39
|
+
}
|
|
40
|
+
const name = url.hash ? decodeURIComponent(url.hash.slice(1)) : '';
|
|
41
|
+
const params = url.searchParams;
|
|
42
|
+
const getParam = (key) => {
|
|
43
|
+
const value = params.get(key);
|
|
44
|
+
return value === null ? undefined : value;
|
|
45
|
+
};
|
|
46
|
+
return {
|
|
47
|
+
uuid,
|
|
48
|
+
server,
|
|
49
|
+
port,
|
|
50
|
+
name: name || `${server}:${port}`,
|
|
51
|
+
encryption: getParam('encryption'),
|
|
52
|
+
security: getParam('security'),
|
|
53
|
+
type: getParam('type'),
|
|
54
|
+
flow: getParam('flow'),
|
|
55
|
+
sni: getParam('sni'),
|
|
56
|
+
fp: getParam('fp'),
|
|
57
|
+
pbk: getParam('pbk'),
|
|
58
|
+
sid: getParam('sid'),
|
|
59
|
+
spx: getParam('spx'),
|
|
60
|
+
host: getParam('host'),
|
|
61
|
+
path: getParam('path'),
|
|
62
|
+
serviceName: getParam('serviceName'),
|
|
63
|
+
alpn: getParam('alpn'),
|
|
64
|
+
headerType: getParam('headerType'),
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=vless-link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vless-link.js","sourceRoot":"","sources":["../../src/utils/vless-link.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAyBH,gDAEC;AAED,wCA2DC;AAtFD,2CAAuD;AAuBvD,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED,SAAgB,cAAc,CAAC,GAAW;IACxC,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,GAAQ,CAAC;IAEb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC1B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,CAAC,IAAA,uBAAW,EAAC,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACrD,IAAI,CAAC,IAAA,uBAAW,EAAC,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC;IAChC,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAsB,EAAE;QACnD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5C,CAAC,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,MAAM;QACN,IAAI;QACJ,IAAI,EAAE,IAAI,IAAI,GAAG,MAAM,IAAI,IAAI,EAAE;QACjC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC;QAClC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC;QAC9B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;QACtB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;QACtB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;QACpB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC;QAClB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;QACpB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;QACpB,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC;QACpB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;QACtB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;QACtB,WAAW,EAAE,QAAQ,CAAC,aAAa,CAAC;QACpC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;QACtB,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC;KACnC,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "xray-manager",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Xray
|
|
3
|
+
"version": "1.8.0",
|
|
4
|
+
"description": "Xray 企业级管理平台 - 一键部署 + 流量配额管理 + 用户管理 | Enterprise-grade Xray management platform with one-click deployment, traffic quota, and user management",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"bin": {
|