Add files via upload

This commit is contained in:
xVRVx
2026-06-05 17:51:13 +03:00
committed by GitHub
parent aa6ac1cb65
commit 8c69feefe8
2 changed files with 76 additions and 26 deletions

View File

@@ -1,7 +1,5 @@
#!/bin/bash
# указываем фингерпринт
fpBro=edge
# Цвета для вывода
GRN='\033[1;32m'
@@ -9,7 +7,7 @@ RED='\033[1;31m'
YEL='\033[1;33m'
NC='\033[0m' # No Color
echo -e "${GRN}Версия: 223 ${NC}"
echo -e "${GRN}Версия: 224 ${NC}"
[[ $EUID -eq 0 ]] || { echo -e "${RED}❌ скрипту нужны root права ${NC}"; exit 1; }
@@ -60,6 +58,22 @@ else
TARGET_MTP="/dev/shm/nginx.sock"
INSTALL_MTP=false
fi
echo -e "\n${YEL}Выберите TLS fingerprint для маскировки трафика:${NC}"
echo "1) chrome 3) safari 5) android 7) 360"
echo "2) firefox 4) ios 6) edge 8) qq"
read -p "Введите номер [1-8] (по умолчанию 2 - firefox): " fp_choice
case $fp_choice in
1) fpBro="chrome" ;;
2) fpBro="firefox" ;;
3) fpBro="safari" ;;
4) fpBro="ios" ;;
5) fpBro="android" ;;
7) fpBro="360" ;;
8) fpBro="qq" ;;
*) fpBro="edge" ;; # Если ввели 2, пустоту или ошибку — ставим firefox
esac
# ============================
# Включаем BBR

View File

