diff --git a/autoXRAYselfsteal.sh b/autoXRAYselfsteal.sh deleted file mode 100644 index 9008210..0000000 --- a/autoXRAYselfsteal.sh +++ /dev/null @@ -1,392 +0,0 @@ -#!/bin/bash - -DOMAIN=$1 - -if [ -z "$DOMAIN" ]; then - echo "❌ Ошибка: домен не задан." - exit 1 -fi - -echo "Обновление и установка необходимых пакетов..." -apt update && apt install -y jq dnsutils - - -LOCAL_IP=$(hostname -I | awk '{print $1}') -DNS_IP=$(dig +short "$DOMAIN" | grep '^[0-9]') - -if [ "$LOCAL_IP" != "$DNS_IP" ]; then - echo "❌ Внимание: IP-адрес ($LOCAL_IP) не совпадает с A-записью $DOMAIN ($DNS_IP)." - echo "Правильно укажите одну A-запись для вашего домена в ДНС - $LOCAL_IP" - - read -p "Продолжить на ваш страх и риск? (y/N): " choice - if [[ ! "$choice" =~ ^[Yy]$ ]]; then - echo "Выполнение скрипта прервано." - exit 1 - fi - echo "Продолжение выполнения скрипта..." -fi - - -apt install nginx -y - -systemctl enable --now nginx - -apt install certbot -y - -certbot certonly --webroot -w /var/www/html -d $DOMAIN -m mail@$DOMAIN --agree-tos --non-interactive --deploy-hook "systemctl reload nginx" - -CONFIG_PATH="/etc/nginx/sites-available/default" - -echo "✅ Записываем конфигурацию в $CONFIG_PATH для домена $DOMAIN" - -bash -c "cat > $CONFIG_PATH" < "$WEB_PATH/index.html" < - - - - - $TITLE - - - -
-

$HEADER

