mirror of
https://github.com/routerich/RouterichAX3000_configs.git
synced 2025-12-29 18:28:07 +03:00
Compare commits
16 Commits
zapret2712
...
beta_zapre
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
97f18fda43 | ||
|
|
136bd7803b | ||
|
|
07c00ae4ee | ||
|
|
32ea5401c4 | ||
|
|
56881ba8f3 | ||
|
|
d51677e008 | ||
|
|
f834a8ddab | ||
|
|
59cf6f74b0 | ||
|
|
1a0b0365e2 | ||
|
|
b86bd2a1d0 | ||
|
|
32e747b7b9 | ||
|
|
b8e3b09ad9 | ||
|
|
1f150b93df | ||
|
|
a8bc5471e1 | ||
|
|
f337b761e0 | ||
|
|
1ae55c1c81 |
@@ -3,7 +3,7 @@
|
||||
# NOTE: @ih requires nft 1.0.1+ and updated kernel version. it's confirmed to work on 5.15 (openwrt 23) and not work on 5.10 (openwrt 22)
|
||||
|
||||
# can override in config :
|
||||
NFQWS_OPT_DESYNC_WG="${NFQWS_OPT_DESYNC_WG:---dpi-desync=fake --dpi-desync-repeats=2}"
|
||||
NFQWS_OPT_DESYNC_WG="${NFQWS_OPT_DESYNC_WG:---dpi-desync=fake --dpi-desync-fake-wireguard=/opt/zapret/files/fake/quic_initial_vk_com.bin --dpi-desync-repeats=5}"
|
||||
|
||||
alloc_dnum DNUM_WG4ALL
|
||||
alloc_qnum QNUM_WG4ALL
|
||||
|
||||
@@ -34,12 +34,10 @@ config main 'config'
|
||||
--dpi-desync-autottl=2
|
||||
--dpi-desync-fooling=badsum
|
||||
--new
|
||||
--filter-tcp=443 --hostlist=/opt/zapret/ipset/zapret-hosts-google.txt
|
||||
--dpi-desync=fake,multidisorder
|
||||
--filter-tcp=443
|
||||
--hostlist=/opt/zapret/ipset/zapret-hosts-google.txt
|
||||
--dpi-desync=multidisorder
|
||||
--dpi-desync-split-pos=1,midsld
|
||||
--dpi-desync-repeats=11
|
||||
--dpi-desync-fooling=badsum
|
||||
--dpi-desync-fake-tls-mod=rnd,dupsid,sni=www.google.com
|
||||
--new
|
||||
--filter-udp=443 --hostlist=/opt/zapret/ipset/zapret-hosts-google.txt
|
||||
--dpi-desync=fake
|
||||
|
||||
@@ -144,80 +144,167 @@ checkPackageAndInstall()
|
||||
|
||||
requestConfWARP1()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp.llimonix.pw/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.llimonix.pw' \
|
||||
-H 'Referer: https://warp.llimonix.pw/' \
|
||||
-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/133.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"}')
|
||||
echo "$result"
|
||||
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://topor-warp.vercel.app/generate' \
|
||||
-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://topor-warp.vercel.app' \
|
||||
-H 'Referer: https://topor-warp.vercel.app/' \
|
||||
-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/133.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 '{"platform":"all"}')
|
||||
echo "$result"
|
||||
#запрос конфигурации 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-gen.vercel.app/generate-config' \
|
||||
-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 'Referer: https://warp-gen.vercel.app/' \
|
||||
-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/133.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"')
|
||||
echo "$result"
|
||||
#запрос конфигурации 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://config-generator-warp.vercel.app/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 'Referer: https://config-generator-warp.vercel.app/' \
|
||||
-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/133.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"')
|
||||
echo "$result"
|
||||
#запрос конфигурации 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' \
|
||||
-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: https://generator-warp-config.vercel.app' \
|
||||
-H "Origin: https://generator-warp-config.vercel.app")
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP5()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://valokda-amnezia.vercel.app/api/warp' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://valokda-amnezia.vercel.app/api/warp')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP6()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-gen.vercel.app/generate-config' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://warp-gen.vercel.app/generate-config')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP7()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warps' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://config-generator-warp.vercel.app/')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP8()
|
||||
{
|
||||
#запрос конфигурации WARP без параметров
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp6s' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://config-generator-warp.vercel.app/')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP9()
|
||||
{
|
||||
#запрос конфигурации WARP без параметров
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp4s' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://config-generator-warp.vercel.app/')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP10()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-generator.vercel.app/api/warp' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.6' \
|
||||
-H 'content-type: application/json' \
|
||||
-H 'referer: https://warp-generator.vercel.app/' \
|
||||
--data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer"}')
|
||||
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 = <b 0xc2000000011419fa4bb3599f336777de79f81ca9a8d80d91eeec000044c635cef024a885dcb66d1420a91a8c427e87d6cf8e08b563932f449412cddf77d3e2594ea1c7a183c238a89e9adb7ffa57c133e55c59bec101634db90afb83f75b19fe703179e26a31902324c73f82d9354e1ed8da39af610afcb27e6590a44341a0828e5a3d2f0e0f7b0945d7bf3402feea0ee6332e19bdf48ffc387a97227aa97b205a485d282cd66d1c384bafd63dc42f822c4df2109db5b5646c458236ddcc01ae1c493482128bc0830c9e1233f0027a0d262f92b49d9d8abd9a9e0341f6e1214761043c021d7aa8c464b9d865f5fbe234e49626e00712031703a3e23ef82975f014ee1e1dc428521dc23ce7c6c13663b19906240b3efe403cf30559d798871557e4e60e86c29ea4504ed4d9bb8b549d0e8acd6c334c39bb8fb42ede68fb2aadf00cfc8bcc12df03602bbd4fe701d64a39f7ced112951a83b1dbbe6cd696dd3f15985c1b9fef72fa8d0319708b633cc4681910843ce753fac596ed9945d8b839aeff8d3bf0449197bd0bb22ab8efd5d63eb4a95db8d3ffc796ed5bcf2f4a136a8a36c7a0c65270d511aebac733e61d414050088a1c3d868fb52bc7e57d3d9fd132d78b740a6ecdc6c24936e92c28672dbe00928d89b891865f885aeb4c4996d50c2bbbb7a99ab5de02ac89b3308e57bcecf13f2da0333d1420e18b66b4c23d625d836b538fc0c221d6bd7f566a31fa292b85be96041d8e0bfe655d5dc1afed23eb8f2b3446561bbee7644325cc98d31cea38b865bdcc507e48c6ebdc7553be7bd6ab963d5a14615c4b81da7081c127c791224853e2d19bafdc0d9f3f3a6de898d14abb0e2bc849917e0a599ed4a541268ad0e60ea4d147dc33d17fa82f22aa505ccb53803a31d10a7ca2fea0b290a52ee92c7bf4aab7cea4e3c07b1989364eed87a3c6ba65188cd349d37ce4eefde9ec43bab4b4dc79e03469c2ad6b902e28e0bbbbf696781ad4edf424ffb35ce0236d373629008f142d04b5e08a124237e03e3149f4cdde92d7fae581a1ac332e26b2c9c1a6bdec5b3a9c7a2a870f7a0c25fc6ce245e029b686e346c6d862ad8df6d9b62474fbc31dbb914711f78074d4441f4e6e9edca3c52315a5c0653856e23f681558d669f4a4e6915bcf42b56ce36cb7dd3983b0b1d6fdf0f8efddb68e7ca0ae9dd4570fe6978fbb524109f6ec957ca61f1767ef74eb803b0f16abd0087cf2d01bc1db1c01d97ac81b3196c934586963fe7cf2d310e0739621e8bd00dc23fded18576d8c8f285d7bb5f43b547af3c76235de8b6f757f817683b2151600b11721219212bf27558edd439e73fce951f61d582320e5f4d6c315c71129b719277fc144bbe8ded25ab6d29b6e189c9bd9b16538faf60cc2aab3c3bb81fc2213657f2dd0ceb9b3b871e1423d8d3e8cc008721ef03b28e0ee7bb66b8f2a2ac01ef88df1f21ed49bf1ce435df31ac34485936172567488812429c269b49ee9e3d99652b51a7a614b7c460bf0d2d64d8349ded7345bedab1ea0a766a8470b1242f38d09f7855a32db39516c2bd4bcc538c52fa3a90c8714d4b006a15d9c7a7d04919a1cab48da7cce0d5de1f9e5f8936cffe469132991c6eb84c5191d1bcf69f70c58d9a7b66846440a9f0eef25ee6ab62715b50ca7bef0bc3013d4b62e1639b5028bdf757454356e9326a4c76dabfb497d451a3a1d2dbd46ec283d255799f72dfe878ae25892e25a2542d3ca9018394d8ca35b53ccd94947a8>
|
||||
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"
|
||||
}
|
||||
|
||||
# Функция для обработки выполнения запроса
|
||||
@@ -233,31 +320,56 @@ check_request() {
|
||||
# Проверяем код состояния
|
||||
if [ "$response_code" -eq 200 ]; then
|
||||
case $choice in
|
||||
1)
|
||||
status=$(echo $response_body | jq '.success')
|
||||
#echo "$status"
|
||||
if [ "$status" = "true" ]
|
||||
then
|
||||
content=$(echo $response_body | jq '.content')
|
||||
configBase64=$(echo $content | jq -r '.configBase64')
|
||||
warpGen=$(echo "$configBase64" | base64 -d)
|
||||
echo "$warpGen";
|
||||
else
|
||||
echo "Error"
|
||||
fi
|
||||
1)
|
||||
warp_config=$(confWarpBuilder "$response_body")
|
||||
echo "$warp_config"
|
||||
;;
|
||||
2)
|
||||
echo "$response_body"
|
||||
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')
|
||||
#content=$(echo "$content" | sed 's/\\n/\012/g')
|
||||
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')
|
||||
warp_config=$(echo "$content" | base64 -d)
|
||||
echo "$warp_config"
|
||||
;;
|
||||
5)
|
||||
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"
|
||||
;;
|
||||
10)
|
||||
content=$(echo $response_body | jq -r '.content')
|
||||
content=$(echo $content | jq -r '.configBase64')
|
||||
warp_config=$(echo "$content" | base64 -d)
|
||||
echo "$warp_config"
|
||||
;;
|
||||
*)
|
||||
echo "Error"
|
||||
@@ -752,7 +864,55 @@ do
|
||||
warpGen=$(check_request "$result" 4)
|
||||
if [ "$warpGen" = "Error" ]
|
||||
then
|
||||
warp_config="Error"
|
||||
printf "\033[32;1mRequest WARP config... Attempt #5\033[0m\n"
|
||||
result=$(requestConfWARP5)
|
||||
warpGen=$(check_request "$result" 5)
|
||||
if [ "$warpGen" = "Error" ]
|
||||
then
|
||||
printf "\033[32;1mRequest WARP config... Attempt #6\033[0m\n"
|
||||
result=$(requestConfWARP6)
|
||||
warpGen=$(check_request "$result" 6)
|
||||
if [ "$warpGen" = "Error" ]
|
||||
then
|
||||
printf "\033[32;1mRequest WARP config... Attempt #7\033[0m\n"
|
||||
result=$(requestConfWARP7)
|
||||
warpGen=$(check_request "$result" 7)
|
||||
if [ "$warpGen" = "Error" ]
|
||||
then
|
||||
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
|
||||
else
|
||||
warp_config=$warpGen
|
||||
fi
|
||||
else
|
||||
warp_config=$warpGen
|
||||
fi
|
||||
else
|
||||
warp_config=$warpGen
|
||||
fi
|
||||
@@ -883,19 +1043,49 @@ do
|
||||
#service firewall restart
|
||||
#service network restart
|
||||
|
||||
# Отключаем интерфейс
|
||||
ifdown $INTERFACE_NAME
|
||||
# Включаем интерфейс
|
||||
ifup $INTERFACE_NAME
|
||||
printf "\033[32;1mWait up AWG WARP 10 second...\033[0m\n"
|
||||
sleep 10
|
||||
|
||||
pingAddress="8.8.8.8"
|
||||
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
|
||||
then
|
||||
isExit=1
|
||||
if [ "$is_manual_input_parameters" = "n" ]; then
|
||||
I=0
|
||||
WARP_ENDPOINT="engage.cloudflareclient.com:500 engage.cloudflareclient.com:1701 engage.cloudflareclient.com:2408 engage.cloudflareclient.com:3138 engage.cloudflareclient.com:4500 162.159.192.4:500 162.159.192.4:1701 162.159.192.4:2408 162.159.192.4:3138 162.159.192.4:4500"
|
||||
for element in $WARP_ENDPOINT; do
|
||||
I=$(( $I + 1 ))
|
||||
EndpointIP="${element%%:*}"
|
||||
EndpointPort="${element##*:}"
|
||||
uci set network.@${CONFIG_NAME}[-1].endpoint_host=$EndpointIP
|
||||
uci set network.@${CONFIG_NAME}[-1].endpoint_port=$EndpointPort
|
||||
uci commit network
|
||||
# Отключаем интерфейс
|
||||
ifdown $INTERFACE_NAME
|
||||
# Включаем интерфейс
|
||||
ifup $INTERFACE_NAME
|
||||
printf "\033[33;1mIter #$I: Check Endpoint WARP $element. Wait up AWG WARP 10 second...\033[0m\n"
|
||||
sleep 10
|
||||
|
||||
pingAddress="8.8.8.8"
|
||||
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
|
||||
then
|
||||
printf "\033[32;1m Endpoint WARP $element work...\033[0m\n"
|
||||
isExit=1
|
||||
break
|
||||
else
|
||||
printf "\033[31;1m Endpoint WARP $element not work...\033[0m\n"
|
||||
isExit=0
|
||||
fi
|
||||
done
|
||||
else
|
||||
isExit=0
|
||||
# Отключаем интерфейс
|
||||
ifdown $INTERFACE_NAME
|
||||
# Включаем интерфейс
|
||||
ifup $INTERFACE_NAME
|
||||
printf "\033[32;1mWait up AWG WARP 10 second...\033[0m\n"
|
||||
sleep 10
|
||||
|
||||
pingAddress="8.8.8.8"
|
||||
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
|
||||
then
|
||||
isExit=1
|
||||
else
|
||||
isExit=0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
@@ -157,80 +157,167 @@ checkPackageAndInstall() {
|
||||
|
||||
requestConfWARP1()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp.llimonix.pw/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.llimonix.pw' \
|
||||
-H 'Referer: https://warp.llimonix.pw/' \
|
||||
-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/133.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"}')
|
||||
echo "$result"
|
||||
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://topor-warp.vercel.app/generate' \
|
||||
-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://topor-warp.vercel.app' \
|
||||
-H 'Referer: https://topor-warp.vercel.app/' \
|
||||
-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/133.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 '{"platform":"all"}')
|
||||
echo "$result"
|
||||
#запрос конфигурации 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-gen.vercel.app/generate-config' \
|
||||
-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 'Referer: https://warp-gen.vercel.app/' \
|
||||
-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/133.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"')
|
||||
echo "$result"
|
||||
#запрос конфигурации 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://config-generator-warp.vercel.app/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 'Referer: https://config-generator-warp.vercel.app/' \
|
||||
-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/133.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"')
|
||||
echo "$result"
|
||||
#запрос конфигурации 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' \
|
||||
-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: https://generator-warp-config.vercel.app' \
|
||||
-H "Origin: https://generator-warp-config.vercel.app")
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP5()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://valokda-amnezia.vercel.app/api/warp' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://valokda-amnezia.vercel.app/api/warp')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP6()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-gen.vercel.app/generate-config' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://warp-gen.vercel.app/generate-config')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP7()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warps' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://config-generator-warp.vercel.app/')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP8()
|
||||
{
|
||||
#запрос конфигурации WARP без параметров
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp6s' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://config-generator-warp.vercel.app/')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP9()
|
||||
{
|
||||
#запрос конфигурации WARP без параметров
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://config-generator-warp.vercel.app/warp4s' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.9' \
|
||||
-H 'referer: https://config-generator-warp.vercel.app/')
|
||||
echo "$result"
|
||||
}
|
||||
|
||||
requestConfWARP10()
|
||||
{
|
||||
#запрос конфигурации WARP
|
||||
local result=$(curl --connect-timeout 20 --max-time 60 -w "%{http_code}" 'https://warp-generator.vercel.app/api/warp' \
|
||||
-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 'accept: */*' \
|
||||
-H 'accept-language: ru-RU,ru;q=0.6' \
|
||||
-H 'content-type: application/json' \
|
||||
-H 'referer: https://warp-generator.vercel.app/' \
|
||||
--data-raw '{"selectedServices":[],"siteMode":"all","deviceType":"computer"}')
|
||||
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 = <b 0xc2000000011419fa4bb3599f336777de79f81ca9a8d80d91eeec000044c635cef024a885dcb66d1420a91a8c427e87d6cf8e08b563932f449412cddf77d3e2594ea1c7a183c238a89e9adb7ffa57c133e55c59bec101634db90afb83f75b19fe703179e26a31902324c73f82d9354e1ed8da39af610afcb27e6590a44341a0828e5a3d2f0e0f7b0945d7bf3402feea0ee6332e19bdf48ffc387a97227aa97b205a485d282cd66d1c384bafd63dc42f822c4df2109db5b5646c458236ddcc01ae1c493482128bc0830c9e1233f0027a0d262f92b49d9d8abd9a9e0341f6e1214761043c021d7aa8c464b9d865f5fbe234e49626e00712031703a3e23ef82975f014ee1e1dc428521dc23ce7c6c13663b19906240b3efe403cf30559d798871557e4e60e86c29ea4504ed4d9bb8b549d0e8acd6c334c39bb8fb42ede68fb2aadf00cfc8bcc12df03602bbd4fe701d64a39f7ced112951a83b1dbbe6cd696dd3f15985c1b9fef72fa8d0319708b633cc4681910843ce753fac596ed9945d8b839aeff8d3bf0449197bd0bb22ab8efd5d63eb4a95db8d3ffc796ed5bcf2f4a136a8a36c7a0c65270d511aebac733e61d414050088a1c3d868fb52bc7e57d3d9fd132d78b740a6ecdc6c24936e92c28672dbe00928d89b891865f885aeb4c4996d50c2bbbb7a99ab5de02ac89b3308e57bcecf13f2da0333d1420e18b66b4c23d625d836b538fc0c221d6bd7f566a31fa292b85be96041d8e0bfe655d5dc1afed23eb8f2b3446561bbee7644325cc98d31cea38b865bdcc507e48c6ebdc7553be7bd6ab963d5a14615c4b81da7081c127c791224853e2d19bafdc0d9f3f3a6de898d14abb0e2bc849917e0a599ed4a541268ad0e60ea4d147dc33d17fa82f22aa505ccb53803a31d10a7ca2fea0b290a52ee92c7bf4aab7cea4e3c07b1989364eed87a3c6ba65188cd349d37ce4eefde9ec43bab4b4dc79e03469c2ad6b902e28e0bbbbf696781ad4edf424ffb35ce0236d373629008f142d04b5e08a124237e03e3149f4cdde92d7fae581a1ac332e26b2c9c1a6bdec5b3a9c7a2a870f7a0c25fc6ce245e029b686e346c6d862ad8df6d9b62474fbc31dbb914711f78074d4441f4e6e9edca3c52315a5c0653856e23f681558d669f4a4e6915bcf42b56ce36cb7dd3983b0b1d6fdf0f8efddb68e7ca0ae9dd4570fe6978fbb524109f6ec957ca61f1767ef74eb803b0f16abd0087cf2d01bc1db1c01d97ac81b3196c934586963fe7cf2d310e0739621e8bd00dc23fded18576d8c8f285d7bb5f43b547af3c76235de8b6f757f817683b2151600b11721219212bf27558edd439e73fce951f61d582320e5f4d6c315c71129b719277fc144bbe8ded25ab6d29b6e189c9bd9b16538faf60cc2aab3c3bb81fc2213657f2dd0ceb9b3b871e1423d8d3e8cc008721ef03b28e0ee7bb66b8f2a2ac01ef88df1f21ed49bf1ce435df31ac34485936172567488812429c269b49ee9e3d99652b51a7a614b7c460bf0d2d64d8349ded7345bedab1ea0a766a8470b1242f38d09f7855a32db39516c2bd4bcc538c52fa3a90c8714d4b006a15d9c7a7d04919a1cab48da7cce0d5de1f9e5f8936cffe469132991c6eb84c5191d1bcf69f70c58d9a7b66846440a9f0eef25ee6ab62715b50ca7bef0bc3013d4b62e1639b5028bdf757454356e9326a4c76dabfb497d451a3a1d2dbd46ec283d255799f72dfe878ae25892e25a2542d3ca9018394d8ca35b53ccd94947a8>
|
||||
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"
|
||||
}
|
||||
|
||||
# Функция для обработки выполнения запроса
|
||||
@@ -246,31 +333,56 @@ check_request() {
|
||||
# Проверяем код состояния
|
||||
if [ "$response_code" -eq 200 ]; then
|
||||
case $choice in
|
||||
1)
|
||||
status=$(echo $response_body | jq '.success')
|
||||
#echo "$status"
|
||||
if [ "$status" = "true" ]
|
||||
then
|
||||
content=$(echo $response_body | jq '.content')
|
||||
configBase64=$(echo $content | jq -r '.configBase64')
|
||||
warpGen=$(echo "$configBase64" | base64 -d)
|
||||
echo "$warpGen";
|
||||
else
|
||||
echo "Error"
|
||||
fi
|
||||
1)
|
||||
warp_config=$(confWarpBuilder "$response_body")
|
||||
echo "$warp_config"
|
||||
;;
|
||||
2)
|
||||
echo "$response_body"
|
||||
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')
|
||||
#content=$(echo "$content" | sed 's/\\n/\012/g')
|
||||
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')
|
||||
warp_config=$(echo "$content" | base64 -d)
|
||||
echo "$warp_config"
|
||||
;;
|
||||
5)
|
||||
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"
|
||||
;;
|
||||
10)
|
||||
content=$(echo $response_body | jq -r '.content')
|
||||
content=$(echo $content | jq -r '.configBase64')
|
||||
warp_config=$(echo "$content" | base64 -d)
|
||||
echo "$warp_config"
|
||||
;;
|
||||
*)
|
||||
echo "Error"
|
||||
@@ -564,6 +676,14 @@ else
|
||||
[ -f /etc/config/dhcp-opkg ] && cp /etc/config/dhcp /etc/config/dhcp-old && mv /etc/config/dhcp-opkg /etc/config/dhcp
|
||||
fi
|
||||
|
||||
#проверяем установлени ли пакет https-dns-proxy
|
||||
if opkg list-installed | grep -q https-dns-proxy; then
|
||||
echo "Packet https-dns-proxy not installed..."
|
||||
else
|
||||
echo "Delete packet https-dns-proxy..."
|
||||
opkg remove https-dns-proxy
|
||||
fi
|
||||
|
||||
printf "Setting confdir dnsmasq\n"
|
||||
uci set dhcp.@dnsmasq[0].confdir='/tmp/dnsmasq.d'
|
||||
uci commit dhcp
|
||||
@@ -801,7 +921,55 @@ do
|
||||
warpGen=$(check_request "$result" 4)
|
||||
if [ "$warpGen" = "Error" ]
|
||||
then
|
||||
warp_config="Error"
|
||||
printf "\033[32;1mRequest WARP config... Attempt #5\033[0m\n"
|
||||
result=$(requestConfWARP5)
|
||||
warpGen=$(check_request "$result" 5)
|
||||
if [ "$warpGen" = "Error" ]
|
||||
then
|
||||
printf "\033[32;1mRequest WARP config... Attempt #6\033[0m\n"
|
||||
result=$(requestConfWARP6)
|
||||
warpGen=$(check_request "$result" 6)
|
||||
if [ "$warpGen" = "Error" ]
|
||||
then
|
||||
printf "\033[32;1mRequest WARP config... Attempt #7\033[0m\n"
|
||||
result=$(requestConfWARP7)
|
||||
warpGen=$(check_request "$result" 7)
|
||||
if [ "$warpGen" = "Error" ]
|
||||
then
|
||||
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
|
||||
else
|
||||
warp_config=$warpGen
|
||||
fi
|
||||
else
|
||||
warp_config=$warpGen
|
||||
fi
|
||||
else
|
||||
warp_config=$warpGen
|
||||
fi
|
||||
@@ -932,19 +1100,49 @@ do
|
||||
#service firewall restart
|
||||
#service network restart
|
||||
|
||||
# Отключаем интерфейс
|
||||
ifdown $INTERFACE_NAME
|
||||
# Включаем интерфейс
|
||||
ifup $INTERFACE_NAME
|
||||
printf "\033[32;1mWait up AWG WARP 10 second...\033[0m\n"
|
||||
sleep 10
|
||||
|
||||
pingAddress="8.8.8.8"
|
||||
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
|
||||
then
|
||||
isExit=1
|
||||
if [ "$is_manual_input_parameters" = "n" ]; then
|
||||
I=0
|
||||
WARP_ENDPOINT="engage.cloudflareclient.com:500 engage.cloudflareclient.com:1701 engage.cloudflareclient.com:2408 engage.cloudflareclient.com:3138 engage.cloudflareclient.com:4500 162.159.192.4:500 162.159.192.4:1701 162.159.192.4:2408 162.159.192.4:3138 162.159.192.4:4500"
|
||||
for element in $WARP_ENDPOINT; do
|
||||
I=$(( $I + 1 ))
|
||||
EndpointIP="${element%%:*}"
|
||||
EndpointPort="${element##*:}"
|
||||
uci set network.@${CONFIG_NAME}[-1].endpoint_host=$EndpointIP
|
||||
uci set network.@${CONFIG_NAME}[-1].endpoint_port=$EndpointPort
|
||||
uci commit network
|
||||
# Отключаем интерфейс
|
||||
ifdown $INTERFACE_NAME
|
||||
# Включаем интерфейс
|
||||
ifup $INTERFACE_NAME
|
||||
printf "\033[33;1mIter #$I: Check Endpoint WARP $element. Wait up AWG WARP 10 second...\033[0m\n"
|
||||
sleep 10
|
||||
|
||||
pingAddress="8.8.8.8"
|
||||
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
|
||||
then
|
||||
printf "\033[32;1m Endpoint WARP $element work...\033[0m\n"
|
||||
isExit=1
|
||||
break
|
||||
else
|
||||
printf "\033[31;1m Endpoint WARP $element not work...\033[0m\n"
|
||||
isExit=0
|
||||
fi
|
||||
done
|
||||
else
|
||||
isExit=0
|
||||
# Отключаем интерфейс
|
||||
ifdown $INTERFACE_NAME
|
||||
# Включаем интерфейс
|
||||
ifup $INTERFACE_NAME
|
||||
printf "\033[32;1mWait up AWG WARP 10 second...\033[0m\n"
|
||||
sleep 10
|
||||
|
||||
pingAddress="8.8.8.8"
|
||||
if ping -c 1 -I $INTERFACE_NAME $pingAddress >/dev/null 2>&1
|
||||
then
|
||||
isExit=1
|
||||
else
|
||||
isExit=0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
Reference in New Issue
Block a user