From 04e2dd8513cde02ea4d40d402fd0eb01f5b1920d Mon Sep 17 00:00:00 2001 From: CodeRoK7 <58553260+CodeRoK7@users.noreply.github.com> Date: Thu, 9 Oct 2025 10:40:30 +0000 Subject: [PATCH] Fix awg warp generator --- universal_config.sh | 157 +++++++++++++++++++++++++++++---- universal_config_new_podkop.sh | 157 +++++++++++++++++++++++++++++---- 2 files changed, 284 insertions(+), 30 deletions(-) diff --git a/universal_config.sh b/universal_config.sh index 323ae36..490a1b7 100644 --- a/universal_config.sh +++ b/universal_config.sh @@ -143,6 +143,60 @@ checkPackageAndInstall() } requestConfWARP1() +{ + HASH='68747470733a2f2f73616e74612d61746d6f2e72752f776172702f776172702e706870' + COMPILE=$(printf '%b' "$(printf '%s\n' "$HASH" | sed 's/../\\x&/g')") + #запрос конфигурации WARP + local response=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" "$COMPILE" \ + -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \ + -H "referer: $COMPILE" \ + -H "Origin: $COMPILE") + echo "$response" +} + +requestConfWARP2() +{ + #запрос конфигурации WARP + local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://dulcet-fox-556b08.netlify.app/api/warp' \ + -H 'Accept: */*' \ + -H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ + -H 'Connection: keep-alive' \ + -H 'Content-Type: application/json' \ + -H 'Origin: https://dulcet-fox-556b08.netlify.app/api/warp' \ + -H 'Referer: https://dulcet-fox-556b08.netlify.app/api/warp' \ + -H 'Sec-Fetch-Dest: empty' \ + -H 'Sec-Fetch-Mode: cors' \ + -H 'Sec-Fetch-Site: same-origin' \ + -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36' \ + -H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \ + -H 'sec-ch-ua-mobile: ?0' \ + -H 'sec-ch-ua-platform: "Windows"' \ + --data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer","endpoint":"162.159.195.1:500"}') + echo "$result" +} + +requestConfWARP3() +{ + #запрос конфигурации WARP + local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-config-generator-theta.vercel.app/api/warp' \ + -H 'Accept: */*' \ + -H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ + -H 'Connection: keep-alive' \ + -H 'Content-Type: application/json' \ + -H 'Origin: https://warp-config-generator-theta.vercel.app/api/warp' \ + -H 'Referer: https://warp-config-generator-theta.vercel.app/api/warp' \ + -H 'Sec-Fetch-Dest: empty' \ + -H 'Sec-Fetch-Mode: cors' \ + -H 'Sec-Fetch-Site: same-origin' \ + -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36' \ + -H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \ + -H 'sec-ch-ua-mobile: ?0' \ + -H 'sec-ch-ua-platform: "Windows"' \ + --data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer","endpoint":"162.159.195.1:500"}') + echo "$result" +} + +requestConfWARP4() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://generator-warp-config.vercel.app/warp4s?dns=1.1.1.1%2C%201.0.0.1%2C%202606%3A4700%3A4700%3A%3A1111%2C%202606%3A4700%3A4700%3A%3A1001&allowedIPs=0.0.0.0%2F0%2C%20%3A%3A%2F0' \ @@ -152,7 +206,7 @@ requestConfWARP1() echo "$result" } -requestConfWARP2() +requestConfWARP5() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://valokda-amnezia.vercel.app/api/warp' \ @@ -163,7 +217,7 @@ requestConfWARP2() echo "$result" } -requestConfWARP3() +requestConfWARP6() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-gen.vercel.app/generate-config' \ @@ -174,7 +228,7 @@ requestConfWARP3() echo "$result" } -requestConfWARP4() +requestConfWARP7() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warps' \ @@ -185,7 +239,7 @@ requestConfWARP4() echo "$result" } -requestConfWARP5() +requestConfWARP8() { #запрос конфигурации WARP без параметров local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp6s' \ @@ -196,7 +250,7 @@ requestConfWARP5() echo "$result" } -requestConfWARP6() +requestConfWARP9() { #запрос конфигурации WARP без параметров local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp4s' \ @@ -207,7 +261,7 @@ requestConfWARP6() echo "$result" } -requestConfWARP7() +requestConfWARP10() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-generator.vercel.app/api/warp' \ @@ -220,6 +274,39 @@ requestConfWARP7() echo "$result" } +confWarpBuilder() +{ + response_body=$1 + peer_pub=$(echo "$response_body" | jq -r '.result.config.peers[0].public_key') + client_ipv4=$(echo "$response_body" | jq -r '.result.config.interface.addresses.v4') + client_ipv6=$(echo "$response_body" | jq -r '.result.config.interface.addresses.v6') + priv=$(echo "$response_body" | jq -r '.result.key') + conf=$(cat <<-EOM +[Interface] +PrivateKey = ${priv} +S1 = 0 +S2 = 0 +Jc = 120 +Jmin = 23 +Jmax = 911 +H1 = 1 +H2 = 2 +H3 = 3 +H4 = 4 +MTU = 1280 +I1 = +Address = ${client_ipv4}, ${client_ipv6} +DNS = 1.1.1.1, 2606:4700:4700::1111, 1.0.0.1, 2606:4700:4700::1001 + +[Peer] +PublicKey = ${peer_pub} +AllowedIPs = 0.0.0.0/0, ::/0 +Endpoint = 162.159.192.1:500 +EOM +) +echo "$conf" +} + # Функция для обработки выполнения запроса check_request() { local response="$1" @@ -233,19 +320,21 @@ check_request() { # Проверяем код состояния if [ "$response_code" -eq 200 ]; then case $choice in - 1) - content=$(echo $response_body | jq -r '.content') - warp_config=$(echo "$content" | base64 -d) + 1) + warp_config=$(confWarpBuilder "$response_body") echo "$warp_config" ;; 2) - content=$(echo $response_body | jq -r '.content') + content=$(echo $response_body | jq -r '.content') + content=$(echo $content | jq -r '.configBase64') warp_config=$(echo "$content" | base64 -d) echo "$warp_config" ;; 3) - content=$(echo $response_body | jq -r '.config') - echo "$content" + content=$(echo $response_body | jq -r '.content') + content=$(echo $content | jq -r '.configBase64') + warp_config=$(echo "$content" | base64 -d) + echo "$warp_config" ;; 4) content=$(echo $response_body | jq -r '.content') @@ -253,16 +342,30 @@ check_request() { echo "$warp_config" ;; 5) - content=$(echo $response_body | jq -r '.content') + content=$(echo $response_body | jq -r '.content') warp_config=$(echo "$content" | base64 -d) echo "$warp_config" ;; 6) + content=$(echo $response_body | jq -r '.config') + echo "$content" + ;; + 7) + content=$(echo $response_body | jq -r '.content') + warp_config=$(echo "$content" | base64 -d) + echo "$warp_config" + ;; + 8) + content=$(echo $response_body | jq -r '.content') + warp_config=$(echo "$content" | base64 -d) + echo "$warp_config" + ;; + 9) content=$(echo $response_body | jq -r '.content') warp_config=$(echo "$content" | base64 -d) echo "$warp_config" ;; - 7) + 10) content=$(echo $response_body | jq -r '.content') content=$(echo $content | jq -r '.configBase64') warp_config=$(echo "$content" | base64 -d) @@ -776,7 +879,31 @@ do warpGen=$(check_request "$result" 7) if [ "$warpGen" = "Error" ] then - warp_config="Error" + printf "\033[32;1mRequest WARP config... Attempt #8\033[0m\n" + result=$(requestConfWARP8) + warpGen=$(check_request "$result" 8) + if [ "$warpGen" = "Error" ] + then + printf "\033[32;1mRequest WARP config... Attempt #9\033[0m\n" + result=$(requestConfWARP9) + warpGen=$(check_request "$result" 9) + if [ "$warpGen" = "Error" ] + then + printf "\033[32;1mRequest WARP config... Attempt #10\033[0m\n" + result=$(requestConfWARP10) + warpGen=$(check_request "$result" 10) + if [ "$warpGen" = "Error" ] + then + warp_config="Error" + else + warp_config=$warpGen + fi + else + warp_config=$warpGen + fi + else + warp_config=$warpGen + fi else warp_config=$warpGen fi diff --git a/universal_config_new_podkop.sh b/universal_config_new_podkop.sh index 4d62c99..cd69114 100644 --- a/universal_config_new_podkop.sh +++ b/universal_config_new_podkop.sh @@ -156,6 +156,60 @@ checkPackageAndInstall() { } requestConfWARP1() +{ + HASH='68747470733a2f2f73616e74612d61746d6f2e72752f776172702f776172702e706870' + COMPILE=$(printf '%b' "$(printf '%s\n' "$HASH" | sed 's/../\\x&/g')") + #запрос конфигурации WARP + local response=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" "$COMPILE" \ + -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36' \ + -H "referer: $COMPILE" \ + -H "Origin: $COMPILE") + echo "$response" +} + +requestConfWARP2() +{ + #запрос конфигурации WARP + local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://dulcet-fox-556b08.netlify.app/api/warp' \ + -H 'Accept: */*' \ + -H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ + -H 'Connection: keep-alive' \ + -H 'Content-Type: application/json' \ + -H 'Origin: https://dulcet-fox-556b08.netlify.app/api/warp' \ + -H 'Referer: https://dulcet-fox-556b08.netlify.app/api/warp' \ + -H 'Sec-Fetch-Dest: empty' \ + -H 'Sec-Fetch-Mode: cors' \ + -H 'Sec-Fetch-Site: same-origin' \ + -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36' \ + -H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \ + -H 'sec-ch-ua-mobile: ?0' \ + -H 'sec-ch-ua-platform: "Windows"' \ + --data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer","endpoint":"162.159.195.1:500"}') + echo "$result" +} + +requestConfWARP3() +{ + #запрос конфигурации WARP + local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-config-generator-theta.vercel.app/api/warp' \ + -H 'Accept: */*' \ + -H 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7' \ + -H 'Connection: keep-alive' \ + -H 'Content-Type: application/json' \ + -H 'Origin: https://warp-config-generator-theta.vercel.app/api/warp' \ + -H 'Referer: https://warp-config-generator-theta.vercel.app/api/warp' \ + -H 'Sec-Fetch-Dest: empty' \ + -H 'Sec-Fetch-Mode: cors' \ + -H 'Sec-Fetch-Site: same-origin' \ + -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36' \ + -H 'sec-ch-ua: "Not(A:Brand";v="99", "Google Chrome";v="133", "Chromium";v="133")' \ + -H 'sec-ch-ua-mobile: ?0' \ + -H 'sec-ch-ua-platform: "Windows"' \ + --data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer","endpoint":"162.159.195.1:500"}') + echo "$result" +} + +requestConfWARP4() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://generator-warp-config.vercel.app/warp4s?dns=1.1.1.1%2C%201.0.0.1%2C%202606%3A4700%3A4700%3A%3A1111%2C%202606%3A4700%3A4700%3A%3A1001&allowedIPs=0.0.0.0%2F0%2C%20%3A%3A%2F0' \ @@ -165,7 +219,7 @@ requestConfWARP1() echo "$result" } -requestConfWARP2() +requestConfWARP5() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://valokda-amnezia.vercel.app/api/warp' \ @@ -176,7 +230,7 @@ requestConfWARP2() echo "$result" } -requestConfWARP3() +requestConfWARP6() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-gen.vercel.app/generate-config' \ @@ -187,7 +241,7 @@ requestConfWARP3() echo "$result" } -requestConfWARP4() +requestConfWARP7() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warps' \ @@ -198,7 +252,7 @@ requestConfWARP4() echo "$result" } -requestConfWARP5() +requestConfWARP8() { #запрос конфигурации WARP без параметров local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp6s' \ @@ -209,7 +263,7 @@ requestConfWARP5() echo "$result" } -requestConfWARP6() +requestConfWARP9() { #запрос конфигурации WARP без параметров local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp4s' \ @@ -220,7 +274,7 @@ requestConfWARP6() echo "$result" } -requestConfWARP7() +requestConfWARP10() { #запрос конфигурации WARP local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-generator.vercel.app/api/warp' \ @@ -233,6 +287,39 @@ requestConfWARP7() echo "$result" } +confWarpBuilder() +{ + response_body=$1 + peer_pub=$(echo "$response_body" | jq -r '.result.config.peers[0].public_key') + client_ipv4=$(echo "$response_body" | jq -r '.result.config.interface.addresses.v4') + client_ipv6=$(echo "$response_body" | jq -r '.result.config.interface.addresses.v6') + priv=$(echo "$response_body" | jq -r '.result.key') + conf=$(cat <<-EOM +[Interface] +PrivateKey = ${priv} +S1 = 0 +S2 = 0 +Jc = 120 +Jmin = 23 +Jmax = 911 +H1 = 1 +H2 = 2 +H3 = 3 +H4 = 4 +MTU = 1280 +I1 = +Address = ${client_ipv4}, ${client_ipv6} +DNS = 1.1.1.1, 2606:4700:4700::1111, 1.0.0.1, 2606:4700:4700::1001 + +[Peer] +PublicKey = ${peer_pub} +AllowedIPs = 0.0.0.0/0, ::/0 +Endpoint = 162.159.192.1:500 +EOM +) +echo "$conf" +} + # Функция для обработки выполнения запроса check_request() { local response="$1" @@ -246,19 +333,21 @@ check_request() { # Проверяем код состояния if [ "$response_code" -eq 200 ]; then case $choice in - 1) - content=$(echo $response_body | jq -r '.content') - warp_config=$(echo "$content" | base64 -d) + 1) + warp_config=$(confWarpBuilder "$response_body") echo "$warp_config" ;; 2) - content=$(echo $response_body | jq -r '.content') + content=$(echo $response_body | jq -r '.content') + content=$(echo $content | jq -r '.configBase64') warp_config=$(echo "$content" | base64 -d) echo "$warp_config" ;; 3) - content=$(echo $response_body | jq -r '.config') - echo "$content" + content=$(echo $response_body | jq -r '.content') + content=$(echo $content | jq -r '.configBase64') + warp_config=$(echo "$content" | base64 -d) + echo "$warp_config" ;; 4) content=$(echo $response_body | jq -r '.content') @@ -266,16 +355,30 @@ check_request() { echo "$warp_config" ;; 5) - content=$(echo $response_body | jq -r '.content') + content=$(echo $response_body | jq -r '.content') warp_config=$(echo "$content" | base64 -d) echo "$warp_config" ;; 6) + content=$(echo $response_body | jq -r '.config') + echo "$content" + ;; + 7) + content=$(echo $response_body | jq -r '.content') + warp_config=$(echo "$content" | base64 -d) + echo "$warp_config" + ;; + 8) + content=$(echo $response_body | jq -r '.content') + warp_config=$(echo "$content" | base64 -d) + echo "$warp_config" + ;; + 9) content=$(echo $response_body | jq -r '.content') warp_config=$(echo "$content" | base64 -d) echo "$warp_config" ;; - 7) + 10) content=$(echo $response_body | jq -r '.content') content=$(echo $content | jq -r '.configBase64') warp_config=$(echo "$content" | base64 -d) @@ -798,7 +901,31 @@ do warpGen=$(check_request "$result" 7) if [ "$warpGen" = "Error" ] then - warp_config="Error" + printf "\033[32;1mRequest WARP config... Attempt #8\033[0m\n" + result=$(requestConfWARP8) + warpGen=$(check_request "$result" 8) + if [ "$warpGen" = "Error" ] + then + printf "\033[32;1mRequest WARP config... Attempt #9\033[0m\n" + result=$(requestConfWARP9) + warpGen=$(check_request "$result" 9) + if [ "$warpGen" = "Error" ] + then + printf "\033[32;1mRequest WARP config... Attempt #10\033[0m\n" + result=$(requestConfWARP10) + warpGen=$(check_request "$result" 10) + if [ "$warpGen" = "Error" ] + then + warp_config="Error" + else + warp_config=$warpGen + fi + else + warp_config=$warpGen + fi + else + warp_config=$warpGen + fi else warp_config=$warpGen fi