@@ -6,7 +6,7 @@ RED='\033[1;31m'
YEL='\033[1;33m'
NC='\033[0m' # No Color
echo -e "${GRN}Версия: 222 ${NC}"
echo -e "${GRN}Версия: 224 ${NC}"
[[ $EUID -eq 0 ]] || { echo -e "${RED}❌ скрипту нужны root права ${NC}"; exit 1; }
@@ -117,6 +117,34 @@ if [ "$LOCAL_IP" != "$DNS_IP" ]; then
echo -e "${YEL}Продолжение выполнения скрипта...${NC}"
fi
# === ВОПРОСЫ ПОЛЬЗОВАТЕЛЮ ===
read -p "Устанавливать MTProxy для Telegram? (y/n, по умолчанию y): " choice_mtp
choice_mtp=${choice_mtp:-y}
if [[ "$choice_mtp" =~ ^[Yy]$ ]]; then
TARGET_MTP="127.0.0.1:500"
INSTALL_MTP=true
else
TARGET_MTP="/dev/shm/nginx.sock"
INSTALL_MTP=false
fi
echo -e "\n${YEL}Выберите TLS fingerprint для маскировки трафика:${NC}"
echo "1) chrome 3) safari 5) android 7) 360"
echo "2) firefox 4) ios 6) edge 8) qq"
read -p "Введите номер [1-8] (по умолчанию 2 - firefox): " fp_choice
case $fp_choice in
1) fpBro="chrome" ;;
2) fpBro="firefox" ;;
3) fpBro="safari" ;;
4) fpBro="ios" ;;
5) fpBro="android" ;;
7) fpBro="360" ;;
8) fpBro="qq" ;;
*) fpBro="edge" ;; # Если ввели 2, пустоту или ошибку — ставим firefox
esac
# ============================
# Включаем BBR
bbr=$(sysctl -n net.ipv4.tcp_congestion_control 2>/dev/null)
if [ "$bbr" = "bbr" ]; then
@@ -398,7 +426,7 @@ cat << EOF > "$SCRIPT_DIR/config.json"
"realitySettings": {
"show": false,
"xver": 2,
"target": "127.0.0.1:500",
"target": "${TARGET_MTP}",
"spiderX": "/",
"shortIds": [
"$xray_shortIds_vrv"
@@ -447,10 +475,10 @@ cat << EOF > "$SCRIPT_DIR/config.json"
{
"tag": "RUsocks5",
"port": 10443,
"listen": "0.0.0.0",
"listen": "127.0.0.1",
"protocol": "mixed",
"settings": {
"ip": "0.0.0.0",
"ip": "127.0.0.1",
"udp": true,
"auth": "password",
"accounts": [
@@ -739,7 +767,7 @@ for (( i=0; i<COUNT; i++ )); do
}
},
"realitySettings": {
"show": false, "fingerprint": "chrome", "serverName": "$DOMAIN",
"show": false, "fingerprint": "$fpBro", "serverName": "$DOMAIN",
"password": "$xray_publicKey_vrv", "shortId": "$xray_shortIds_vrv", "spiderX": "/"
}
}
@@ -764,7 +792,7 @@ EOF
"network": "raw",
"security": "reality",
"realitySettings": {
"show": false, "fingerprint": "chrome", "serverName": "$DOMAIN",
"show": false, "fingerprint": "$fpBro", "serverName": "$DOMAIN",
"password": "$xray_publicKey_vrv", "shortId": "$xray_shortIds_vrv", "spiderX": "/"
}
}
@@ -822,9 +850,9 @@ EOF
fi
# --- Генерируем ссылки vless:// для HTML странички (с портом моста) ---
link_xhttp="vless://${BRIDGE_UUID[$i]}@$DOMAIN:$SERVER_PORT?security=reality&type=xhttp&headerType=&path=%2F$path_xhttp&host=&mode=stream-one&extra=%7B%22xmux%22%3A%7B%22cMaxReuseTimes%22%3A%221000-3000%22%2C%22maxConcurrency%22%3A%223-5%22%2C%22maxConnections%22%3A0%2C%22hKeepAlivePeriod%22%3A0%2C%22hMaxRequestTimes%22%3A%22400-700%22%2C%22hMaxReusableSecs%22%3A%221200-1800%22%7D%2C%22headers%22%3A%7B%7D%2C%22noGRPCHeader%22%3Afalse%2C%22xPaddingBytes%22%3A%22400-800%22%2C%22scMaxEachPostBytes%22%3A1500000%2C%22scMinPostsIntervalMs%22%3A20%2C%22scStreamUpServerSecs%22%3A%2260-240%22%7D&sni=$DOMAIN&fp=chrome&pbk=${xray_publicKey_vrv}&sid=${xray_shortIds_vrv}&spx=%2F#RU%3EEU_xhttp_$REMARK_BASE"
link_xhttp="vless://${BRIDGE_UUID[$i]}@$DOMAIN:$SERVER_PORT?security=reality&type=xhttp&headerType=&path=%2F$path_xhttp&host=&mode=stream-one&extra=%7B%22xmux%22%3A%7B%22cMaxReuseTimes%22%3A%221000-3000%22%2C%22maxConcurrency%22%3A%223-5%22%2C%22maxConnections%22%3A0%2C%22hKeepAlivePeriod%22%3A0%2C%22hMaxRequestTimes%22%3A%22400-700%22%2C%22hMaxReusableSecs%22%3A%221200-1800%22%7D%2C%22headers%22%3A%7B%7D%2C%22noGRPCHeader%22%3Afalse%2C%22xPaddingBytes%22%3A%22400-800%22%2C%22scMaxEachPostBytes%22%3A1500000%2C%22scMinPostsIntervalMs%22%3A20%2C%22scStreamUpServerSecs%22%3A%2260-240%22%7D&sni=$DOMAIN&fp=$fpBro&pbk=${xray_publicKey_vrv}&sid=${xray_shortIds_vrv}&spx=%2F#RU%3EEU_xhttp_$REMARK_BASE"
link_raw="vless://${BRIDGE_UUID[$i]}@$DOMAIN:$SERVER_PORT?security=reality&type=tcp&headerType=&path=&host=&flow=xtls-rprx-vision&sni=$DOMAIN&fp=chrome&pbk=${xray_publicKey_vrv}&sid=${xray_shortIds_vrv}&spx=%2F#RU%3EEU_raw_$REMARK_BASE"
link_raw="vless://${BRIDGE_UUID[$i]}@$DOMAIN:$SERVER_PORT?security=reality&type=tcp&headerType=&path=&host=&flow=xtls-rprx-vision&sni=$DOMAIN&fp=$fpBro&pbk=${xray_publicKey_vrv}&sid=${xray_shortIds_vrv}&spx=%2F#RU%3EEU_raw_$REMARK_BASE"
CONFIGS_ARRAY+=( "XHTTP (RU>EU $REMARK_BASE)|$link_xhttp" )
CONFIGS_ARRAY+=( "RAW VISION (RU>EU $REMARK_BASE)|$link_raw" )
@@ -840,8 +868,13 @@ echo -e "Перезапуск XRAY"
subPageLink="https://$DOMAIN/$path_subpage.json"
configListLink="https://$DOMAIN/$path_subpage.html"
echo -e "\n\n${GRN}Устанавливаем MTProto FakeTLS ${NC}"
source <(curl -sL https://github.com/xVRVx/autoXRAY/raw/refs/heads/main/test/telemt-test.sh)
if [ "$INSTALL_MTP" = true ]; then
echo -e "\n\n${GRN}Устанавливаем MTProto FakeTLS ${NC}"
source <(curl -sL https://github.com/xVRVx/autoXRAY/raw/refs/heads/main/test/telemt-test.sh)
else
echo -e "\n\n${YEL}Установка MTProto FakeTLS пропущена.${NC}"
MTProto=""
fi
echo -e "\n\n${GRN}Создаем страницу подписки ${NC}"
cat > "$WEB_PATH/$path_subpage.html" <<'EOF'
@@ -900,22 +933,20 @@ done
SOCKS5_url="tg://socks?server=$DOMAIN&port=10443&user=${socksUser}&pass=${socksPasw}"
# Дописываем Socks5, MTProto, All links и подвал
# Добавляем MTProxy блок только если он установлен
if [ "$INSTALL_MTP" = true ]; then
cat >> "$WEB_PATH/$path_subpage.html" <<EOF
<div class="config-row">
<div class="config-label">Мост Socks5 (TG)</div>
<div class="config-code" id="sock">${SOCKS5_url}</div>
<button class="btn-action copy-btn" onclick="copyText('sock', this)">Copy</button>
<a href="${SOCKS5_url}" target="_blank" class="btn-action qr-btn" title="автодобавление моста в тг" style="text-decoration:none">✈️ Add to TG</a>
</div>
<div class="config-row">
<div class="config-label">Мост MTProtoFakeTLS (TG)</div>
<div class="config-label">MTProtoFakeTLS (TG)</div>
<div class="config-code" id="mtproto">${MTProto}</div>
<button class="btn-action copy-btn" onclick="copyText('mtproto', this)">Copy</button>
<a href="${MTProto}" target="_blank" class="btn-action qr-btn" title="автодобавление моста в тг" style="text-decoration:none">✈️ Add to TG</a>
</div>
EOF
fi
# Дописываем конец страницы
cat >> "$WEB_PATH/$path_subpage.html" <<EOF
<h2>💠 Все конфиги вместе</h2>
<div class="config-row">
<div class="config-code" id="cAll" style="max-height:60px;white-space:pre-wrap;word-break:break-all">$ALL_LINKS_TEXT</div>
@@ -932,10 +963,18 @@ EOF
# --- ФИНАЛЬНАЯ ПРОВЕРКА ---
echo -e "\n${YEL}=== Финальная проверка статусов ===${NC}"
if systemctl is-active --quiet telemt; then echo -e "Telemt: ${GRN}RUNNING${NC}"; else echo -e "Telemt: ${RED}STOPPED/ERROR${NC}"; fi
if [ "$INSTALL_MTP" = true ]; then
if systemctl is-active --quiet telemt; then echo -e "Telemt: ${GRN}RUNNING${NC}"; else echo -e "Telemt: ${RED}STOPPED/ERROR${NC}"; fi
fi
if systemctl is-active --quiet nginx; then echo -e "Nginx: ${GRN}RUNNING${NC}"; else echo -e "Nginx: ${RED}STOPPED/ERROR${NC}"; fi
if systemctl is-active --quiet xray; then echo -e "XRAY: ${GRN}RUNNING${NC}"; else echo -e "XRAY: ${RED}STOPPED/ERROR${NC}"; fi
echo -e "\n"
if [ "$INSTALL_MTP" = true ]; then
echo -e "${YEL}MTProto FakeTLS для ТГ${NC}\n$MTProto\n"
fi
echo -e "
${YEL}✅ Сгенерировано мостов: ${GRN}$COUNT${NC}
@@ -945,9 +984,6 @@ ${GRN}$subPageLink${NC}
${YEL}Ссылка на сохраненные конфиги (Web UI) ${NC}
${GRN}$configListLink ${NC}
${YEL}MTProto FakeTLS для ТГ${NC}
${GRN}$MTProto ${NC}
Скопируйте подписку в специализированное приложение:
- iOS: Happ или v2RayTun или v2rayN
- Android: Happ или v2RayTun или v2rayNG