dpbt/exec/menu.sh
2025-05-29 01:37:06 -06:00

309 lines
10 KiB
Bash
Executable File
Raw Blame History

#!/bin/bash
source /usr/local/lib/drowkid/msg
function downfilez(){
mkdir -p /etc/scripts
link='https://darix.ooguy.com/drowkid01/dpbt/raw/branch/main/scripts'
scpconf='/etc/scripts/scripts.json'
wget -O $scpconf $link/scripts.json >/dev/null 2>&1
for i in `seq 0 3`; do
name[$i]=$(cat "$scpconf"|jq ".scripts[$i].data.nombre"|tr -d '"')
ruta[$i]=$(cat "$scpconf"|jq ".scripts[$i].data.ruta"|tr -d '"')
inst[$i]=$(cat "$scpconf"|jq ".scripts[$i].data.instal"|tr -d '"')
arqs[$i]=$(cat "$scpconf"|jq ".scripts[$i].data.files"|tr -d '"')
linK[$i]="$link/${name[$i]}.tar"
scp="${name[$i]}|"
echo "${name[$i]}|${ruta[$i]}|${inst[$i]}|${arqs[$i]}" >> /usr/local/lib/drowkid/scripts.conf
done
mkdir -p /etc/scripts
[[ ! -e /etc/scripts/scripts.conf ]] && ln -s /usr/local/lib/drowkid/scripts.conf /etc/scripts/scripts.conf
cd /etc/scripts
clear&&clear
msg -b
print_center -m 'INSTALANDO SCRIPTS'
for i in `seq 0 3`; do
mkdir -p "/etc/scripts/${name[$i]}"
msg -b&&unset z
wget -O "/etc/scripts/${name[$i]}/${name[$i]}.tar" "${linK[$i]}" >/dev/null 2>&1
cd "${ruta[$i]}"&&tar xpf "${name[$i]}.tar" >/dev/null 2>&1
rm -rf "${ruta[$i]}/${name[$i]}.tar" userDIR 0 *.txt
echo -e " \e[1;30m[#\e[1;34mSCRIPT: \e[1;36m${name[$i]}\e[1;30m]\n"&&msg -b
#[[ $(ls "${ruta[$i]}") == $(echo "${arqs[$i]}") ]] && continue || echo -e "\e[1;31m[x] error al descargar el script ${name[$i]} [x]"&&return $?
for x in `ls "/etc/scripts/${name[$i]}"`;do
echo -e " \e[1;30m[#\e[1;34mfile: ${z:=1} \e[1;36m${x}\e[1;30m]"
sleep 0.4&&z=$((${z:=1} + 1 ))
[[ $z == "${#arqs[$i]}" ]] && break
done
done
}
listfix(){
unset name ruta inst arqs
scpconf='/etc/scripts/scripts.json'
for((i=0;i<4;i++)); do
name[$i]=$(cat "$scpconf"|jq ".scripts[$i].data.nombre"|tr -d '"')
ruta[$i]=$(cat "$scpconf"|jq ".scripts[$i].data.ruta"|tr -d '"')
inst[$i]=$(cat "$scpconf"|jq ".scripts[$i].data.instal"|tr -d '"')
done
valuekey="$(date | md5sum | head -c11)"
valuekey+="$(echo $(($RANDOM * 10)) | head -c 6)"
ip=$(wget -qO- ipv4.icanhazip.com)
arqs=( [0]=$(cat "$scpconf"|jq '.scripts[0].data.files') [1]=$(cat "$scpconf"|jq '.scripts[1].data.files') [2]=$(cat "$scpconf"|jq '.scripts[2].data.files') [3]=$(cat "$scpconf"|jq '.scripts[3].data.files') )
DIR='/etc/http-shell'&&keY="$valuekey"
link='https://darix.ooguy.com/drowkid01/dpbt/raw/branch/main/exec/ofus'
case $1 in
'scriptdk1'| '--scriptdk1' | '--scriptcgh')
LIST='-SPVweN'&&BASICINST=${arqs[0]//\"/}
fress='menu_credito'&&SCPT_DIR='/etc/scripts/scriptdk1'
instal="${inst[0]}"
source <(curl -sSL $link/ofus3)
keyfnl=$(ofus "$ip:8888/$valuekey/$LIST")
;;
'--vpsmx'|'vpsmx')
LIST='lista-arq'
source <(curl -sSL $link/ofus2)
fress='message.txt'&&BASICINST=${arqs[1]//\"/}
instal="${inst[1]}"&&SCPT_DIR="${ruta[1]}"
keyfnl=$(ofus "$ip:8888/$valuekey/$LIST")
;;
'--latam'|'latam')
LIST='lista-arq'&&BASICINST=${arqs[2]//\"/}
fress='message.txt'
source <(curl -sSL $link/ofus1)
instal="${inst[2]}"&&SCPT_DIR="${ruta[2]}"
keyfnl=$(ofus "$ip:8888/$valuekey/$LIST")
;;
'--darnix'|'darnix')
LIST='lista-arq'&&BASICINST=${arqs[3]//\"/}
fress='menu_credito'
source <(curl -sSL $link/ofus1)
instal="${inst[3]}"&&SCPT_DIR="${ruta[3]}"
keyfnl=$(ofus "$ip:8888/$valuekey/$LIST")
;;
esac
echo $2 > /etc/scripts/$1/$fress
DIR='/etc/http-shell'
keY="$valuekey"
[[ ! -d $DIR/$keY ]] && mkdir -p $DIR/$keY
echo "${ress:=$2}" > "$DIR/${keY}.name"
msg -b&&echo -e "ARQS DE ${1//-/}: $SCPT_DIR \n$(msg -b)"
unset w
for i in `echo "$BASICINST"`;do
#[[ $(ls ${SCPT_DIR}|grep -w "$i") ]] && [[ $(ls /etc/scripts/${1//-/}|grep -w "$i") ]] && continue
echo " [${w:=1}] <<====>> [$i]"
if cp ${SCPT_DIR}/$i $DIR/$keY/ ; then
echo $i >> $DIR/$keY/$LIST
elif cp /etc/scripts/${1//-/}/$i $DIR/$keY/$i ; then
echo $i >> $DIR/$keY/$LIST
fi
w=$(( ${w:=1} + $OPTIND ))
done
msg -b
echo -e "\e[1;30m[•] \e[1;34mSCRIPT: \e[1;36m${1//-/}"
echo -e "\e[1;30m[•] \e[1;34mKEY: \e[1;37m${keyfnl}"
echo -e "\e[1;30m[•] \e[1;34mINSTALADOR: \e[1;37m${instal}"
enter
}
fix-key(){
unset nomkey
msg -b
read -p $'\e[1;30m[•] \e[1;34mIngrese el reseller: ' nomkey
[[ ! -n $nomkey ]] && nomkey='@drowkid01'
clear&&clear
figlet 'KEYGEN'|lolcat
msg -b
print_center -m 'ELIJA EL SCRIPT'
menu_func "GENERAR KEY \e[1;30m[#\e[1;36mSCRIPTDK1\e[1;30m]" "GENERAR KEY \e[1;30m[#\e[1;36mVPSMX/CASITA\e[1;30m]" "GENERAR KEY \e[1;30m[#\e[1;36mSCRIPT-LATAM\e[1;30m]" "GENERAR KEY \e[1;30m[#\e[1;36mSCRIPT-DARNIX\e[1;30m]"
back
ops=$(selection_fun 4)
case $ops in
1)listfix 'scriptdk1' "$nomkey";;
2)listfix 'vpsmx' "$nomkey";;
3)listfix 'latam' "$nomkey";;
4)listfix 'darnix' "$nomkey";;
esac
}
fix_key() {
unset nomkey
echo " Bienvenido, Porfavor dijita el Nombre del DUE<55>O de la KEYs"
echo " DIJITA 0 PARA REGRESAR "
read -p " RESELLER deL Keys : " nomkey
[[ $nomkey = 0 ]] && return
[[ -z $nomkey ]] && {
[[ -e /etc/menu_ito ]] && nomkey="$(cat /etc/menu_ito)" || nomkey="$(curl -sSL "https://www.dropbox.com/s/z38hj1mz3q9krso/menu_credito")"
}
msg -bar
echo " Bienvenido, Porfavor ingresa el numero de keys a generar"
read -p "Numero de Keys : " numk
[[ -z ${numk} ]] && numk=0
msg -bar
read -p "INGRESA NOMBRE DE VENDEDOR : " vkey
clear
msg -bar
echo -e "$numk Keys activas,de $nomkey y esperando instalaci<63>n!"
echo "$nomkey" >${SCPT_DIR}/menu_credito
for ((w = 0; w < $numk; w++)); do
xyz+="$(echo $(($RANDOM * 3)) | head -c 4)"
#valuekey+="$(echo $(($RANDOM*10))|head -c 5)"
list_fix "$valuekey" "$(($w + 1))"
keyfinal=$(ofus "$(wget -qO- ipv4.icanhazip.com):8888/$valuekey/$LIST")
echo -e " ${CHeko} Key $(($w + 1)) Exitosa! $(printf '%(%D-%H:%M:%S)T') \n"
echo -e " ${TTcent} ${keyfinal} ${TTcent}" | pv -qL 80
done
[[ -e /etc/menu_ito ]] && cat /etc/menu_ito >${SCPT_DIR}/menu_credito || echo -e "\nCreditos Aplicados Exitosamente"
#$(cat < /etc/CAT-BOT/resell)
msg -bar
echo -e " ${ScT} *INSTALADOR UNIVERSAL* ${ScT}"
msg -bar && echo -ne "$(msg -verd "apt update -y &&") $(msg -aqua "apt upgrade -y &&\n") " && msg -bra "\033[7;49;35m wget -q https://raw.githubusercontent.com/ChumoGH/ScriptCGH/main/setup && chmod 777 setup && ./setup --install"
msg -bar
[[ -e /etc/menu_numito ]] && menumito="$(cat /etc/menu_numito)" || menumito="https://t.me/ChumoGH_bot"
[[ -z $vkey ]] && vkey="@drowkid01"
echo -e " ${ceLL} Soporte : Ubuntu 14.04 - 16.04 - 18.04 - 20.04 - 21.04 - 22.04\n S.O PREFERENTE 18.04"
echo -e " Verificada: $vkey ${ScT} RESELLER ACTUAL : $nomkey" | pv -qL 80
msg -bar
read -p "Enter para finalizar"
}
databot(){
clear&&clear
figlet 'CONFBOT'|lolcat
msg -b
print_center -m 'CONFIGURACIÓN DE DATOS DEL BOT'
msg -b
case $1 in
--id)
while read -p $'\e[1;30m[•] \e[1;34mIngresa tu id: ' id; do
if [[ -z $id ]]; then
id='7570680285'
fi
break
done
echo "$id" > /etc/CAT-BOT/Admin-ID
tput cuu1&&tput dl1;;
--token)
while read -p $'\e[1;30m[•] \e[1;34mIngresa tu token: ' token; do
if [[ -z $token ]]; then
tput cuu1&&tput dl1
sleep 0.4&&msg -r "[x] INGRESA UN TOKEN VÁLIDO [x]"&&sleep 0.4
tput cuu1&&tput dl1
unset token&&read -p $'\e[1;30m[•] \e[1;34mIngresa tu token: \e[1;36m' token
else
break
fi
done
;;
esac
}
downbot(){
unset -v owner link
owner=$(if [[ "$(wget -qO- ipv4.icanhazip.com)" == '45.56.112.117' ]]; then
echo -e "drowkid01"
else
echo -e "darnix"
fi)
link='https://darix.ooguy.com/drowkid01/dpbt/raw/branch/main/exec'
files=( "BotGen.sh|/etc/CAT-BOT" "http-server.sh|/bin/http-server.sh" )
for i in "${files[@]}"; do
ab=$(echo "$i"|awk -F '|' '{print $1}')
ba=$(echo "$i"|awk -F '|' '{print $2}')
wget -O ${ba}/${ab} ${link}/${owner}/${ab} >/dev/null 2>&1
chmod +rwx ${ba}/${ab}
done
msg -b
echo -e "\e[1;32m[+] BOTGEN DESCARGADO CORRECTAMENTE [+]"
}
power(){
pb=$(ps x|grep -v grep|grep -w 'BotGen.sh')
ph=$(ps x|grep -v grep|grep -w 'http-server.sh')
if [[ $(dpkg --get-selections|grep -w 'apache2') ]]; then
pxrt="$(lsof -V -i tcp -P -n | grep -w 'apache2'|awk -F ':' '{print $2}'|awk '{print $1}')"
pxt="\e[1;34mAPACHE: $pxrt"
elif [[ $(dpkg --get-selections|grep -w 'nginx') ]]; then
pxrt="$(lsof -V -i tcp -P -n | grep -w 'nginx'|awk -F ':' '{print $2}'|awk '{print $1}')"
pxt="\e[1;34mNGINX: $pxrt"
else
pxt="\e[1;31m[x] PUERTO 8888 INACTIVO [x]"
fi
[[ -z $pb ]] && {
pb="\e[1;32mACTIVAR BOTGEN"&&bp="\e[1;31m[OFF]"
} || {
pb="\e[1;31mDESACTIVAR BOTGEN"&&bp="\e[1;32m[ON] "
}
[[ -z $ph ]] && {
ph="\e[1;32mACTIVAR GENERADOR"&&hp="\e[1;31m[OFF]"
} || {
ph="\e[1;31mDESACTIVAR GENERADOR"&&hp="\e[1;32m[ON] "
}
}
[[ ! -e /etc/CAT-BOT/Admin-ID ]] && idd="\e[1;31m[!] CONFIGURAR ID [x]" || idd="\e[1;37mMODIFICAR/CAMBIAR ID"
[[ ! -e /etc/CAT-BOT/token ]] && tkn="\e[1;31m[!] CONFIGURAR TOKEN [x]" || tkn="\e[1;37mMODIFICAR/CAMBIAR TOKEN"
[[ ! -e /etc/scripts/scripts.json ]] || [[ ! -d /etc/scripts ]] && {
downfilez
}
clear&&clear
figlet 'BOT-MENU'|lolcat
msg -b
power
echo -e "\e[1;34mBOTGEN: $bp \e[1;30m| \e[1;34mGEN: $hp \e[1;30m|\e[1;34m SCP: \e[1;36m4"
msg -b
menu_func "$idd" "$tkn" 'ENVIAR MENSAJE' "$pb" "$ph" "UPDATE BOT" "-b REINSTALAR SCRIPTS" "\e[1;37mGENERAR KEY" "VERIFICAR KEY"
back
case `selection_fun 10` in
1)databot --id&&enter&&source $0;;
2)databot --token&&enter&&source $0;;
3)
[[ -e /etc/CAT-BOT/Admin-ID ]] && id=$(cat /etc/CAT-BOT/Admin-ID)
[[ -e /etc/CAT-BOT/token ]] && token=$(cat /etc/CAT-BOT/token)
msj="==================
IP: $(wget -qO- ipv4.icanhazip.com)
FECHA $(date +"%d-%m-%y")
ID: $id
=================="
curl -s --max-time 10 -d "chat_id=$id&disable_web_page_preview=1&text=$msj" "https://api.telegram.org/bot$token/sendMessage" &>/dev/null
msg -b&&echo -e "\e[1;32m[+] MENSAJE DE PRUEBA ENVIADO EXITOSAMENTE [+]"&&enter
source $0
;;
4)
if [[ $(ps x|grep -v grep|grep -w 'BotGen') ]]; then
msg -r '[x] BOTGEN APAGADO CORRECTAMENTE [x]'
killall screen
else
echo -e "\e[1;32m[+] BOTGEN ACTIVADO CORRECTAMENTE [+]"
screen -dmS BotGen /etc/CAT-BOT/BotGen.sh
fi
enter&&source $0
;;
5)
if [[ $(ps x|grep -v grep|grep -w 'http-server') ]]; then
msg -r '[x] GENERADOR APAGADO CORRECTAMENTE [x]'
killall screen && killall "$(ps x|grep -v grep|grep 'http-server')"
else
echo -e "\e[1;32m[+] GENERADOR ACTIVADO CORRECTAMENTE [+]"
screen -dmS http-server /bin/http-server.sh -start >/dev/null 2>&1
fi
enter&&source $0
;;
6)
clear&&clear
figlet "UPDT-BOT"|lolcat
msg -b&&print_center -m 'ACTUALIZANDO BOTGEN'
msg -b
downbot
enter&&source $0
;;
7) clear;;
8)fix-key;;
esac