-
-
- - -
-
- - -
- -
-
- - -EOF - - - -# Установка Xray -bash -c "$(curl -L https://github.com/XTLS/Xray-install/raw/main/install-release.sh)" @ install - - -# Определяем директорию скрипта -#SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &> /dev/null && pwd) -SCRIPT_DIR=/usr/local/etc/xray - -# Генерируем переменные -xray_uuid_vrv=$(xray uuid) -domains=(www.theregister.com www.20minutes.fr www.dealabs.com www.manomano.fr www.caradisiac.com www.techadvisor.com www.computerworld.com teamdocs.su wikiportal.su docscenter.su www.bing.com github.com tradingview.com) -xray_dest_vrv=${domains[$RANDOM % ${#domains[@]}]} -xray_dest_vrv222=${domains[$RANDOM % ${#domains[@]}]} - -key_output=$(xray x25519) -xray_privateKey_vrv=$(echo "$key_output" | awk -F': ' '/PrivateKey/ {print $2}') -xray_publicKey_vrv=$(echo "$key_output" | awk -F': ' '/Password/ {print $2}') - -key_mldsa65=$(xray mldsa65) -seed_mldsa65=$(echo "$key_mldsa65" | awk -F': ' '/Seed/ {print $2}') -verify_mldsa65=$(echo "$key_mldsa65" | awk -F': ' '/Verify/ {print $2}') - -xray_shortIds_vrv=$(openssl rand -hex 8) - -xray_sspasw_vrv=$(openssl rand -base64 15 | tr -dc 'A-Za-z0-9' | head -c 20) - -ipserv=$(hostname -I | awk '{print $1}') - - - -# Экспортируем переменные для envsubst -export xray_uuid_vrv xray_dest_vrv xray_dest_vrv222 xray_privateKey_vrv xray_publicKey_vrv xray_shortIds_vrv xray_sspasw_vrv DOMAIN - -# Создаем JSON конфигурацию на основе шаблона -#cat << 'EOF' | envsubst > output.json -# Создаем JSON конфигурацию на основе шаблона и сохраняем в папку скрипта -cat << 'EOF' | envsubst > "$SCRIPT_DIR/config.json" -{ - "log": { - "dnsLog": false, - "loglevel": "none" - }, - "dns": { - "servers": [ - "https+local://8.8.4.4/dns-query", - "https+local://8.8.8.8/dns-query", - "https+local://1.1.1.1/dns-query", - "localhost" - ], - "queryStrategy": "UseIPv4" - }, - "inbounds": [ - { - "tag": "VtcpRself", - "port": 443, - "listen": "0.0.0.0", - "protocol": "vless", - "settings": { - "clients": [ - { - "flow": "xtls-rprx-vision", - "id": "${xray_uuid_vrv}" - } - ], - "decryption": "none" - }, - "sniffing": { - "enabled": true, - "destOverride": [ - "http", - "tls", - "quic" - ] - }, - "streamSettings": { - "network": "raw", - "security": "reality", - "realitySettings": { - "show": false, - "xver": 1, - "target": "/dev/shm/nginx.sock", - "spiderX": "/", - "shortIds": [ - "${xray_shortIds_vrv}" - ], - "privateKey": "${xray_privateKey_vrv}", - "serverNames": [ - "$DOMAIN" - ], - "limitFallbackUpload": { - "afterBytes": 0, - "bytesPerSec": 65536, - "burstBytesPerSec": 0 - }, - "limitFallbackDownload": { - "afterBytes": 5242880, - "bytesPerSec": 262144, - "burstBytesPerSec": 2097152 - } - } - } - }, - { - "tag": "Vless8443self", - "port": 8443, - "listen": "0.0.0.0", - "protocol": "vless", - "settings": { - "clients": [ - { - "flow": "xtls-rprx-vision", - "id": "${xray_uuid_vrv}" - } - ], - "decryption": "none" - }, - "sniffing": { - "enabled": true, - "destOverride": [ - "http", - "tls", - "quic" - ] - }, - "streamSettings": { - "network": "raw", - "security": "reality", - "realitySettings": { - "show": false, - "xver": 1, - "target": "/dev/shm/nginx.sock", - "spiderX": "/", - "shortIds": [ - "${xray_shortIds_vrv}" - ], - "privateKey": "${xray_privateKey_vrv}", - "serverNames": [ - "$DOMAIN" - ], - "limitFallbackUpload": { - "afterBytes": 0, - "bytesPerSec": 65536, - "burstBytesPerSec": 0 - }, - "limitFallbackDownload": { - "afterBytes": 5242880, - "bytesPerSec": 262144, - "burstBytesPerSec": 2097152 - } - } - } - }, - { - "tag": "ShadowsocksTCP", - "port": 2040, - "listen": "0.0.0.0", - "protocol": "shadowsocks", - "settings": { - "clients": [ - { - "password": "${xray_sspasw_vrv}", - "method": "chacha20-ietf-poly1305" - } - ] - }, - "sniffing": { - "enabled": true, - "destOverride": [ - "http", - "tls", - "quic" - ] - }, - "streamSettings": { - "network": "raw" - } - } - ], - "outbounds": [ - { - "tag": "direct", - "protocol": "freedom", - "settings": { - "domainStrategy": "ForceIPv4" - } - }, - { - "tag": "block", - "protocol": "blackhole" - } - ], - "routing": { - "rules": [ - { - "domain": [ - "geosite:category-ads", - "geosite:win-spy", - "geosite:private" - ], - "outboundTag": "block" - }, - { - "ip": [ - "geoip:private" - ], - "outboundTag": "block" - } - ] - } -} - -EOF - -# Перезапуск Xray -echo "Перезапуск Xray..." -systemctl restart xray -echo -e "Готово!\n" - -# Формирование ссылок -link1="vless://${xray_uuid_vrv}@$DOMAIN:443?security=reality&sni=$DOMAIN&fp=chrome&pbk=${xray_publicKey_vrv}&sid=${xray_shortIds_vrv}&type=tcp&flow=xtls-rprx-vision&encryption=none&spx=%2F#VPN-vless-443-self" - -link3="vless://${xray_uuid_vrv}@$DOMAIN:8443?security=reality&sni=$DOMAIN&fp=chrome&pbk=${xray_publicKey_vrv}&sid=${xray_shortIds_vrv}&type=tcp&flow=xtls-rprx-vision&encryption=none&spx=%2F#VPN-vless-8443-self" - -ENCODED_STRING=$(echo -n "chacha20-ietf-poly1305:${xray_sspasw_vrv}" | base64) -link4="ss://$ENCODED_STRING@${ipserv}:2040#VPN-ShadowS-2040" - - - -echo -e " - -Ваши VPN конфиги. Первый - самый надежный, остальные резервные! - -\033[32m$link1\033[0m - -\033[32m$link3\033[0m - -\033[32m$link4\033[0m - -Скопируйте конфиг в специализированное приложение: -- iOS: Happ или v2RayTun или FoXray -- Android: Happ или v2RayTun или v2rayNG -- Windows: Happ & v2RayTun & winLoadXRAY & Throne - -Поддержать автора: https://github.com/xVRVx/autoXRAY - -" \ No newline at end of file