v2ray+chk_FastlyCDN_U18


SUBMITTED BY: repremaq09

DATE: Aug. 23, 2023, 9:18 p.m.

UPDATED: Oct. 12, 2024, 2:53 p.m.

FORMAT: Text only

SIZE: 12.6 kB

HITS: 7413

  1. -Usar quando Front cair! Atentar ao fato de que a CDN queima IP, por isso a VPS tem que estar em uma plataforma, e prover servicos, que possam ter as VPS destruidas para renovacao de IP.
  2. -v2ray VPS need be install WO IPV6, with 1.1.1.1/32 CIDIR ip to invalid update on this. After this, change to MANUAL NETPLAN scheme. See FTP paste! This /32 install model, already will creat an default structures NETPLAN .yaml. Simply see Vultr 'our networking configuration tips' and paste this shit xD
  3. -CAUTION TO RESTART VPS! AWAYS stop script, stop v2ray(on v2ray cmd) and set again passwd! this shit is constantly fuckng root password(add this UNCHAGE to some script)! Remember to ban BTT on v2ray app!
  4. - To ANY IO error on app during conection. VeriFY CDN! This shit block acc with so much conections errors...
  5. -Rebooting this VPS can cause fuck(ATT ON PASSWD LOOP ALSO!) to networking. Cuz v2ray depends on DNS, n wrong restart this shit fuck the DNS sys on vps :P
  6. -/\So much accessess on same link can fuck this shit traffic out. /\ but is value try remove shitted UUID and create anothe OR restart service with 'v2ray' command. for that dont need to reinstall this(create another dont changeable! path and erasing UUIDs).
  7. BEGIN
  8. --------------------------------------
  9. mediafire.com/file/pz93ofnhbw1c0gs/METODO_V2RAY_%2528FOGO_NO_PARQUINHO%2529.zip/file
  10. Fastly so da 50usd free(+-250gb)... ai tem q ir fazendo conta
  11. https://manage.fastly.com/auth/sign-in
  12. Cria CNAME e aponta esse link j.sni.global.fastly.net ... depois que seta o script la e os carai, muda pra -> landing.filestack.com
  13. -Scriptage deve comecar apos a configuracao da distribuicao do CDN(ja na parte do "Check Cache")
  14. -Fazer o procedimento de ate a metade do video ;).
  15. SCRIPTING
  16. --------------------------------------
  17. -Por junto qualquer WebS/S80 que seja de payload versatil(aquelas que podem ser alteradas sem trocar IP c vendor). Ex.: TIM DAT.EXP. & VIVO WebSS80/80
  18. -Usar SCRIPT SOMENTE pra configurar[1][2][4], adicionar[5] e consultar dias[7].
  19. -Consultar UUID[7] para apagar user através da chave no /etc/v2ray/config.json e dar restart v2ray(nao precisa apagar do script, pode por varios user igual la xD).
  20. - esse file tb faz o BACKUP dos user la do block /\
  21. - cheaterEmail.sh filtra log para que seja mostrado a "quantidade de IPs" conectadas à 1 'email'. e vai expor o primeiro 'email' que possui mais de um IP. e armazenar ele no file ./emailprefix
  22. - getUUID.sh imprime o id associado a esse email(do emailprefix), oriundos do /etc/v2ray/config.json. E, esse mesmo script tambem pode zerar e reiniciar o v2ray, caso altere algum UUID.
  23. A operacao do conjunto consiste em verificar o `mail` que tem mais de uma conexao simultanea(cheaterEmail.sh), injeta-la no ./emailprefix, e, depois que o email estiver formatado nesse ./emailprefix(1 mail so), lanca getUUID.sh pra pegar o UUID do email que ta la dento
  24. *Loop do script rodara de 1 em 1m. pois o resultado é o null do UUID, "bloqueando" o acesso do usuario.
  25. /var/log/v2ray/acesss.log shows live user logon by e-mail and (xxx).(xxx).(xxx).xxx set lines. ao qual qualque (xxx) é diferente na medida em que é outro device entra com mesmo e-mail user E em rede/antena mais distante, portanto se ler access.log e identificar entradas do mesmo e-mail mas com (xxx) diferente, significa que outro device esta logando com o mesmo e-mail/UUID.
  26. CDN Lbspybot94))))0
  27. --------------------------------------
  28. CF domínio tipo A com IP da vps
  29. Proxy das operadoras
  30. TIM EXPIRADO = js-agent.newrelic.com
  31. CLARO = westcoastkids.ca
  32. VIVO = 151.101.2.133
  33. landing.filestack.com
  34. 146.75.122.133
  35. SNI -> landing.filestack.com
  36. Vcl da cdn
  37. if (req.http.Upgrade) {
  38. return (upgrade);
  39. }
  40. BACKUPING/Ciclo da CDN
  41. -------------------------------------------
  42. Its made by Saving n transplanting transplanting the /etc/v2ray/config.json big user(only) block to the new generated config.json(new path and domain), n restart v2ray service. After that its necessary to instruct all clients(and revs) to change Path and Domain in their NapsternetV v2ray config ;)
  43. ---------------------------------
  44. CODE
  45. -----------------------
  46. ############# SUBTRATOR DE DIAS EM SCRIPT/TXT BACKUP ##############
  47. ########### ESSE SUBTRATOR IMPRIME A SUBTRACAO ############
  48. cat ./v2BackupPipeSubtrator.sh
  49. #!/bin/bash
  50. # Loop para processar cada linha da entrada
  51. while IFS= read -r linha; do
  52. valor_coluna1=$(echo "$linha" | awk '{print $1}')
  53. valor_colchetes=$(echo "$linha" | awk -F'[][]' '{print $2}')
  54. novo_valor_colchetes=$((valor_colchetes - 1))
  55. linha_modificada=$(echo "$linha" | sed "s/\[$valor_colchetes\]/\[$novo_valor_colchetes\]/")
  56. echo "$linha_modificada"
  57. done
  58. ########### ESSE SUBTRATOR MUDA O FILE ./v2Back_n_IPTV COM SUBTRACAO ############
  59. cat pipeSubtrator.sh
  60. #!/bin/bash
  61. # Nome do arquivo de entrada
  62. arquivo_origem="./v2Back_n_IPTV"
  63. # Nome do arquivo temporário
  64. arquivo_temporario="temp.txt"
  65. # Loop para processar cada linha do arquivo de origem
  66. while IFS= read -r linha; do
  67. valor_coluna1=$(echo "$linha" | awk '{print $1}')
  68. valor_colchetes=$(echo "$linha" | awk -F'[][]' '{print $2}')
  69. novo_valor_colchetes=$((valor_colchetes - 1))
  70. linha_modificada=$(echo "$linha" | sed "s/\[$valor_colchetes\]/\[$novo_valor_colchetes\]/")
  71. echo "$linha_modificada"
  72. done < "$arquivo_origem" > "$arquivo_temporario"
  73. # Substituir o arquivo de origem pelo arquivo temporário
  74. mv "$arquivo_temporario" "$arquivo_origem"
  75. ########### RELOGIO QUE SE INJETA NO ./scriptGet.sh ############
  76. #!/bin/bash
  77. # Obtém a hora atual no formato HH:MM
  78. hora_atual=$(date +%H:%M)
  79. # Verifica se a hora atual é 01:00
  80. if [ "$hora_atual" == "01:00" ]; then
  81. # Coloque os comandos que você deseja executar aqui
  82. echo "A hora atual é 01:00 AM. Execute os comandos desejados aqui."
  83. cat v2Back_n_IPTV | ./pipeSubtrator.sh
  84. else
  85. echo "A hora atual não é 01:00 AM. Nenhum comando será executado."
  86. fi
  87. ############# WPANEL _V2 USER LOOKUP/EXCLUSING OPERATION CRIPTING ##############
  88. -Deixar criado um `./v2List.sh>./v2snap` em tempo de outrora. Pra em tempo presente criar o `./v2List.sh>./v2snap2` e usar ./v2SnapCheck.sh pra ver os q tinha em outrora q n tem mais xD
  89. -------------- LISTA '_V2' USERS IN WPANEL --------------
  90. cat v2List.sh
  91. #!/bin/bash
  92. # Defina o caminho para o arquivo /etc/passwd
  93. passwd_file="/etc/passwd"
  94. # Inicialize uma variável para contar os usuários
  95. count=0
  96. # Use um loop while para ler cada linha do arquivo /etc/passwd
  97. while IFS= read -r line; do
  98. username=$(echo "$line" | cut -d: -f1)
  99. if [[ "$username" == *_v2 ]]; then
  100. echo "$username"
  101. chage -l "$username" | grep "Account expires" | cut -d: -f2- | sed 's/^[[:space:]]*//'
  102. ((count++))
  103. fi
  104. done < "$passwd_file"
  105. # Imprima o número total de usuários encontrados
  106. echo "Número total de usuários que terminam em '_v2': $count"
  107. -------------- ANALIZA ./v2snap E ./v2snap2 PRA VER QUAIS ESTAO EM 1 E N EM 2 --------------
  108. ** Ou seja, os que os rev apagaram desde a criacao do v2snap.
  109. ** Antes de executar tem que criar o v2snap2 ;)
  110. cat v2SnapCheck.sh
  111. #!/bin/bash
  112. # Define os caminhos dos arquivos v2snap e v2snap2
  113. file1="./v2snap"
  114. file2="./v2snap2"
  115. # Verifica se os arquivos existem
  116. if [ ! -e "$file1" ] || [ ! -e "$file2" ]; then
  117. echo "Um ou ambos os arquivos não existem."
  118. exit 1
  119. fi
  120. # Lê os usuários do arquivo v2snap e armazena em uma matriz
  121. mapfile -t users_file1 < "$file1"
  122. # Lê os usuários do arquivo v2snap2 e armazena em outra matriz
  123. mapfile -t users_file2 < "$file2"
  124. # Percorre a matriz de usuários do v2snap
  125. for user1 in "${users_file1[@]}"; do
  126. # Verifica se o usuário não está presente no v2snap2
  127. if ! [[ " ${users_file2[*]} " =~ " $user1 " ]]; then
  128. echo "Usuário exclusivo em $file1: $user1"
  129. fi
  130. done
  131. # Finaliza o script
  132. exit 0
  133. ############# VERIFICAR CONEXOES SIMULTANEAS SCRIPTING ##############
  134. Analisa as linhas de LOG e faz o procedimento para, dar como saida, as classes de ip(XXX.XXX.XXX.xxx) diferente, que o mesmo usuario acessou o server
  135. GERA FILE DE LINHAS do LOG -> 'tail -n 600 /var/log/v2ray/access.log > ./LINHAS'
  136. \/ linha abaixo que dev ser acompanhada
  137. echo $first_multiple_ips_group"@gmail.com" > ./emailprefix
  138. cat cheaterEmail.sh
  139. #!/bin/bash
  140. # Lê as linhas do arquivo "LINHAS" no mesmo diretório do script
  141. tail -n 600 /var/log/v2ray/access.log > ./LINHAS
  142. mapfile -t lines < "$(dirname "${BASH_SOURCE[0]}")/LINHAS"
  143. declare -A grouped_results
  144. first_multiple_ips_group=""
  145. for line in "${lines[@]}"; do
  146. # Extrair endereço IP da terceira coluna
  147. ip=$(echo $line | awk '{split($3, ip, ":"); print ip[1]}')
  148. # Verificar se o IP está no formato xxx.xxx.xxx.xxx
  149. if [[ $ip =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
  150. # Extrair as três partes do endereço IP e juntá-las
  151. ip_parts=$(echo $ip | awk -F "." '{print $1"."$2"."$3}')
  152. # Extrair parte antes do "@" do endereço de e-mail
  153. email_prefix=$(echo $line | awk -F "@" '{print $1}' | awk '{print $NF}')
  154. # Verificar se o email_prefix tem 10 caracteres e não contém caracteres especiais
  155. if [[ ${#email_prefix} -eq 10 && ! "$email_prefix" =~ [^a-zA-Z0-9] ]]; then
  156. # Agrupar resultados com base no email_prefix
  157. if [ -z "${grouped_results[$email_prefix]}" ]; then
  158. grouped_results["$email_prefix"]=$ip_parts
  159. else
  160. # Adicionar IP apenas se ainda não foi incluído
  161. if [[ ! "${grouped_results[$email_prefix]}" =~ "$ip_parts" ]]; then
  162. grouped_results["$email_prefix"]+=" $ip_parts"
  163. fi
  164. fi
  165. # Verificar se este grupo tem mais de 1 IP e guardar o prefixo do e-mail
  166. if [ $(echo "${grouped_results[$email_prefix]}" | wc -w) -gt 1 ]; then
  167. if [ -z "$first_multiple_ips_group" ]; then
  168. first_multiple_ips_group="$email_prefix"
  169. fi
  170. fi
  171. fi
  172. fi
  173. done
  174. # Exibir os resultados agrupados
  175. for email_prefix in "${!grouped_results[@]}"; do
  176. echo "Email Prefix: $email_prefix"
  177. echo "IPs: ${grouped_results[$email_prefix]}"
  178. echo "----------------------"
  179. done
  180. # Exibir o Email Prefix do primeiro grupo com mais de 1 IP
  181. if [ -n "$first_multiple_ips_group" ]; then
  182. echo "Primeiro grupo com mais de 1 IPs: $first_multiple_ips_group"
  183. echo $first_multiple_ips_group"@gmail.com" > ./emailprefix
  184. else
  185. echo "Nenhum grupo encontrado com mais de 1 IPs."
  186. echo "" > ./emailprefix
  187. fi
  188. -------------- PEGA UUID DO user contido em ./emailprefix SCRIPTING --------------
  189. cat getUUID.sh
  190. #!/bin/bash
  191. # Lê o conteúdo do arquivo de texto emailprefix
  192. email=$(cat ./emailprefix)
  193. # Localiza o "id" com base no email na seção "inbounds" do JSON
  194. id=$(jq -r --arg email "$email" '.inbounds[].settings.clients[] | select(.email == $email) | .id' /etc/v2ray/config.json)
  195. echo "O id correspondente ao email $email é: $id"
  196. ############ \/\/\/ SEGMENTO OPCIONAL PARA SUBSTITUICAO E RESTART \/\/\/ ##################
  197. # Substitui a ocorrência do ID pelo valor desejado no JSON
  198. jq --arg email "$email" --arg new_id "00000000-0000-0000-0000-000000000000" '
  199. .inbounds[].settings.clients |= map(if .email == $email then .id = $new_id else . end)
  200. ' /etc/v2ray/config.json > /etc/v2ray/config.json.tmp
  201. mv /etc/v2ray/config.json.tmp /etc/v2ray/config.json
  202. echo "ID substituído por 00000000-0000-0000-0000-000000000000 no JSON."
  203. systemctl restart v2ray
  204. else
  205. echo "Nenhum id encontrado para o email $email na seção 'inbounds'."
  206. fi
  207. ############# RECEPTOR SCRIPTING ##############
  208. passwd.sh
  209. #!/bin/bash
  210. sleep 2
  211. echo lbadwath
  212. sleep 2
  213. echo lbadwath
  214. scriptGet.sh
  215. #!/bin/bash
  216. while :
  217. do
  218. ./passwd.sh | passwd
  219. ./getVPSFile.sh | yafc ftpuser:lbadwath@192.99.252.3
  220. chmod 777 ./backup.vps
  221. ./restoremacro.sh | menu
  222. #./limiterOvpn.sh
  223. sync; echo 1 > /proc/sys/vm/drop_caches
  224. sleep 5
  225. sync; echo 2 > /proc/sys/vm/drop_caches
  226. done
  227. getVPSFile.sh
  228. #!/bin/bash
  229. sleep 1
  230. echo "ls"
  231. sleep 1
  232. echo "get backup.vps"
  233. sleep 1
  234. echo "y"
  235. sleep 1
  236. echo "exit"

comments powered by Disqus