From 0a1c2dfe44ac577068f057f4d6243417b83d0326 Mon Sep 17 00:00:00 2001 From: mack-a <57424792+mack-a@users.noreply.github.com> Date: Tue, 20 Apr 2021 16:23:02 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E6=8D=90=E8=B5=A0=E3=80=81=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=E4=BD=BF=E7=94=A8=E6=8C=87=E5=8D=97):=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=8D=90=E8=B5=A0=E6=96=B9=E5=BC=8F=E3=80=81=E5=AE=8C?= =?UTF-8?q?=E5=96=84=E8=84=9A=E6=9C=AC=E4=BD=BF=E7=94=A8=E6=8C=87=E5=8D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 +- documents/donation_aff.md | 40 ++++ documents/how_to_use.md | 378 ++++++++++++++------------------------ install.sh | 24 +-- 4 files changed, 192 insertions(+), 256 deletions(-) create mode 100644 documents/donation_aff.md diff --git a/README.md b/README.md index c56c1ca..0bb0556 100644 --- a/README.md +++ b/README.md @@ -181,9 +181,11 @@ wget -P /root -N --no-check-certificate "https://raw.githubusercontent.com/mack- wget -P /root -N --no-check-certificate "https://raw.githubusercontent.com/mack-a/v2ray-agent/3f8ea0aa364ae2e1e407056074c11b448396261f/install.sh" && chmod 700 /root/install.sh && /root/install.sh ``` -## 捐赠 +## 捐赠 -- [您可以通过虚拟币向我捐赠](https://github.com/mack-a/v2ray-agent/blob/master/documents/donation.md) +[您可以使用我的AFF进行购买VPS捐赠](https://github.com/mack-a/v2ray-agent/blob/master/documents/donation_aff.md) + +[支持通过虚拟币向我捐赠](https://github.com/mack-a/v2ray-agent/blob/master/documents/donation.md) # 示例图 diff --git a/documents/donation_aff.md b/documents/donation_aff.md new file mode 100644 index 0000000..02e6fe6 --- /dev/null +++ b/documents/donation_aff.md @@ -0,0 +1,40 @@ +- 搬瓦工 + +``` +https://bandwagonhost.com/aff.php?aff=64917 +``` + +稳定大厂,不管是限量版GIA还是日本软银都抢爆。 + +- centerhop + +``` +https://my.centerhop.com/aff.php?aff=190 +``` + +此厂商vps 2刀/月,新加坡vps,支持解锁新加坡区Netflix,不适合直连,适合使用上海CN2拉。 + +- kuaichedao + +``` +https://kuaichedao.co/aff.php?aff=181 +``` + +此厂商vps厂商机器较稳定,也比较贵,打折时可以入手,支持的地区比较多,一般都支持相应的地区的流媒体。 + +- cloudcone + +``` +https://app.cloudcone.com/?ref=6758 +``` + +此厂商vps相对便宜机器稳定,流量可以超用,不扣费。但是线路质量一般。 + +- vultr + +``` +https://www.vultr.com/?ref=8851883 +``` + +此厂商vps仅推荐日本东京和New York,日本东京为NTT线路,可以使用上海CN2、上海联通拉,New York推荐的理由则是比较便宜。使用我的AFF注册首月赠送100刀。不要使用黑卡或者第三方购买,vultr收不到钱会被封号。 + diff --git a/documents/how_to_use.md b/documents/how_to_use.md index 0c869e0..66398d3 100644 --- a/documents/how_to_use.md +++ b/documents/how_to_use.md @@ -1,247 +1,150 @@ -# 脚本使用方法介绍 +# 脚本功能介绍 -# 目录 +# 1.快速开始 -- [1.脚本安装、重新执行](#1脚本安装-重新执行) - * [1.安装](#1安装) - * [2.重新打开脚本](#2重新打开脚本) -- [2.功能介绍](#2功能介绍) - * [1.安装&任意组合安装](#1安装任意组合安装) - + [1.安装](#1安装-1) - + [2.任意组合安装](#2任意组合安装) - * [2.账号管理](#2账号管理) - + [1.查看账号](#1查看账号) - + [2.查看订阅](#2查看订阅) - + [3.添加用户](#3添加用户) - + [4.删除用户](#4删除用户) - * [3.更换伪装站点](#3更换伪装站点) - * [4.更新证书](#4更新证书) - * [5.更换CDN节点](#5更换cdn节点) - * [6.ipv6人机验证](#6ipv6人机验证) - * [7.流媒体工具](#7流媒体工具) - * [8.core版本管理](#8core版本管理) - * [9.trojan-go版本管理](#9trojan-go版本管理) - * [10.更新脚本](#10更新脚本) - * [11.BBR、DD脚本](#11bbr-dd脚本) - * [12.查看日志](#12查看日志) - * [13.卸载脚本](#13卸载脚本) -- [3.脚本常用命令](#3脚本常用命令) - * [1.启动脚本](#1启动脚本) - * [2.服务管理](#2服务管理) - + [1.Xray-core、v2ray-core、trojan-go](#1xray-core-v2ray-core-trojan-go) - + [2.Nginx](#2nginx) -- [4.常见错误处理](#5常见错误处理) - * [1.输入域名后卡住](#1输入域名后卡住) - * [2.下载脚本失败](#2下载脚本失败) - * [3.生成证书失败](#3生成证书失败) - * [4.Debian8启动nginx失败](#4debian8启动nginx失败) - + [解决方法一](#解决方法一) -- [5.答疑](#4答疑) - * [1.哪一种线路是最好的?](#1哪一种线路是最好的) - * [2.是否支持流量统计?](#2是否支持流量统计) - * [3.流控[xtls-rprx-direct、xtls-rprx-splice]答疑](#3流控xtls-rprx-directxtls-rprx-splice答疑) - * [4.GCP挖矿或者其余警告被封实例](#4gcp挖矿或者其余警告被封实例) - * [5.智能DNS的作用](#5智能dns的作用) +## 1.安装/重新安装/任意组合安装 -# 1.脚本安装、重新执行 +- 安装/重新安装 -## 1.安装 +此操作会安装根据选择不同内核进行全部协议的安装【VLESS、VMess、trojan】 -- 最新版 +- 任意组合安装 +必选VLESS TCP,其余的可以任意组合 + +### 1.选择内核 + +- Xray-core +- v2ray-core + +此版本不支持xtls + +- v2ray-core[XTLS] + +最后一个支持xtls的v2ray-core版本 + + +### 2.检测域名的ip + +这里会先检测IPv4后检测IPv6 + + + +### 3.申请TLS证书 + +1.首次签发证书会自动签发。 2.如果使用acme.sh申请过证书,这里会直接使用而不会重复签发,如果在【是否重新安装】选择y,则会把证书重新安装一遍不是重新签发。 + + +### 4.生成随机路径 + +这里会先读取上次安装时路径,如果没有读取到则会手动输入或者随机路径 + + + +### 5.安装Xray/v2ray + +根据选择的内核进行安装,如果安装过则会提示是否更新或者升级 + + + +### 6.安装Trojan-Go + +如果安装时选择安装trojan协议或者全部安装,则这里会自动安装trojan-go核心,与上面相同如果安装过则会提示是否更新或者升级。 + + + +### 7.添加智能DNS智能解析 + +如果选择y,则查看帐号的时候 address是优选后的域名解析,则会出现address是脚本提供的域名,伪装域名或SNI或peer则是个人的域名,详情原理解析请查看[此文章](https://github.com/mack-a/v2ray-agent/blob/master/documents/optimize_V2Ray.md),仅支持ws的传输方式 + + + +### 8.初始化xray/v2ray配置文件 + +这里会提供自定义uuid的入口,如果不提供自定义的uuid则会尝试读取上次安装时的uuid,如果以上都没读取到会随机生成uuid。 + + +### 9.定时任务维护证书 + +每天凌晨一点半会检查证书的有效性,如果无效会自动更新、安装、重启。 + +### 10.添加伪装站点 + +会检测上次是否安装了伪装站点,如检测不到会自动安装默认的伪装站点,如果后续不满意可以使用脚本提供的伪站更换或自定义伪站 + + + +### 11.完成 + +恭喜到这里就是最后一步了,接下来会检测服务是否正常,正常则会展示帐号 + +# 2.进阶教学 + +## 1.账号管理 + +### 1.查看订阅 + +当【查看订阅】时脚本会自动创建一个唯一的订阅地址,不【查看订阅】时不会自动生成。 每次帐号更改时需要重新【查看订阅】才会生成新的内容。 此操作完全在你的服务器存放,不需要担心是否泄漏。 + +### 2.添加用户/删除用户 + +脚本支持多用户管理,如果添加用户后相应的订阅也就产生多个 + + +### 3.更换伪站点 + +脚本提供了多个可供更换的伪站 + + +### 4.修改CDN节点 + +脚本提供多个优选ip的CNAME,可以根据自己本地的运营商进行更换,详情原理解析请查看[此文章](https://github.com/mack-a/v2ray-agent/blob/master/documents/optimize_V2Ray.md),仅支持ws的传输方式 + +### 5.IPv6分流 + +可以指定网站只走IPv6,应用场景【1.Google人机验证 2.流媒体解锁】 + +### 6.流媒体工具 + +- Netflix检测,检测vps是否支持Netflix解锁,脚本内置的可能不准确。 +- 任意门落地机解锁Netflix + +[详情请查看此文章](https://github.com/mack-a/v2ray-agent/blob/master/documents/netflix/dokodemo-unblock_netflix.md) + + +- DNS解锁流媒体 +一般购买的DNS流媒体解锁支持解锁的流媒体相对较多,支持解锁以下网站 ``` -wget -P /root -N --no-check-certificate "https://raw.githubusercontent.com/mack-a/v2ray-agent/master/install.sh" && chmod 700 /root/install.sh && /root/install.sh +netflix、bahamut、hulu、hbo、disney、bbc、4chan、fox、abema、dmm、niconico、pixiv、bilibili、viu ``` + -- 稳定-v2.2.24 -``` -wget -P /root -N --no-check-certificate "https://raw.githubusercontent.com/mack-a/v2ray-agent/9ae23c13a56460d8c14f27c8eb65efc73b173f46/install.sh" && chmod 700 /root/install.sh && /root/install.sh -``` +### 7.添加新端口 +不影响443端口的使用,查看帐号时仅展示443端口的帐号,支持多个端口的添加和删除。 + -- 稳定-v2.1.27 +### 8.core管理 +支持核心的升级、回退、重启、打开、关闭,仅限xray、v2ray + -``` -wget -P /root -N --no-check-certificate "https://raw.githubusercontent.com/mack-a/v2ray-agent/3f8ea0aa364ae2e1e407056074c11b448396261f/install.sh" && chmod 700 /root/install.sh && /root/install.sh -``` -## 2.重新打开脚本 +### 9.安装BBR、DD脚本 +支持BBR的安装、支持重新安装系统,[这里使用的是【ylx2016】的脚本](https://github.com/ylx2016/Linux-NetSpeed) -- 1.重新打开 +### 10.查看日志 +默认关闭access日志,如果想要调试则需要打开。此日志会产生大量的访问记录,建议调试完后关闭。 + -``` -# 执行 -vasma -``` +### 11.卸载脚本 -- 2.自定义打开命令 +卸载脚本时会删除脚本产生的数据文件以及脚本本身,但是不会删除安装的linux命令,比如curl、wget、nginx等,会将当前安装的证书备份到【/tmp/v2ray-agent-tls】,重启后此文件消失。 -``` -# 替换下方的 abc 为自己想要定义的命令 -echo "alias abc=vasma" >> ~/.bashrc & source ~/.bashrc -``` + -# 2.功能介绍 +# 3.常见错误处理 -## 1.安装&任意组合安装 - -### 1.安装 - -- [安装]会安装 VLESS/VMess/Trojan三种协议 -- 会根据不同的内核,安装当前内核支持的最新的配置 - -### 2.任意组合安装 - -- [任意组合安装]可以安装 VLESS/VMess/Trojan三种协议 -- 采用VLESS回落,所以0是必须安装的,也是默认安装的,不管选择哪一个种安装内容都会安装0。 -- 支持VLESS+TLS/XTLS+TCP、VLESS+TLS+WS[CDN]、VMess+TLS+TCP、VMess+TLS+WS[CDN]、Trojan、Trojan+WS[CDN] -- 支持WS传输类型的才支持Cloudflare - -## 2.账号管理 - -### 1.查看账号 - -### 2.查看订阅 - -- 1.默认不生成订阅文件,只有在查看订阅后才会生成订阅文件。 -- 2.每次添加、删除用户时,需要重新查看订阅才会重新生成 - -### 3.添加用户 - -- 1.可以添加一个或者多个用户 -- 2.添加一个用户时会提示是否自定义UUID和用户名称、添加多个用户时会随机分配名称和UUID -- 3.安装时无法自定义uuid,但是可以在安装完后,添加一个账户来自定义uuid。 - -### 4.删除用户 - -## 3.更换伪装站点 - -- 如需手动更换请将要替换的文件拷贝到此[/usr/share/nginx/html]目录下 -- 其余的伪装站点请到脚本中查看 - -## 4.更新证书 - -- 1.支持手动更新证书 -- 2.[不支持手动拷贝进去的证书进行更新](https://github.com/mack-a/v2ray-agent/blob/master/documents/install_tls.md) - -## 5.更换CDN节点 - -- 适用于VLESS+TLS+WS[CDN]、VMess+TLS+WS[CDN]、Trojan+WS[CDN] -- [具体详解请查看此文章](https://github.com/mack-a/v2ray-agent/blob/master/documents/optimize_V2Ray.md) - -## 6.ipv6人机验证 - -- 解决vps打开Google后频繁出现人机验证 -- 需要自己申请HE的ipv6地址 -- 脚本会检测是否支持ipv6 - -## 7.流媒体工具 - -- 支持检测是否解锁Netflix -- [支持任意门解锁流媒体](https://github.com/mack-a/v2ray-agent/blob/master/documents/netflix/dokodemo-unblock_netflix.md) - -## 8.core版本管理 - -- 1.支持不同内核[v2ray-core、xray-core]升级回退、可以回退五个版本 - -## 9.trojan-go版本管理 - -- 1.支持trojan-go更新、回退 - -## 10.更新脚本 - -- 支持在线更新脚本 - -## 11.BBR、DD脚本 - -- [集成ylx2016的脚本](https://github.com/ylx2016/Linux-NetSpeed) - -## 12.查看日志 - -## 13.卸载脚本 - -- 卸载后会保留acme目录的证书文件防止下次安装时重新签发,签发多次后在一段时间内就不可以签发 - -# 3.脚本常用命令 - -## 1.启动脚本 - -``` -vasma -``` - -## 2.服务管理 - -### 1.Xray-core、v2ray-core、trojan-go - -- 启动 - -``` -# xray -systemctl start xray - -# v2ray -systemctl start v2ray - -# trojan-go -systemctl start trojan-go -``` - -- 重启 - -``` -# xray -systemctl restart xray - -# v2ray -systemctl restart v2ray - -# trojan-go -systemctl restart trojan-go -``` - -- 关闭 - -``` -# xray -systemctl stop xray - -# v2ray -systemctl stop v2ray - -# trojan-go -systemctl stop trojan-go -``` - -### 2.Nginx - -- 启动 - -```` -nginx -```` - -- 重启 - -``` -nginx -s reload -``` - -- 关闭 - -``` -nginx -s stop -``` - -# 5.常见错误处理 - -## 1.输入域名后卡住 - -``` -# 请手动打开icmp -``` - -## 2.下载脚本失败 +## 1.下载脚本失败 @@ -257,24 +160,22 @@ nameserver 1.1.1.1 nameserver 8.8.4.4 ``` -## 3.生成证书失败 +## 2.生成证书失败 - 请更换Debian或者Ubuntu -## 4.Debian8启动nginx失败 +## 3.Debian8启动nginx失败 -### 解决方法一 +# 解决方法一 - 手动删除add_header选项 ``` vim /etc/nginx/conf.d/alone.conf # 删除下方代码 -location / { - add_header Strict-Transport-Security "max-age=63072000" always; -} +add_header Strict-Transport-Security "max-age=63072000" always; ``` # 4.答疑 @@ -284,22 +185,15 @@ location / { - 没有最好的只有最适合的 - 建议自己多测试找出适合自己的 -## 2.是否支持流量统计? -- 不支持,此功能以后也不会写。 - -## 3.流控[xtls-rprx-direct、xtls-rprx-splice]答疑 +## 2.流控[xtls-rprx-direct、xtls-rprx-splice]答疑 - xtls-rprx-direct为服务端,xtls-rprx-splice为客户端,并且仅支持linux[路由器、软路由]、android -## 4.GCP挖矿或者其余警告被封实例 +## 3.GCP挖矿或者其余警告被封实例 - GCP不建议使用代理,自从GCP改为3个月后,开始封禁大流量实例,和脚本无关。 -## 5.智能DNS的作用 +## 4.VLESS+WS+TLS、VMess+WS+TLS,如果套CF,开启CF的小云朵了,那么如果把域名给换成优选IP的话 小云朵需要关闭不? -- [具体详解请查看此文章](https://github.com/mack-a/v2ray-agent/blob/master/documents/optimize_V2Ray.md) - -## 6.VLESS+WS+TLS、VMess+WS+TLS,如果套CF,开启CF的小云朵了,那么如果把域名给换成优选IP的话 小云朵需要关闭不? - -- [自选ip的情况下,不需要开启云朵](https://github.com/mack-a/v2ray-agent/blob/master/documents/optimize_V2Ray.md) \ No newline at end of file +- [自选ip的情况下,不需要开启云朵](https://github.com/mack-a/v2ray-agent/blob/master/documents/optimize_V2Ray.md) diff --git a/install.sh b/install.sh index ec71e77..4e6445b 100644 --- a/install.sh +++ b/install.sh @@ -752,7 +752,7 @@ installCronTLS() { sed '/v2ray-agent/d;/acme.sh/d' /etc/v2ray-agent/backup_crontab.cron >/etc/v2ray-agent/backup_crontab.cron echo "30 1 * * * /bin/bash /etc/v2ray-agent/install.sh RenewTLS" >>/etc/v2ray-agent/backup_crontab.cron crontab /etc/v2ray-agent/backup_crontab.cron - echoContent green " ---> 添加定时维护证书成功" + echoContent green "\n ---> 添加定时维护证书成功" } # 更新证书 @@ -2361,13 +2361,13 @@ unInstall() { handleV2Ray stop handleTrojanGo stop - handleMTG stop + # handleMTG stop rm -rf /etc/systemd/system/v2ray.service echoContent green " ---> 删除V2Ray开机自启完成" - rm -rf /etc/systemd/system/mtg.service - echoContent green " ---> 删除MTG开机自启完成" + # rm -rf /etc/systemd/system/mtg.service + # echoContent green " ---> 删除MTG开机自启完成" rm -rf /etc/systemd/system/trojan-go.service echoContent green " ---> 删除Trojan-Go开机自启完成" @@ -2384,7 +2384,7 @@ unInstall() { rm -rf /usr/bin/vasma rm -rf /usr/sbin/vasma echoContent green " ---> 卸载快捷方式完成" - echoContent green " ---> 卸载v2ray-agent完成" + echoContent green " ---> 卸载v2ray-agent脚本完成" } # 修改V2Ray CDN节点 @@ -2707,15 +2707,15 @@ checkLog() { echoContent red " ---> 没有检测到安装目录,请执行脚本安装内容" fi local logStatus=false - if [[ -n $(cat ${configPath}00_log.json|grep access) ]];then + if [[ -n $(cat ${configPath}00_log.json | grep access) ]]; then logStatus=true fi echoContent skyBlue "\n功能 $1/${totalProgress} : 查看日志" echoContent red "\n==============================================================" - echoContent yellow "# 建议仅调试打开access日志\n" + echoContent yellow "# 建议仅调试时打开access日志\n" - if [[ "${logStatus}" == "false" ]];then + if [[ "${logStatus}" == "false" ]]; then echoContent yellow "1.打开access日志" else echoContent yellow "1.关闭access日志" @@ -2731,7 +2731,7 @@ checkLog() { case ${selectAccessLogType} in 1) - if [[ "${logStatus}" == "false" ]];then + if [[ "${logStatus}" == "false" ]]; then cat <${configPath}00_log.json { "log": { @@ -2741,7 +2741,7 @@ checkLog() { } } EOF - elif [[ "${logStatus}" == "true" ]];then + elif [[ "${logStatus}" == "true" ]]; then cat <${configPath}00_log.json { "log": { @@ -2891,7 +2891,7 @@ streamingToolbox() { echoContent red "\n==============================================================" echoContent yellow "1.Netflix检测" echoContent yellow "2.任意门落地机解锁Netflix" - echoContent yellow "3.DNS解锁Netflix" + echoContent yellow "3.DNS解锁流媒体\n" read -r -p "请选择:" selectType case ${selectType} in @@ -3657,7 +3657,7 @@ menu() { echoContent yellow "8.流媒体工具" echoContent yellow "9.添加新端口" echoContent skyBlue "-------------------------版本管理-----------------------------" - echoContent yellow "10.core版本管理" + echoContent yellow "10.core管理" echoContent yellow "11.更新Trojan-Go" echoContent yellow "12.更新脚本" echoContent yellow "13.安装BBR、DD脚本"