This commit is contained in:
drowkid01 2025-05-28 12:47:06 -06:00
parent 2fe2e4a58e
commit 559ea2c43c
4 changed files with 310 additions and 4644 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,72 +1,94 @@
#!/bin/bash
source /usr/local/lib/drowkid/msg
check_ip() {
IP=$(wget -qO- ipv4.icanhazip.com)
IP=$(cat /usr/local/lib/drowkid/ipdk|grep $IP)
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
}
####inicio puertos
ports_() {
unset porta
_core=$(printf '%-1s' "$(grep -c cpu[0-9] /proc/stat)")
_usop=$(printf '%-1s' "$(top -bn1 | awk '/Cpu/ { cpu = "" 100 - $8 "%" }; END { print cpu }')")
##
ram1=$(free -h | grep -i mem | awk {'print $2'})
ram2=$(free -h | grep -i mem | awk {'print $4'})
ram3=$(free -h | grep -i mem | awk {'print $3'})
##
_ram=$(printf ' %-9s' "$(free -h | grep -i mem | awk {'print $2'})")
_usor=$(printf '%-8s' "$(free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2 }')")
_core=$(printf '%-1s' "$(grep -c cpu[0-9] /proc/stat)")
_usop=$(printf '%-1s' "$(top -bn1 | awk '/Cpu/ { cpu = "" 100 - $8 "%" }; END { print cpu }')")
mt=$(free -h | grep Mem | sed 's/\s\+/,/g' | cut -d , -f2)
mb=$(free -h | grep Mem | sed 's/\s\+/,/g' | cut -d , -f6)
ml=$(free -h | grep Mem | sed 's/\s\+/,/g' | cut -d , -f7)
pp=$(cat /proc/cpuinfo | grep "model name" | uniq | awk -F ":" '{print $2}')
csss=$(cat /proc/cpuinfo | grep processor | wc -l)
usoo=$(grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}')
CPU=$(echo $usoo | awk '{printf("%d\n",$1 + 0.5)}')
PID_GEN1=$(ps x | grep -v grep | grep "8888")
[[ ! $PID_GEN1 ]] && PID_GEN1="\033[0;31m[\033[0;35mCOLAPZADO\033[0;31m]" || PID_GEN1="\033[0;35m[\033[0;36mFUNCIONANDO\033[0;31m]"
porta=$(if netstat -tunlp | grep nc.tradit 1>/dev/null 2>/dev/null; then
echo -e "\033[0;36m Keygen: \033[0;31m[\033[0;32m ON \033[0;31m]"
else
echo -e "\033[0;36m Keygen: \033[0;35m[\033[0;31m OFF \033[0;35m]"
fi)
[[ $v1 = $v2 ]] && vesaoSCT="\033[1;32m${txt[315]} \033[0;33m ($v2)" || vesaoSCT="\033[1;31m${txt[316]}\033[0;33m($v2) <20>72 \033[1;32m($v1)\033[1;31m"
echo -e " ${cor[2]} ${vesaoSCT} ${cor[0]}"
msg -bar
echo -e "\033[1;34m ${TOP}\033[1;31m TOTAL:\033[1;32m "$mt "\033[1;34m ${TOP} \033[1;31m Libre:\033[1;32m "$ram2 "\033[1;34m ${TOP} \033[1;31m Usada:\033[1;32m"$ram3
echo -e "\033[1;34m ${TOP}\033[1;31m Uso RAM: \033[1;32m"$_usor "\033[1;34m${TOP}\033[1;31m Uso CPU: \033[1;32m$_usop \033[1;34m ${TOP}\033[1;31m Cache:\033[1;32m"$mb # $CPU"%"
msg -bar
echo -e "\033[0;31mSystem:\033[0;32m$(cat /etc/issue.net) \033[0;31mIP:\033[0;32m $(wget -qO- ipv4.icanhazip.com)"
msg -bar
echo ""
echo -ne "$(msg -verd " Keys Usadas") $(msg -azu " : ") " && msg -bra "\033[1;41m $(cat $IVAR) $porta"
echo ""
}
function varcheck(){
SCPT_DIR="/etc/SCRIPT"
DIR="/etc/http-shell"
LIST="-SPVweN"
wget -O /bin/ejecutar/v-new.log https://raw.githubusercontent.com/NetVPS/Multi-Script/main/ChuGH-5.7u/adm-lite/v-local.log &>/dev/nu
v1='v1.1'&&v2=${v1:+v1.2}
list-fix(){
scpconf='/etc/scripts/scripts.json'
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 '"')
done
valuekey="$(date | md5sum | head -c11)"
valuekey+="$(echo $(($RANDOM * 10)) | head -c 6)"
ip=$(wget -qO- ipv4.icanhazip.com)
DIR='/etc/http-shell'&&keY="$2"&&ress="$3"
case $1 in
--scriptdk1 | --scriptcgh)
LIST='-SPVweN'&&BASICINST="${arqs[0]}"
fress='menu_credito'
instal="${inst[0]}"&&SCPT_DIR="${ruta[0]}"
keyfnl=$(ofus "$ip:8888/$valuekey/$LIST")
;;
--vpsmx)
LIST='lista-arq'&&BASICINST="${arqs[1]}"
fress='message.txt'
instal="${inst[1]}"&&SCPT_DIR="${ruta[1]}"
keyfnl=$(ofusdk "$ip:8888/$valuekey/$LIST")
;;
--latam)
LIST='lista-arq'&&BASICINST="${arqs[2]}"
fress='menu_credito'
instal="${inst[2]}"&&SCPT_DIR="${ruta[2]}"
keyfnl=$(ofusdk "$ip:8888/$valuekey/$LIST")
;;
--darnix)
LIST='lista-arq'&&BASICINST="${arqs[3]}"
fress='menu_credito'
instal="${inst[3]}"&&SCPT_DIR="${ruta[3]}"
keyfnl=$(ofusdk "$ip:8888/$valuekey/$LIST")
;;
esac
[[ ! -d $DIR/$keY ]] && mkdir -p $DIR/$keY
echo $ress > "$DIR/${keY}.name"
msg -b&&echo -e "ARQS DE ${1//-/}"
for i in `echo "$BASICINST"`;do
[[ $(ls ${SCPT_DIR}|grep -w "$i") ]] && continue
echo "[${w:=1}] <<====>> [$i]"
cp ${SCPT_DIR}/$i $DIR/$keY/
echo $i >> $DIR/$keY/$LIST
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
}
meu_ip() {
MIP=$(ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
MIP2=$(wget -qO- ipv4.icanhazip.com)
[[ "$MIP" != "$MIP2" ]] && IP="$MIP2" || IP="$MIP"
}
list_fix() {
rm ${SCPT_DIR}/*.x.c &>/dev/null
unset KEY
@ -138,7 +160,25 @@ ofus() {
done
echo "$txtofus" | rev
}
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)list-fix --scriptdk1;;
2)list-fix --vpsmx;;
3)list-fix --latam;;
4)list-fix --darnix;;
esac
}
fix_key() {
unset nomkey
echo " Bienvenido, Porfavor dijita el Nombre del DUE<55>O de la KEYs"
@ -159,8 +199,6 @@ fix_key() {
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
valuekey="$(date | md5sum | head -c11)"
valuekey+="$(echo $(($RANDOM * 10)) | head -c 6)"
xyz+="$(echo $(($RANDOM * 3)) | head -c 4)"
#valuekey+="$(echo $(($RANDOM*10))|head -c 5)"
list_fix "$valuekey" "$(($w + 1))"
@ -181,435 +219,56 @@ fix_key() {
msg -bar
read -p "Enter para finalizar"
}
att_gen_key() {
i=0
rm ${SCPT_DIR}/*.x.c &>/dev/null
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
echo "[$i] Volver"
keys="$keys retorno"
let i++
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
arqsx=$(ofus "$IP:8888/$arqs/$LIST")
if [[ $(cat ${DIR}/${arqs}.name | grep GERADOR) ]]; then
echo -e "\033[1;31m[$i] $arqsx ($(cat ${DIR}/${arqs}.name))\033[1;32m ($(cat ${DIR}/${arqs}/keyfixa))\033[0m"
keys="$keys $arqs"
let i++
fi
done
keys=($keys)
msg -bar
while [[ -z ${keys[$value]} || -z $value ]]; do
read -p "Escolha qual Atualizar[t=todos]: " -e -i 0 value
done
[[ $value = 0 ]] && return
if [[ $value = @(t|T) ]]; then
i=0
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
KEYDIR="$DIR/$arqs"
rm $KEYDIR/*.x.c &>/dev/null
if [[ $(cat ${DIR}/${arqs}.name | grep GERADOR) ]]; then #Keyen Atualiza
rm ${KEYDIR}/${LIST}
for arqx in $(ls $SCPT_DIR); do
cp ${SCPT_DIR}/$arqx ${KEYDIR}/$arqx
echo "${arqx}" >>${KEYDIR}/${LIST}
rm ${SCPT_DIR}/*.x.c &>/dev/null
rm $KEYDIR/*.x.c &>/dev/null
done
arqsx=$(ofus "$IP:8888/$arqs/$LIST")
echo -e "\033[1;33m[KEY]: $arqsx \033[1;32m(ATUALIZADA!)\033[0m"
fi
let i++
done
rm ${SCPT_DIR}/*.x.c &>/dev/null
msg -bar2
echo -ne "\033[0m" && read -p "Enter"
return 0
fi
KEYDIR="$DIR/${keys[$value]}"
[[ -d "$KEYDIR" ]] && {
rm $KEYDIR/*.x.c &>/dev/null
rm ${KEYDIR}/${LIST}
for arqx in $(ls $SCPT_DIR); do
cp ${SCPT_DIR}/$arqx ${KEYDIR}/$arqx
echo "${arqx}" >>${KEYDIR}/${LIST}
rm ${SCPT_DIR}/*.x.c &>/dev/null
rm $KEYDIR/*.x.c &>/dev/null
done
arqsx=$(ofus "$IP:8888/${keys[$value]}/$LIST")
echo -e "\033[1;33m[KEY]: $arqsx \033[1;32m(ATUALIZADA!)\033[0m"
read -p "Enter"
rm ${SCPT_DIR}/*.x.c &>/dev/null
}
}
del_KILL() {
for arqlist in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
[[ -e /${DIR}/${arqlist}.name ]] || rm -rf /${DIR}/${arqlist}
done
}
remover_key() {
del_KILL
i=0
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
echo "[$i] Volver"
keys="$keys retorno"
let i++
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
arqsx=$(ofus "$IP:8888/$arqs/$LIST")
if [[ ! -e ${DIR}/${arqs}/used.date ]]; then
echo -e "\033[1;32m[$i] $arqsx ($(cat ${DIR}/${arqs}.name))\033[1;33m (Key Activa)\033[0m" || rm -rf ${DIR}/${arqs}
else
echo -e "\033[1;31m[$i] $arqsx ($(cat ${DIR}/${arqs}.name))\033[1;33m ($(cat ${DIR}/${arqs}/used.date) IP: $(cat ${DIR}/${arqs}/used))\033[0m"
fi
keys="$keys $arqs"
let i++
done
keys=($keys)
msg -bar
while [[ -z ${keys[$value]} || -z $value ]]; do
read -p "Elija cual remover: " -e -i 0 value
done
[[ -d "$DIR/${keys[$value]}" ]] && rm -rf $DIR/${keys[$value]}* || return
}
remover_key_usada() {
i=0
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
arqsx=$(ofus "$IP:8888/$arqs/$LIST")
if [[ -e ${DIR}/${arqs}/used.date ]]; then #KEY USADA
if [[ $(ls -l -c ${DIR}/${arqs}/used.date | cut -d' ' -f7) != $(date | cut -d' ' -f3) ]]; then
rm -rf ${DIR}/${arqs}*
echo -e "\033[1;31m[KEY]: $arqsx \033[1;32m(Eliminada!)\033[0m"
else
echo -e "\033[1;32m[KEY]: $arqsx \033[1;32m(Key Activa!)\033[0m"
fi
else
echo -e "\033[1;32m[KEY]: $arqsx \033[1;32m(Key Activa!)\033[0m"
fi
let i++
done
msg -bar2
echo -ne "\033[0m" && read -p "Enter"
}
start_gen() {
unset bot_ini
PIDGEN=$(ps x | grep -v grep | grep "http-server.sh")
if [[ ! $PIDGEN ]]; then
msg -bar
echo -ne "\033[1;97m Poner en linea despues de un reinicio [s/n]: "
read bot_ini
msg -bar
[[ $bot_ini = @(s|S|y|Y) ]] && {
crontab -l >/root/cron
echo "@reboot screen -dmS generador /bin/http-server.sh -start" >>/root/cron
crontab /root/cron
rm /root/cron
echo '#!/bin/bash
killall http-server.sh
screen -dmS generador /bin/http-server.sh -start
echo #' >/bin/genon
chmod +rwx /bin/genon
echo "00 * * * * root bash /bin/genon" >>/etc/crontab
service cron restart
} || {
crontab -l >/root/cron
sed -i '/http-server.sh/ d' /root/cron
crontab /root/cron
rm /root/cron
sed '/genon/ d' /etc/crontab >/bin/ejecutar/crontab
cat /bin/ejecutar/crontab >/etc/crontab
service cron restart
}
genon
else
killall http-server.sh
fi
}
message_gen() {
read -p "Ingresa el Mensaje: " MSGNEW
[[ -z $MSGNEW ]] && return
echo $MSGNEW >/etc/menu_ito
cat /etc/menu_ito >${SCPT_DIR}/menu_credito
read -p "Ingresa tu Numero de Contacto o tu ALIAS de TELEGRAM: " MSGNEW
echo $MSGNEW >/etc/menu_numito && chmod +rwx /etc/menu_numito
msg -bar
}
act_gen() {
while [[ ${varread} != @([0-2]) ]]; do
echo -e "Bienvenido al Actualizador, Escoje que vas a Actualizar\n 1).- KEY ACTIVA\n 2).- Creditos del ADM\n " | lolcat
echo -ne "${cor[6]}"
read -p " Escoje :" varread
done
msg -bar
if [[ ${varread} = 0 ]]; then
return
elif [[ ${varread} = 1 ]]; then
att_gen_key
elif [[ ${varread} = 2 ]]; then
message_gen
fi
#source <(curl -sL https://raw.githubusercontent.com/ChumoGH/ChuKK-SCRIPT/master/Key-gerar/insta.sh)
}
rmv_iplib() {
echo -e "SERVIDORES DE KEY ATIVOS!"
rm /var/www/html/newlib && touch /var/www/html/newlib
rm ${SCPT_DIR}/*.x.c &>/dev/null
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
if [[ $(cat ${DIR}/${arqs}.name | grep GERADOR) ]]; then
var=$(cat ${DIR}/${arqs}.name)
ip=$(cat ${DIR}/${arqs}/keyfixa)
# echo -ne "\033[1;31m[USUARIO]:(\033[1;32m${var%%[*}\033[1;31m) \033[1;33m[GERADOR]:\033[1;32m ($ip)\033[0m"
echo "$ip" >>/var/www/html/newlib && echo -e " \033[1;36m[ATUALIZADO]"
fi
done
echo "51.222.29.216" >>/var/www/html/newlib
msg -bar
read -p "Enter"
}
bot_menu() {
[[ -e /etc/nivbot ]] || echo "0" >/etc/nivbot
[[ -d /etc/CAT-BOT ]] && chmod +rwx /etc/CAT-BOT/*
echo -ne "\033[1;31m[ ! ] RESPALDANDO USUARIO ADMINISTRADOR "
(
[[ -e /etc/CAT-BOT/sources/costes ]] && mv /etc/CAT-BOT/sources/costes $HOME/costes
[[ -e /etc/CAT-BOT/token ]] && mv /etc/CAT-BOT/token $HOME/token
[[ -e /etc/CAT-BOT/Admin-ID ]] && mv /etc/CAT-BOT/Admin-ID $HOME/Admin-ID
[[ -e /etc/CAT-BOT/User-ID ]] && mv /etc/CAT-BOT/User-ID $HOME/User-ID
[[ -e /etc/CAT-BOT/limit ]] && mv /etc/CAT-BOT/limit $HOME/limit
[[ -e /etc/CAT-BOT/resell ]] && mv /etc/CAT-BOT/resell $HOME/resell
[[ -e /etc/CAT-BOT/ress ]] && mv /etc/CAT-BOT/ress $HOME/ress
[[ -e /etc/CAT-BOT/num-key.cont ]] && mv /etc/CAT-BOT/num-key.cont $HOME/num-key.cont
) && echo -e "\033[1;32m [OK]" || echo -e "\033[1;31m [FAIL]"
CIDdir=/etc/CAT-BOT && [[ ! -d ${CIDdir} ]] && mkdir ${CIDdir}
[[ ! -e "${CIDdir}/confbot.sh" ]] && wget --no-check-certificate -O ${CIDdir}/confbot.sh https://gitea.com/drowkid01/dpbt/raw/branch/main/Code-BOT-General/intBOT.sh &>/dev/null && chmod +rwx ${CIDdir}/confbot.sh
sed -i -e 's/\r$//' ${CIDdir}/confbot.sh
source ${CIDdir}/confbot.sh && rm -f ${CIDdir}/confbot.sh
bot_conf
}
fum_ver() {
while [[ ! $Keey ]]; do
clear
export PATH=$PATH:/usr/sbin:/usr/local/sbin:/usr/local/bin:/usr/bin:/sbin:/bin:/usr/games
echo -e "\n \033[1;32m DIGITA TU KEY A VERIFICAR "
msg -ne "Script Key: " && read Keey
[[ ! -z $Keey ]] && Keey="$(echo "$Keey" | tr -d '[[:space:]]')"
tput cuu1 && tput dl1
done
REQUEST=$(ofus "$Keey" | cut -d'/' -f2)
echo -e "\n"
echo -e " FILE Contend : ${REQUEST} $(echo ${REQUEST} | wc -c)"
echo -e "\n"
echo -e " VERIFICA, Si tu key Contiene \033[1;45m KEY DE ChumoGH! \033[0m "
echo -e "\n"
msg -ne " Link Key: http://$(ofus $Keey) \n "
IiP=$(ofus "$Keey" | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')
[[ $(curl -s --connect-timeout 2 $IiP:8888) ]] && echo -e "\033[1;42mCONEXION CON SERVIDOR EXITOSA\033[0m" || echo -e "\033[1;43mCONEXION CON SERVIDOR FALLIDA\033[0m"
wget --no-check-certificate -O $HOME/list-key $(ofus $Keey)/$(wget -qO- ipv4.icanhazip.com) >/dev/null 2>&1 && echo -ne "\033[1;32m [ VERIFICANDO ]" || echo -e "\033[1;31m [ No Existe Acceso al KEY ]" #&& echo -e "\033[1;32m [ Key ]\n" || echo -e "\033[1;31m [ No Existe Acceso al KEY ]"
ofen=$(wget -qO- $(ofus $Keey))
unset arqx
[[ -d $HOME/install ]] && rm -rf $HOME/install/* || mkdir $HOME/install
verificar_arq() {
echo "$1" >>$HOME/install/log.txt
}
n=1
IP=$(ofus "$Keey" | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') && echo "$IP" >/usr/bin/vendor_code
pontos="."
stopping=" COMPROBANDO " | sed -e 's/[^a-z -]//ig'
for arqx in $(cat $HOME/list-key); do
msg -verm "${stopping}${pontos}" && sleep 0.3s
wget --no-check-certificate -O $HOME/install/${arqx} ${IP}:81/${REQUEST}/${arqx} >/dev/null 2>&1 && verificar_arq "${arqx}"
tput cuu1 && tput dl1
pontos+="."
n=$(($n + 1))
done
echo -ne " ---> ESTADO : \033[1;45m$ofen\033[0m con "
[[ ! -e $HOME/install/log.txt ]] && touch $HOME/install/log.txt
echo " $(cat <$HOME/install/log.txt | wc -l) FILES " && rm -f $HOME/install/log.txt
msg -ne " \033[1;42mESTADO :\033[0m "
[[ -e $HOME/list-key ]] && {
echo -ne " "
[[ $ofen = "KEY DE ChumoGH!" ]] &&
echo -e "KEY FUNCIONAL" && rm -f $HOME/list-key && echo -ne "\033[0m"
} || echo -e " KEY INVALIDA O USADA\033[0m\n"
#curl -s --connect-timeout 2 ${IiP}:81/${REQUEST}/menu_credito > menu_credito
msg -ne " RESELLER del Key :\033[0m "
[[ -e $HOME/install/menu_credito ]] && {
echo -ne " "
[[ "$(cat $HOME/install/menu_credito)" = "" ]] && {
echo -e "SIN RESELLER\033[0m"
} || echo -e "$(cat $HOME/install/menu_credito)\033[0m" && rm -rf $HOME/install && echo -ne "\033[0m"
} || echo -e " NO HAY CONTENIDO DE KEY Key\033[0m\n"
read -p "Enter"
}
alter_id() {
while [[ ${varread} != @([0-3]) ]]; do
tittle
msg -bar
echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m Alterar Creditos POR ID \033[0;32m(#OFICIAL)"
echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m REINICIAR CONTADOR TOTAL \033[0;32m(#OFICIAL)"
msg -bar
echo -e " \033[0;35m[\033[0;36m0\033[0;35m] \033[0;34m<\033[0;33m Regresar"
msg -bar
echo -ne "${cor[6]}"
read -p " Opcion : " varread
done
msg -bar
if [[ ${varread} = 0 ]]; then
return 0
elif [[ ${varread} = 1 ]]; then
echo -e "\033[1;32m DIGITA ID A REINICIAR "
msg -ne " Paste ID : " && read newli
sed -i "/${newli}/d" /etc/CAT-BOT/num-key.cont
echo "REGISTRO EN $(grep -o -i $newli /etc/CAT-BOT/num-key.cont | wc -l) KEYS"
read -p "Limite Aplicado Exitosamente"
elif [[ ${varread} = 2 ]]; then
echo -e "\033[1;32m BORRAREMOS EL CONTEO TOTAL DEL GENERADOR "
rm -rf /etc/CAT-BOT/num-key.cont && touch /etc/CAT-BOT/num-key.cont
echo "REGISTRO EN $(cat /etc/CAT-BOT/num-key.cont | wc -l) KEYS"
read -p "Limite Aplicado Exitosamente"
fi
}
# SISTEMA DE SELECAO
selection_fun() {
local selection="null"
local range
for ((i = 0; i <= $1; i++)); do range[$i]="$i "; done
while [[ ! $(echo ${range[*]} | grep -w "$selection") ]]; do
echo -ne "\033[1;37mOpcion: " >&2
read selection
tput cuu1 >&2 && tput dl1 >&2
done
echo $selection
}
alter_limit() {
echo -e "\033[1;32m DIGITA TU NUEVO LIMITE "
msg -ne "New Limit: " && read newli
echo $newli >/etc/CAT-BOT/limit
read -p "Limite Aplicado Exitosamente"
}
dropIP() {
[[ ! -e /etc/dropIP.sh ]] && wget -q -O /etc/dropIP.sh https://www.dropbox.com/s/12r0h64vb1lc1oy/dropIP.sh?dl=0
unset PIDGEN
if [[ -e /var/www/html/ChumoGH/VPSbot/main/TeleBotGen/Control/Control-Bot ]]; then
echo -e "[Unit]
Description=BotGen Service by @drowkid01
After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
User=root
WorkingDirectory=/root
ExecStart=/bin/bash /etc/dropIP.sh
Restart=always
RestartSec=3s
[Install]
WantedBy=multi-user.target" >/etc/systemd/system/dropIP.service
systemctl enable dropIP &>/dev/null
systemctl start dropIP &>/dev/null
else
killall dropIP &>/dev/null
systemctl stop dropIP &>/dev/null
systemctl disable dropIP &>/dev/null
rm /etc/systemd/system/dropIP.service &>/dev/null
clear
msg -bar
echo -e "\033[1;31m BotGen fuera de linea"
msg -bar
read -p "Presione Enter para continuar "
fi
}
meu_ip
menau() {
unset PID_GEN1
PID_GEN=$(ps x | grep -v grep | grep "http-server.sh")
PID_GEN1=$(ps x | grep -v grep | grep "8888")
PID_BGEN1=$(ps x | grep -v grep | grep "BotGen.sh")
add_fun="${PID_BGEN1}"
tittle
[[ -e /etc/valkey ]] && {
figlet -f smslant "$(cat </etc/valkey)" | lolcat
msg -bar
} || {
figlet -p -f smslant "@drowkid01" | lolcat
msg -bar
}
[[ ! $PID_GEN ]] && PID_GEN="\033[0;35m[\033[0;31mDETENIDO\033[0;35m]" || PID_GEN="\033[0;35m[\033[0;36mWORKING\033[0;35m]"
[[ ! $PID_GEN1 ]] && PID_GEN1="\033[0;35m[\033[0;31m OFF \033[0;35m]" || PID_GEN1="\033[0;35m[\033[0;36m ON \033[0;35m]"
[[ ! $PID_BGEN1 ]] && {
PID_BGEN1="\033[0;35m[\033[0;31mNO INICIADO\033[0;35m]"
lim_menu='11'
} || PID_BGEN1="\033[0;35m[\033[0;36mFUNCIONANDO\033[0;35m]" && lim_menu='12'
ports_
[[ -e /etc/CAT-BOT/limit ]] && limcont=$(cat /etc/CAT-BOT/limit)
[[ "${limcont}" -ge "998" ]] && limted="50" || {
[[ -e /etc/CAT-BOT/limit ]] && limted=$(cat /etc/CAT-BOT/limit)
}
[[ -z $limted ]] && limted="No Found"
msg -bar
cd ${SCPT_DIR}
echo -e "\033[0;35m |\033[0;32m $(find . -type f | wc -l) \033[0;35m|\033[0;33m Ficheros\033[0;32m >\033[1;31m ${SCPT_DIR} \033[0;34mcon\033[0;35m |\033[0;32m$(ls /etc/http-shell/ | grep name | wc -l)\033[0;35m|\033[0;33m\033[0;33m KEYs"
cd $HOME
msg -bar
meu_ip
[[ -z $add_fun ]] || echo -e "\033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m Alterar Limite del BOT ( $limted )" #$PID_GEN1\033[0m
echo -e "\033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m APAGAR/VER KEYS"
#echo -e "\033[0;35m[\033[0;36mx\033[0;35m] \033[0;34m<\033[0;33m ------------------------" #KEYS ( GENERADOR )"
echo -e "\033[0;35m[\033[0;36m4\033[0;35m] \033[0;34m<\033[0;34m Generar Keys ALEATORIAS"
echo -e "\033[0;35m[\033[0;36m5\033[0;35m] \033[0;34m<\033[0;33m INICIAR/PARAR KEYGEN $PID_GEN\033[0m"
echo -e "\033[0;35m[\033[0;36m6\033[0;35m] \033[0;34m<\033[0;33m REGISTRO DE KEYS USADAS"
echo -e "\033[0;35m[\033[0;36m7\033[0;35m] \033[0;34m<\033[0;33m Checar KEY ACTIVADA"
echo -e "\033[0;35m[\033[0;36m8\033[0;35m] \033[0;34m<\033[0;33m ACTUALIZAR GENERADOR/KEY/CREDITOS "
echo -e "\033[0;35m[\033[0;36m9\033[0;35m] \033[0;34m<\033[0;33m Actualizar KEY"
echo -e "\033[0;35m[\033[0;36m10\033[0;35m] \033[0;34m<\033[0;33m CONFIGURAR BOT DE TELEGRAM $PID_BGEN1\033[0m"
[[ -z $add_fun ]] || echo -e "\033[0;35m[\033[0;36m11\033[0;35m] \033[0;34m<\033[0;33m + / - CREDITOS Por ID"
echo -e "\033[0;35m[\033[0;36m0\033[0;35m] \033[0;34m<\033[0;33m SALIR"
msg -bar
}
while :; do
menau
selection=$(selection_fun $lim_menu)
case ${selection} in
0) cd $HOME && break ;;
1) alter_limit ;;
2) remover_key ;;
3) remover_key_usada ;;
4) fix_key ;;
5) start_gen ;;
6)
echo -ne "\033[1;36m"
echo -e "$(cat /etc/gerar-sh-log)" 2>/dev/null || echo "NINGUN LOG DE MOMENTO"
echo -ne "\033[0m" && read -p "Enter"
;;
7) fum_ver ;;
8) act_gen ;;
9) att_gen_key ;;
#10) bot_menu ;;
10)
clear&&clear
figlet 'CONF-BOT'|lolcat
msg -b
print_center -m 'CONFIGURACIÓN DEL BOT'
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
;;
11) alter_id ;;
esac
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 [+]"
}

View File

@ -1,72 +1,94 @@
#!/bin/bash
source /usr/local/lib/drowkid/msg
check_ip() {
IP=$(wget -qO- ipv4.icanhazip.com)
IP=$(cat /usr/local/lib/drowkid/ipdk|grep $IP)
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
}
####inicio puertos
ports_() {
unset porta
_core=$(printf '%-1s' "$(grep -c cpu[0-9] /proc/stat)")
_usop=$(printf '%-1s' "$(top -bn1 | awk '/Cpu/ { cpu = "" 100 - $8 "%" }; END { print cpu }')")
##
ram1=$(free -h | grep -i mem | awk {'print $2'})
ram2=$(free -h | grep -i mem | awk {'print $4'})
ram3=$(free -h | grep -i mem | awk {'print $3'})
##
_ram=$(printf ' %-9s' "$(free -h | grep -i mem | awk {'print $2'})")
_usor=$(printf '%-8s' "$(free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2 }')")
_core=$(printf '%-1s' "$(grep -c cpu[0-9] /proc/stat)")
_usop=$(printf '%-1s' "$(top -bn1 | awk '/Cpu/ { cpu = "" 100 - $8 "%" }; END { print cpu }')")
mt=$(free -h | grep Mem | sed 's/\s\+/,/g' | cut -d , -f2)
mb=$(free -h | grep Mem | sed 's/\s\+/,/g' | cut -d , -f6)
ml=$(free -h | grep Mem | sed 's/\s\+/,/g' | cut -d , -f7)
pp=$(cat /proc/cpuinfo | grep "model name" | uniq | awk -F ":" '{print $2}')
csss=$(cat /proc/cpuinfo | grep processor | wc -l)
usoo=$(grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}')
CPU=$(echo $usoo | awk '{printf("%d\n",$1 + 0.5)}')
PID_GEN1=$(ps x | grep -v grep | grep "8888")
[[ ! $PID_GEN1 ]] && PID_GEN1="\033[0;31m[\033[0;35mCOLAPZADO\033[0;31m]" || PID_GEN1="\033[0;35m[\033[0;36mFUNCIONANDO\033[0;31m]"
porta=$(if netstat -tunlp | grep nc.tradit 1>/dev/null 2>/dev/null; then
echo -e "\033[0;36m Keygen: \033[0;31m[\033[0;32m ON \033[0;31m]"
else
echo -e "\033[0;36m Keygen: \033[0;35m[\033[0;31m OFF \033[0;35m]"
fi)
[[ $v1 = $v2 ]] && vesaoSCT="\033[1;32m${txt[315]} \033[0;33m ($v2)" || vesaoSCT="\033[1;31m${txt[316]}\033[0;33m($v2) <20>72 \033[1;32m($v1)\033[1;31m"
echo -e " ${cor[2]} ${vesaoSCT} ${cor[0]}"
msg -bar
echo -e "\033[1;34m ${TOP}\033[1;31m TOTAL:\033[1;32m "$mt "\033[1;34m ${TOP} \033[1;31m Libre:\033[1;32m "$ram2 "\033[1;34m ${TOP} \033[1;31m Usada:\033[1;32m"$ram3
echo -e "\033[1;34m ${TOP}\033[1;31m Uso RAM: \033[1;32m"$_usor "\033[1;34m${TOP}\033[1;31m Uso CPU: \033[1;32m$_usop \033[1;34m ${TOP}\033[1;31m Cache:\033[1;32m"$mb # $CPU"%"
msg -bar
echo -e "\033[0;31mSystem:\033[0;32m$(cat /etc/issue.net) \033[0;31mIP:\033[0;32m $(wget -qO- ipv4.icanhazip.com)"
msg -bar
echo ""
echo -ne "$(msg -verd " Keys Usadas") $(msg -azu " : ") " && msg -bra "\033[1;41m $(cat $IVAR) $porta"
echo ""
}
function varcheck(){
SCPT_DIR="/etc/SCRIPT"
DIR="/etc/http-shell"
LIST="-SPVweN"
wget -O /bin/ejecutar/v-new.log https://raw.githubusercontent.com/NetVPS/Multi-Script/main/ChuGH-5.7u/adm-lite/v-local.log &>/dev/nu
v1='v1.1'&&v2=${v1:+v1.2}
list-fix(){
scpconf='/etc/scripts/scripts.json'
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 '"')
done
valuekey="$(date | md5sum | head -c11)"
valuekey+="$(echo $(($RANDOM * 10)) | head -c 6)"
ip=$(wget -qO- ipv4.icanhazip.com)
DIR='/etc/http-shell'&&keY="$2"&&ress="$3"
case $1 in
--scriptdk1 | --scriptcgh)
LIST='-SPVweN'&&BASICINST="${arqs[0]}"
fress='menu_credito'
instal="${inst[0]}"&&SCPT_DIR="${ruta[0]}"
keyfnl=$(ofus "$ip:8888/$valuekey/$LIST")
;;
--vpsmx)
LIST='lista-arq'&&BASICINST="${arqs[1]}"
fress='message.txt'
instal="${inst[1]}"&&SCPT_DIR="${ruta[1]}"
keyfnl=$(ofusdk "$ip:8888/$valuekey/$LIST")
;;
--latam)
LIST='lista-arq'&&BASICINST="${arqs[2]}"
fress='menu_credito'
instal="${inst[2]}"&&SCPT_DIR="${ruta[2]}"
keyfnl=$(ofusdk "$ip:8888/$valuekey/$LIST")
;;
--darnix)
LIST='lista-arq'&&BASICINST="${arqs[3]}"
fress='menu_credito'
instal="${inst[3]}"&&SCPT_DIR="${ruta[3]}"
keyfnl=$(ofusdk "$ip:8888/$valuekey/$LIST")
;;
esac
[[ ! -d $DIR/$keY ]] && mkdir -p $DIR/$keY
echo $ress > "$DIR/${keY}.name"
msg -b&&echo -e "ARQS DE ${1//-/}"
for i in `echo "$BASICINST"`;do
[[ $(ls ${SCPT_DIR}|grep -w "$i") ]] && continue
echo "[${w:=1}] <<====>> [$i]"
cp ${SCPT_DIR}/$i $DIR/$keY/
echo $i >> $DIR/$keY/$LIST
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
}
meu_ip() {
MIP=$(ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
MIP2=$(wget -qO- ipv4.icanhazip.com)
[[ "$MIP" != "$MIP2" ]] && IP="$MIP2" || IP="$MIP"
}
list_fix() {
rm ${SCPT_DIR}/*.x.c &>/dev/null
unset KEY
@ -138,7 +160,25 @@ ofus() {
done
echo "$txtofus" | rev
}
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)list-fix --scriptdk1;;
2)list-fix --vpsmx;;
3)list-fix --latam;;
4)list-fix --darnix;;
esac
}
fix_key() {
unset nomkey
echo " Bienvenido, Porfavor dijita el Nombre del DUE<55>O de la KEYs"
@ -159,8 +199,6 @@ fix_key() {
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
valuekey="$(date | md5sum | head -c11)"
valuekey+="$(echo $(($RANDOM * 10)) | head -c 6)"
xyz+="$(echo $(($RANDOM * 3)) | head -c 4)"
#valuekey+="$(echo $(($RANDOM*10))|head -c 5)"
list_fix "$valuekey" "$(($w + 1))"
@ -181,435 +219,56 @@ fix_key() {
msg -bar
read -p "Enter para finalizar"
}
att_gen_key() {
i=0
rm ${SCPT_DIR}/*.x.c &>/dev/null
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
echo "[$i] Volver"
keys="$keys retorno"
let i++
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
arqsx=$(ofus "$IP:8888/$arqs/$LIST")
if [[ $(cat ${DIR}/${arqs}.name | grep GERADOR) ]]; then
echo -e "\033[1;31m[$i] $arqsx ($(cat ${DIR}/${arqs}.name))\033[1;32m ($(cat ${DIR}/${arqs}/keyfixa))\033[0m"
keys="$keys $arqs"
let i++
fi
done
keys=($keys)
msg -bar
while [[ -z ${keys[$value]} || -z $value ]]; do
read -p "Escolha qual Atualizar[t=todos]: " -e -i 0 value
done
[[ $value = 0 ]] && return
if [[ $value = @(t|T) ]]; then
i=0
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
KEYDIR="$DIR/$arqs"
rm $KEYDIR/*.x.c &>/dev/null
if [[ $(cat ${DIR}/${arqs}.name | grep GERADOR) ]]; then #Keyen Atualiza
rm ${KEYDIR}/${LIST}
for arqx in $(ls $SCPT_DIR); do
cp ${SCPT_DIR}/$arqx ${KEYDIR}/$arqx
echo "${arqx}" >>${KEYDIR}/${LIST}
rm ${SCPT_DIR}/*.x.c &>/dev/null
rm $KEYDIR/*.x.c &>/dev/null
done
arqsx=$(ofus "$IP:8888/$arqs/$LIST")
echo -e "\033[1;33m[KEY]: $arqsx \033[1;32m(ATUALIZADA!)\033[0m"
fi
let i++
done
rm ${SCPT_DIR}/*.x.c &>/dev/null
msg -bar2
echo -ne "\033[0m" && read -p "Enter"
return 0
fi
KEYDIR="$DIR/${keys[$value]}"
[[ -d "$KEYDIR" ]] && {
rm $KEYDIR/*.x.c &>/dev/null
rm ${KEYDIR}/${LIST}
for arqx in $(ls $SCPT_DIR); do
cp ${SCPT_DIR}/$arqx ${KEYDIR}/$arqx
echo "${arqx}" >>${KEYDIR}/${LIST}
rm ${SCPT_DIR}/*.x.c &>/dev/null
rm $KEYDIR/*.x.c &>/dev/null
done
arqsx=$(ofus "$IP:8888/${keys[$value]}/$LIST")
echo -e "\033[1;33m[KEY]: $arqsx \033[1;32m(ATUALIZADA!)\033[0m"
read -p "Enter"
rm ${SCPT_DIR}/*.x.c &>/dev/null
}
}
del_KILL() {
for arqlist in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
[[ -e /${DIR}/${arqlist}.name ]] || rm -rf /${DIR}/${arqlist}
done
}
remover_key() {
del_KILL
i=0
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
echo "[$i] Volver"
keys="$keys retorno"
let i++
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
arqsx=$(ofus "$IP:8888/$arqs/$LIST")
if [[ ! -e ${DIR}/${arqs}/used.date ]]; then
echo -e "\033[1;32m[$i] $arqsx ($(cat ${DIR}/${arqs}.name))\033[1;33m (Key Activa)\033[0m" || rm -rf ${DIR}/${arqs}
else
echo -e "\033[1;31m[$i] $arqsx ($(cat ${DIR}/${arqs}.name))\033[1;33m ($(cat ${DIR}/${arqs}/used.date) IP: $(cat ${DIR}/${arqs}/used))\033[0m"
fi
keys="$keys $arqs"
let i++
done
keys=($keys)
msg -bar
while [[ -z ${keys[$value]} || -z $value ]]; do
read -p "Elija cual remover: " -e -i 0 value
done
[[ -d "$DIR/${keys[$value]}" ]] && rm -rf $DIR/${keys[$value]}* || return
}
remover_key_usada() {
i=0
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
arqsx=$(ofus "$IP:8888/$arqs/$LIST")
if [[ -e ${DIR}/${arqs}/used.date ]]; then #KEY USADA
if [[ $(ls -l -c ${DIR}/${arqs}/used.date | cut -d' ' -f7) != $(date | cut -d' ' -f3) ]]; then
rm -rf ${DIR}/${arqs}*
echo -e "\033[1;31m[KEY]: $arqsx \033[1;32m(Eliminada!)\033[0m"
else
echo -e "\033[1;32m[KEY]: $arqsx \033[1;32m(Key Activa!)\033[0m"
fi
else
echo -e "\033[1;32m[KEY]: $arqsx \033[1;32m(Key Activa!)\033[0m"
fi
let i++
done
msg -bar2
echo -ne "\033[0m" && read -p "Enter"
}
start_gen() {
unset bot_ini
PIDGEN=$(ps x | grep -v grep | grep "http-server.sh")
if [[ ! $PIDGEN ]]; then
msg -bar
echo -ne "\033[1;97m Poner en linea despues de un reinicio [s/n]: "
read bot_ini
msg -bar
[[ $bot_ini = @(s|S|y|Y) ]] && {
crontab -l >/root/cron
echo "@reboot screen -dmS generador /bin/http-server.sh -start" >>/root/cron
crontab /root/cron
rm /root/cron
echo '#!/bin/bash
killall http-server.sh
screen -dmS generador /bin/http-server.sh -start
echo #' >/bin/genon
chmod +rwx /bin/genon
echo "00 * * * * root bash /bin/genon" >>/etc/crontab
service cron restart
} || {
crontab -l >/root/cron
sed -i '/http-server.sh/ d' /root/cron
crontab /root/cron
rm /root/cron
sed '/genon/ d' /etc/crontab >/bin/ejecutar/crontab
cat /bin/ejecutar/crontab >/etc/crontab
service cron restart
}
genon
else
killall http-server.sh
fi
}
message_gen() {
read -p "Ingresa el Mensaje: " MSGNEW
[[ -z $MSGNEW ]] && return
echo $MSGNEW >/etc/menu_ito
cat /etc/menu_ito >${SCPT_DIR}/menu_credito
read -p "Ingresa tu Numero de Contacto o tu ALIAS de TELEGRAM: " MSGNEW
echo $MSGNEW >/etc/menu_numito && chmod +rwx /etc/menu_numito
msg -bar
}
act_gen() {
while [[ ${varread} != @([0-2]) ]]; do
echo -e "Bienvenido al Actualizador, Escoje que vas a Actualizar\n 1).- KEY ACTIVA\n 2).- Creditos del ADM\n " | lolcat
echo -ne "${cor[6]}"
read -p " Escoje :" varread
done
msg -bar
if [[ ${varread} = 0 ]]; then
return
elif [[ ${varread} = 1 ]]; then
att_gen_key
elif [[ ${varread} = 2 ]]; then
message_gen
fi
#source <(curl -sL https://raw.githubusercontent.com/ChumoGH/ChuKK-SCRIPT/master/Key-gerar/insta.sh)
}
rmv_iplib() {
echo -e "SERVIDORES DE KEY ATIVOS!"
rm /var/www/html/newlib && touch /var/www/html/newlib
rm ${SCPT_DIR}/*.x.c &>/dev/null
[[ -z $(ls $DIR | grep -v "ERROR-KEY") ]] && return
for arqs in $(ls $DIR | grep -v "ERROR-KEY" | grep -v ".name"); do
if [[ $(cat ${DIR}/${arqs}.name | grep GERADOR) ]]; then
var=$(cat ${DIR}/${arqs}.name)
ip=$(cat ${DIR}/${arqs}/keyfixa)
# echo -ne "\033[1;31m[USUARIO]:(\033[1;32m${var%%[*}\033[1;31m) \033[1;33m[GERADOR]:\033[1;32m ($ip)\033[0m"
echo "$ip" >>/var/www/html/newlib && echo -e " \033[1;36m[ATUALIZADO]"
fi
done
echo "51.222.29.216" >>/var/www/html/newlib
msg -bar
read -p "Enter"
}
bot_menu() {
[[ -e /etc/nivbot ]] || echo "0" >/etc/nivbot
[[ -d /etc/CAT-BOT ]] && chmod +rwx /etc/CAT-BOT/*
echo -ne "\033[1;31m[ ! ] RESPALDANDO USUARIO ADMINISTRADOR "
(
[[ -e /etc/CAT-BOT/sources/costes ]] && mv /etc/CAT-BOT/sources/costes $HOME/costes
[[ -e /etc/CAT-BOT/token ]] && mv /etc/CAT-BOT/token $HOME/token
[[ -e /etc/CAT-BOT/Admin-ID ]] && mv /etc/CAT-BOT/Admin-ID $HOME/Admin-ID
[[ -e /etc/CAT-BOT/User-ID ]] && mv /etc/CAT-BOT/User-ID $HOME/User-ID
[[ -e /etc/CAT-BOT/limit ]] && mv /etc/CAT-BOT/limit $HOME/limit
[[ -e /etc/CAT-BOT/resell ]] && mv /etc/CAT-BOT/resell $HOME/resell
[[ -e /etc/CAT-BOT/ress ]] && mv /etc/CAT-BOT/ress $HOME/ress
[[ -e /etc/CAT-BOT/num-key.cont ]] && mv /etc/CAT-BOT/num-key.cont $HOME/num-key.cont
) && echo -e "\033[1;32m [OK]" || echo -e "\033[1;31m [FAIL]"
CIDdir=/etc/CAT-BOT && [[ ! -d ${CIDdir} ]] && mkdir ${CIDdir}
[[ ! -e "${CIDdir}/confbot.sh" ]] && wget --no-check-certificate -O ${CIDdir}/confbot.sh https://gitea.com/drowkid01/dpbt/raw/branch/main/Code-BOT-General/intBOT.sh &>/dev/null && chmod +rwx ${CIDdir}/confbot.sh
sed -i -e 's/\r$//' ${CIDdir}/confbot.sh
source ${CIDdir}/confbot.sh && rm -f ${CIDdir}/confbot.sh
bot_conf
}
fum_ver() {
while [[ ! $Keey ]]; do
clear
export PATH=$PATH:/usr/sbin:/usr/local/sbin:/usr/local/bin:/usr/bin:/sbin:/bin:/usr/games
echo -e "\n \033[1;32m DIGITA TU KEY A VERIFICAR "
msg -ne "Script Key: " && read Keey
[[ ! -z $Keey ]] && Keey="$(echo "$Keey" | tr -d '[[:space:]]')"
tput cuu1 && tput dl1
done
REQUEST=$(ofus "$Keey" | cut -d'/' -f2)
echo -e "\n"
echo -e " FILE Contend : ${REQUEST} $(echo ${REQUEST} | wc -c)"
echo -e "\n"
echo -e " VERIFICA, Si tu key Contiene \033[1;45m KEY DE ChumoGH! \033[0m "
echo -e "\n"
msg -ne " Link Key: http://$(ofus $Keey) \n "
IiP=$(ofus "$Keey" | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')
[[ $(curl -s --connect-timeout 2 $IiP:8888) ]] && echo -e "\033[1;42mCONEXION CON SERVIDOR EXITOSA\033[0m" || echo -e "\033[1;43mCONEXION CON SERVIDOR FALLIDA\033[0m"
wget --no-check-certificate -O $HOME/list-key $(ofus $Keey)/$(wget -qO- ipv4.icanhazip.com) >/dev/null 2>&1 && echo -ne "\033[1;32m [ VERIFICANDO ]" || echo -e "\033[1;31m [ No Existe Acceso al KEY ]" #&& echo -e "\033[1;32m [ Key ]\n" || echo -e "\033[1;31m [ No Existe Acceso al KEY ]"
ofen=$(wget -qO- $(ofus $Keey))
unset arqx
[[ -d $HOME/install ]] && rm -rf $HOME/install/* || mkdir $HOME/install
verificar_arq() {
echo "$1" >>$HOME/install/log.txt
}
n=1
IP=$(ofus "$Keey" | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}') && echo "$IP" >/usr/bin/vendor_code
pontos="."
stopping=" COMPROBANDO " | sed -e 's/[^a-z -]//ig'
for arqx in $(cat $HOME/list-key); do
msg -verm "${stopping}${pontos}" && sleep 0.3s
wget --no-check-certificate -O $HOME/install/${arqx} ${IP}:81/${REQUEST}/${arqx} >/dev/null 2>&1 && verificar_arq "${arqx}"
tput cuu1 && tput dl1
pontos+="."
n=$(($n + 1))
done
echo -ne " ---> ESTADO : \033[1;45m$ofen\033[0m con "
[[ ! -e $HOME/install/log.txt ]] && touch $HOME/install/log.txt
echo " $(cat <$HOME/install/log.txt | wc -l) FILES " && rm -f $HOME/install/log.txt
msg -ne " \033[1;42mESTADO :\033[0m "
[[ -e $HOME/list-key ]] && {
echo -ne " "
[[ $ofen = "KEY DE ChumoGH!" ]] &&
echo -e "KEY FUNCIONAL" && rm -f $HOME/list-key && echo -ne "\033[0m"
} || echo -e " KEY INVALIDA O USADA\033[0m\n"
#curl -s --connect-timeout 2 ${IiP}:81/${REQUEST}/menu_credito > menu_credito
msg -ne " RESELLER del Key :\033[0m "
[[ -e $HOME/install/menu_credito ]] && {
echo -ne " "
[[ "$(cat $HOME/install/menu_credito)" = "" ]] && {
echo -e "SIN RESELLER\033[0m"
} || echo -e "$(cat $HOME/install/menu_credito)\033[0m" && rm -rf $HOME/install && echo -ne "\033[0m"
} || echo -e " NO HAY CONTENIDO DE KEY Key\033[0m\n"
read -p "Enter"
}
alter_id() {
while [[ ${varread} != @([0-3]) ]]; do
tittle
msg -bar
echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m Alterar Creditos POR ID \033[0;32m(#OFICIAL)"
echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m REINICIAR CONTADOR TOTAL \033[0;32m(#OFICIAL)"
msg -bar
echo -e " \033[0;35m[\033[0;36m0\033[0;35m] \033[0;34m<\033[0;33m Regresar"
msg -bar
echo -ne "${cor[6]}"
read -p " Opcion : " varread
done
msg -bar
if [[ ${varread} = 0 ]]; then
return 0
elif [[ ${varread} = 1 ]]; then
echo -e "\033[1;32m DIGITA ID A REINICIAR "
msg -ne " Paste ID : " && read newli
sed -i "/${newli}/d" /etc/CAT-BOT/num-key.cont
echo "REGISTRO EN $(grep -o -i $newli /etc/CAT-BOT/num-key.cont | wc -l) KEYS"
read -p "Limite Aplicado Exitosamente"
elif [[ ${varread} = 2 ]]; then
echo -e "\033[1;32m BORRAREMOS EL CONTEO TOTAL DEL GENERADOR "
rm -rf /etc/CAT-BOT/num-key.cont && touch /etc/CAT-BOT/num-key.cont
echo "REGISTRO EN $(cat /etc/CAT-BOT/num-key.cont | wc -l) KEYS"
read -p "Limite Aplicado Exitosamente"
fi
}
# SISTEMA DE SELECAO
selection_fun() {
local selection="null"
local range
for ((i = 0; i <= $1; i++)); do range[$i]="$i "; done
while [[ ! $(echo ${range[*]} | grep -w "$selection") ]]; do
echo -ne "\033[1;37mOpcion: " >&2
read selection
tput cuu1 >&2 && tput dl1 >&2
done
echo $selection
}
alter_limit() {
echo -e "\033[1;32m DIGITA TU NUEVO LIMITE "
msg -ne "New Limit: " && read newli
echo $newli >/etc/CAT-BOT/limit
read -p "Limite Aplicado Exitosamente"
}
dropIP() {
[[ ! -e /etc/dropIP.sh ]] && wget -q -O /etc/dropIP.sh https://www.dropbox.com/s/12r0h64vb1lc1oy/dropIP.sh?dl=0
unset PIDGEN
if [[ -e /var/www/html/ChumoGH/VPSbot/main/TeleBotGen/Control/Control-Bot ]]; then
echo -e "[Unit]
Description=BotGen Service by @drowkid01
After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
User=root
WorkingDirectory=/root
ExecStart=/bin/bash /etc/dropIP.sh
Restart=always
RestartSec=3s
[Install]
WantedBy=multi-user.target" >/etc/systemd/system/dropIP.service
systemctl enable dropIP &>/dev/null
systemctl start dropIP &>/dev/null
else
killall dropIP &>/dev/null
systemctl stop dropIP &>/dev/null
systemctl disable dropIP &>/dev/null
rm /etc/systemd/system/dropIP.service &>/dev/null
clear
msg -bar
echo -e "\033[1;31m BotGen fuera de linea"
msg -bar
read -p "Presione Enter para continuar "
fi
}
meu_ip
menau() {
unset PID_GEN1
PID_GEN=$(ps x | grep -v grep | grep "http-server.sh")
PID_GEN1=$(ps x | grep -v grep | grep "8888")
PID_BGEN1=$(ps x | grep -v grep | grep "BotGen.sh")
add_fun="${PID_BGEN1}"
tittle
[[ -e /etc/valkey ]] && {
figlet -f smslant "$(cat </etc/valkey)" | lolcat
msg -bar
} || {
figlet -p -f smslant "@drowkid01" | lolcat
msg -bar
}
[[ ! $PID_GEN ]] && PID_GEN="\033[0;35m[\033[0;31mDETENIDO\033[0;35m]" || PID_GEN="\033[0;35m[\033[0;36mWORKING\033[0;35m]"
[[ ! $PID_GEN1 ]] && PID_GEN1="\033[0;35m[\033[0;31m OFF \033[0;35m]" || PID_GEN1="\033[0;35m[\033[0;36m ON \033[0;35m]"
[[ ! $PID_BGEN1 ]] && {
PID_BGEN1="\033[0;35m[\033[0;31mNO INICIADO\033[0;35m]"
lim_menu='11'
} || PID_BGEN1="\033[0;35m[\033[0;36mFUNCIONANDO\033[0;35m]" && lim_menu='12'
ports_
[[ -e /etc/CAT-BOT/limit ]] && limcont=$(cat /etc/CAT-BOT/limit)
[[ "${limcont}" -ge "998" ]] && limted="50" || {
[[ -e /etc/CAT-BOT/limit ]] && limted=$(cat /etc/CAT-BOT/limit)
}
[[ -z $limted ]] && limted="No Found"
msg -bar
cd ${SCPT_DIR}
echo -e "\033[0;35m |\033[0;32m $(find . -type f | wc -l) \033[0;35m|\033[0;33m Ficheros\033[0;32m >\033[1;31m ${SCPT_DIR} \033[0;34mcon\033[0;35m |\033[0;32m$(ls /etc/http-shell/ | grep name | wc -l)\033[0;35m|\033[0;33m\033[0;33m KEYs"
cd $HOME
msg -bar
meu_ip
[[ -z $add_fun ]] || echo -e "\033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m Alterar Limite del BOT ( $limted )" #$PID_GEN1\033[0m
echo -e "\033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m APAGAR/VER KEYS"
#echo -e "\033[0;35m[\033[0;36mx\033[0;35m] \033[0;34m<\033[0;33m ------------------------" #KEYS ( GENERADOR )"
echo -e "\033[0;35m[\033[0;36m4\033[0;35m] \033[0;34m<\033[0;34m Generar Keys ALEATORIAS"
echo -e "\033[0;35m[\033[0;36m5\033[0;35m] \033[0;34m<\033[0;33m INICIAR/PARAR KEYGEN $PID_GEN\033[0m"
echo -e "\033[0;35m[\033[0;36m6\033[0;35m] \033[0;34m<\033[0;33m REGISTRO DE KEYS USADAS"
echo -e "\033[0;35m[\033[0;36m7\033[0;35m] \033[0;34m<\033[0;33m Checar KEY ACTIVADA"
echo -e "\033[0;35m[\033[0;36m8\033[0;35m] \033[0;34m<\033[0;33m ACTUALIZAR GENERADOR/KEY/CREDITOS "
echo -e "\033[0;35m[\033[0;36m9\033[0;35m] \033[0;34m<\033[0;33m Actualizar KEY"
echo -e "\033[0;35m[\033[0;36m10\033[0;35m] \033[0;34m<\033[0;33m CONFIGURAR BOT DE TELEGRAM $PID_BGEN1\033[0m"
[[ -z $add_fun ]] || echo -e "\033[0;35m[\033[0;36m11\033[0;35m] \033[0;34m<\033[0;33m + / - CREDITOS Por ID"
echo -e "\033[0;35m[\033[0;36m0\033[0;35m] \033[0;34m<\033[0;33m SALIR"
msg -bar
}
while :; do
menau
selection=$(selection_fun $lim_menu)
case ${selection} in
0) cd $HOME && break ;;
1) alter_limit ;;
2) remover_key ;;
3) remover_key_usada ;;
4) fix_key ;;
5) start_gen ;;
6)
echo -ne "\033[1;36m"
echo -e "$(cat /etc/gerar-sh-log)" 2>/dev/null || echo "NINGUN LOG DE MOMENTO"
echo -ne "\033[0m" && read -p "Enter"
;;
7) fum_ver ;;
8) act_gen ;;
9) att_gen_key ;;
#10) bot_menu ;;
10)
clear&&clear
figlet 'CONF-BOT'|lolcat
msg -b
print_center -m 'CONFIGURACIÓN DEL BOT'
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
;;
11) alter_id ;;
esac
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 [+]"
}

View File

@ -1,365 +0,0 @@
#!/bin/bash
IVAR="/etc/http-instas"
onliCHECK=/var/www/html/dani
LIST="lista-arq"
[[ -d /var/www/html/dani ]] || mkdir ${onliCHECK}
install_fun () {
apt-get install netcat -y
}
meu_ip_fun () {
MIP=$(ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
MIP2=$(wget -qO- ipv4.icanhazip.com)
[[ "$MIP" != "$MIP2" ]] && IP="$MIP2" || IP="$MIP"
}
meu_ip_func () {
MIP=$(ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
MIP2=$(wget -qO- ipv4.icanhazip.com)
[[ "$MIP" != "$MIP2" ]] && IP="$MIP2" || IP="$MIP"
}
#OFUSCATE
ofus() {
unset server
server=$(echo ${txt_ofuscatw} | cut -d':' -f1)
unset txtofus
number=$(expr length $1)
for ((i = 1; i < $number + 1; i++)); do
txt[$i]=$(echo "$1" | cut -b $i)
case ${txt[$i]} in
".") txt[$i]="v" ;;
"v") txt[$i]="." ;;
"1") txt[$i]="@" ;;
"@") txt[$i]="1" ;;
"2") txt[$i]="?" ;;
"?") txt[$i]="2" ;;
"4") txt[$i]="p" ;;
"p") txt[$i]="4" ;;
"-") txt[$i]="L" ;;
"L") txt[$i]="-" ;;
esac
txtofus+="${txt[$i]}"
done
echo "$txtofus" | rev
}
ofusc() {
unset server
server=$(echo ${txt_ofuscatw} | cut -d':' -f1)
unset txtofus
number=$(expr length $1)
for ((i = 1; i < $number + 1; i++)); do
txt[$i]=$(echo "$1" | cut -b $i)
case ${txt[$i]} in
".")txt[$i]="C";;
"C")txt[$i]=".";;
"3")txt[$i]="@";;
"@")txt[$i]="3";;
"4")txt[$i]="9";;
"9")txt[$i]="4";;
"6")txt[$i]="P";;
"P")txt[$i]="6";;
"L")txt[$i]="K";;
"K")txt[$i]="L";;
esac
txtofus+="${txt[$i]}"
done
echo "$txtofus" | rev
}
# LISTEN
listen_fun () {
local PORTA="8888" && local PROGRAMA="/bin/http-server.sh"
while true; do nc.traditional -l -p "$PORTA" -e "$PROGRAMA"; done
}
# SERVER
server_fun () {
meu_ip_fun
PORTA="8888"
DIR="/etc/http-shell" #DIRETORIO DAS KEYS ARMAZENADAS
unset ENV_ARQ
if [[ ! -d $DIR ]]; then mkdir $DIR; fi
read URL
KEY=$(echo $URL|cut -d' ' -f2|cut -d'/' -f2) && [[ ! $KEY ]] && KEY="ERRO" #KEY
ARQ=$(echo $URL|cut -d' ' -f2|cut -d'/' -f3) && [[ ! $ARQ ]] && ARQ="ERRO" #LISTA INSTALACAO
USRIP=$(echo $URL|cut -d' ' -f2|cut -d'/' -f4) && [[ ! $USRIP ]] && USRIP="ERRO" #IP Del USUARIO
REQ=$(echo $URL|cut -d' ' -f2|cut -d'/' -f5) && [[ ! $REQ ]] && REQ="ERRO"
FILE2="${DIR}/${KEY}"
FILE="${DIR}/${KEY}/$ARQ"
echo "KEY: $KEY" >&2
echo "LISTA: $ARQ" >&2
echo "IP: $USRIP" >&2
echo "REQ: $REQ" >&2
DIRETORIOKEY="$DIR/$KEY" # DIRETORIO DA KEY
LISTADEARQUIVOS="$DIRETORIOKEY/$ARQ" # LISTA DE ARQUIVOS
if [[ -d "$DIRETORIOKEY" ]]; then #VERIFICANDO SE A CHAVE EXISTE
if [[ -e "$DIRETORIOKEY/$ARQ" ]]; then #VERIFICANDO LISTA DE ARQUIVOS
#ENVIA LISTA DE DOWLOADS
FILE="$DIRETORIOKEY/$ARQ"
STATUS_NUMBER="200"
STATUS_NAME="Found"
ENV_ARQ="True"
fi
if [[ -e "$DIRETORIOKEY/FERRAMENTA" ]]; then #VERIFICA SE A KEY E FERRAMETA
if [[ ${USRIP} != "ERRO" ]]; then #SE FOR FERRAMENTA O IP NAO DEVE SER ENVIADO
FILE="${DIR}/ERROR-KEY"
echo "FERRAMENTA KEY!" > ${FILE}
ENV_ARQ="False"
fi
else
if [[ ${USRIP} = "ERRO" ]]; then #VERIFICA SE FOR INSTALACAO O IP DEVE SER ENVIADO
FILE="${DIR}/ERROR-KEY"
echo "KEY DE INSTALACION!" > ${FILE}
ENV_ARQ="False"
fi
fi
else
# KEY INVALIDA
FILE="${DIR}/ERROR-KEY"
echo "KEY INVALIDA!" > ${FILE}
STATUS_NUMBER="200"
STATUS_NAME="Found"
ENV_ARQ="False"
fi
#ENVIA DADOS AO USUARIO
cat << EOF
HTTP/1.1 $STATUS_NUMBER - $STATUS_NAME
Date: $(date)
Server: ShellHTTP
Content-Length: $(wc --bytes "$FILE" | cut -d " " -f1)
Connection: close
Content-Type: text/html; charset=utf-8
$(cat "$FILE")
EOF
if [[ $ENV_ARQ = "True" ]]; then
(
mkdir /var/www/html/$KEY
mkdir /var/www/$KEY
TIME="20+"
for arqs in `cat $FILE`; do
cp ${FILE2}/$arqs /var/www/html/$KEY/
cp ${FILE2}/$arqs /var/www/$KEY/
TIME+="1+"
done
_key="$(ofus ${IP}:${PORTA}/${KEY}/${LIST})"
_key="$(ofusc ${IP}:${PORTA}/${KEY}/${LIST})"
echo "$(cat ${FILE2}.name) | $USRIP | ${_key} | $_hora" > /var/www/html/$KEY/checkIP.log
echo "$(cat ${FILE2}.name) | $USRIP | ${_key} | $_hora" > /var/www/$KEY/checkIP.log
RESELL="$(cat /var/www/$KEY/message.txt)"
TIME=$(echo "${TIME}0"|bc)
sleep ${TIME}s
rm -rf /var/www/html/$KEY
rm -rf /var/www/$KEY
log="/etc/gerar-sh-log"
_hora=$(printf '%(%D-%H:%M:%S)T')
if [[ -d $FILE2 ]]; then
PERM="${DIR}/${KEY}/keyfixa"
if [[ -e $PERM ]]; then
if [[ $(cat $PERM) != "$USRIP" ]]; then
log="/etc/gerar-sh-log"
echo "$(cat ${FILE2}.name) | IP-FIJA:$USRIP | ${_key} | $_hora" >> $log
echo "$(cat ${FILE2}.name) | IP-FIJA:$USRIP | ${_key} | $_hora" >> ${onliCHECK}/checkIP.log && chmod +x ${onliCHECK}/checkIP.log
#cat /etc/gerar-sh-log > ${onliCHECK}/checkIP.log
rm -rf $FILE2
rm -f ${FILE2}.name
fi
else
uid=$(uuidgen)
echo "$(cat ${FILE2}.name) | $USRIP | ${_key} | $_hora" >> $log
echo "$(cat ${FILE2}.name) | $USRIP | ${_key} | $_hora" >> ${onliCHECK}/checkIP.log && chmod +x ${onliCHECK}/checkIP.log
[[ -e /etc/CAT-BOT/token ]] && {
ID="$(cat ${FILE2}.name)" && ID="$(echo $ID | awk '{print $1}' | sed -e 's/[^0-9]//ig')"
[[ ${ID} -lt '999' ]] && ID='576145089'
TOKEN="$(cat /etc/CAT-BOT/token)"
urlBOT="https://api.telegram.org/bot$TOKEN/sendMessage"
#MENSAJE=" =======================================\n"
MENSAJE+=" ️✅ 𝗞𝗘𝗬 𝗔𝗖𝗧𝗜𝗩𝗔𝗗𝗔 ✅ \n"
MENSAJE+="\n"
MENSAJE+="🔐 Key Encriptado\n"
MENSAJE+="\n"
MENSAJE+="🔑AES $uid\n"
#MENSAJE+=" =========== ☝️ USADA ☝ ============\n"
MENSAJE+="\n"
MENSAJE+=" 👤 ${RESELL}\n"
MENSAJE+=" 🆔 ${ID} \n"
#MENSAJE+=" =======================================\n"
MENSAJE+=" 🌐 : $USRIP \n"
MENSAJE+=" 🕐 $_hora \n"
MENSAJE+=" INSTALACION N° $(cat ${onliCHECK}/checkIP.log | wc -l)\n"
MENSAJE+=' ===========▫NotiBot▫======\n'
#MENSAJE+=' ⚜ By @ChumoGH ⚜ \n'
#MENSAJE+=" ==========================\n"
#curl -s -X POST $urlBOT -d chat_id=$ID -d text="$(echo -e "$MENSAJE")" &>/dev/null
MENSAJE+='&reply_markup={"inline_keyboard":[[{"text":"KEY DNX","callback_data":"/keygen"},{"text":" SOPORTE ","url":"https://t.me/darnix0"}]]}'
#curl -s -X POST $urlBOT -d chat_id=$ID -d text="$(echo -e "$MENSAJE")" &>/dev/null
#curl -s --max-time 10 -d "chat_id=$ID&disable_web_page_preview=1&text=$(echo -e "$MENSAJE")&parse_mode=html" $urlBOT &>/dev/null
curl -s --max-time 10 -d "chat_id=$ID&disable_web_page_preview=1&text=$(echo -e "$MENSAJE")" ${urlBOT} &>/dev/null
}
rm -rf $FILE2
rm -f ${FILE2}.name
fi
num=$(cat ${IVAR})
if [[ $num = "" ]]; then
num=0
fi
let num++
echo $num > $IVAR
fi
) & > /dev/null
fi
}
server_func () {
meu_ip_func
PORTA="8888"
DIR="/etc/http-shell" #DIRETORIO DAS KEYS ARMAZENADAS
unset ENV_ARQ
if [[ ! -d $DIR ]]; then mkdir $DIR; fi
read URL
KEY=$(echo $URL|cut -d' ' -f2|cut -d'/' -f2) && [[ ! $KEY ]] && KEY="ERRO" #KEY
ARQ=$(echo $URL|cut -d' ' -f2|cut -d'/' -f3) && [[ ! $ARQ ]] && ARQ="ERRO" #LISTA INSTALACAO
USRIP=$(echo $URL|cut -d' ' -f2|cut -d'/' -f4) && [[ ! $USRIP ]] && USRIP="ERRO" #IP Del USUARIO
REQ=$(echo $URL|cut -d' ' -f2|cut -d'/' -f5) && [[ ! $REQ ]] && REQ="ERRO"
FILE2="${DIR}/${KEY}"
FILE="${DIR}/${KEY}/$ARQ"
echo "KEY: $KEY" >&2
echo "LISTA: $ARQ" >&2
echo "IP: $USRIP" >&2
echo "REQ: $REQ" >&2
DIRETORIOKEY="$DIR/$KEY" # DIRETORIO DA KEY
LISTADEARQUIVOS="$DIRETORIOKEY/$ARQ" # LISTA DE ARQUIVOS
if [[ -d "$DIRETORIOKEY" ]]; then #VERIFICANDO SE A CHAVE EXISTE
if [[ -e "$DIRETORIOKEY/$ARQ" ]]; then #VERIFICANDO LISTA DE ARQUIVOS
#ENVIA LISTA DE DOWLOADS
FILE="$DIRETORIOKEY/$ARQ"
STATUS_NUMBER="200"
STATUS_NAME="Found"
ENV_ARQ="True"
fi
if [[ -e "$DIRETORIOKEY/FERRAMENTA" ]]; then #VERIFICA SE A KEY E FERRAMETA
if [[ ${USRIP} != "ERRO" ]]; then #SE FOR FERRAMENTA O IP NAO DEVE SER ENVIADO
FILE="${DIR}/ERROR-KEY"
echo "FERRAMENTA KEY!" > ${FILE}
ENV_ARQ="False"
fi
else
if [[ ${USRIP} = "ERRO" ]]; then #VERIFICA SE FOR INSTALACAO O IP DEVE SER ENVIADO
FILE="${DIR}/ERROR-KEY"
echo "KEY DE INSTALACION!" > ${FILE}
ENV_ARQ="False"
fi
fi
else
# KEY INVALIDA
FILE="${DIR}/ERROR-KEY"
echo "KEY INVALIDA!" > ${FILE}
STATUS_NUMBER="200"
STATUS_NAME="Found"
ENV_ARQ="False"
fi
#ENVIA DADOS AO USUARIO
cat << EOF
HTTP/1.1 $STATUS_NUMBER - $STATUS_NAME
Date: $(date)
Server: ShellHTTP
Content-Length: $(wc --bytes "$FILE" | cut -d " " -f1)
Connection: close
Content-Type: text/html; charset=utf-8
$(cat "$FILE")
EOF
if [[ $ENV_ARQ = "True" ]]; then
(
mkdir /var/www/html/$KEY
mkdir /var/www/$KEY
TIME="20+"
for arqs in `cat $FILE`; do
cp ${FILE2}/$arqs /var/www/html/$KEY/
cp ${FILE2}/$arqs /var/www/$KEY/
TIME+="1+"
done
#_key="$(ofus ${IP}:${PORTA}/${KEY}/${LIST})"
_key="$(ofusc ${IP}:${PORTA}/${KEY}/${LIST})"
echo "$(cat ${FILE2}.name) | $USRIP | ${_key} | $_hora" > /var/www/html/$KEY/checkIP.log
echo "$(cat ${FILE2}.name) | $USRIP | ${_key} | $_hora" > /var/www/$KEY/checkIP.log
RESELL="$(cat /var/www/$KEY/message.txt)"
TIME=$(echo "${TIME}0"|bc)
sleep ${TIME}s
rm -rf /var/www/html/$KEY
rm -rf /var/www/$KEY
log="/etc/gerar-sh-log"
_hora=$(printf '%(%D-%H:%M:%S)T')
if [[ -d $FILE2 ]]; then
PERM="${DIR}/${KEY}/keyfixa"
if [[ -e $PERM ]]; then
if [[ $(cat $PERM) != "$USRIP" ]]; then
log="/etc/gerar-sh-log"
echo "$(cat ${FILE2}.name) | IP-FIJA:$USRIP | ${_key} | $_hora" >> $log
echo "$(cat ${FILE2}.name) | IP-FIJA:$USRIP | ${_key} | $_hora" >> ${onliCHECK}/checkIP.log && chmod +x ${onliCHECK}/checkIP.log
#cat /etc/gerar-sh-log > ${onliCHECK}/checkIP.log
rm -rf $FILE2
rm -f ${FILE2}.name
fi
else
echo "$(cat ${FILE2}.name) | $USRIP | ${_key} | $_hora" >> $log
echo "$(cat ${FILE2}.name) | $USRIP | ${_key} | $_hora" >> ${onliCHECK}/checkIP.log && chmod +x ${onliCHECK}/checkIP.log
[[ -e /etc/CAT-BOT/token ]] && {
ID="$(cat ${FILE2}.name)" && ID="$(echo $ID | awk '{print $1}' | sed -e 's/[^0-9]//ig')"
[[ ${ID} -lt '999' ]] && ID='576145089'
TOKEN="$(cat /etc/CAT-BOT/token)"
urlBOT="https://api.telegram.org/bot$TOKEN/sendMessage"
#MENSAJE=" =======================================\n"
MENSAJE+=" ❗️𝗞𝗘𝗬 𝗔𝗖𝗧𝗜𝗩𝗔𝗗𝗔❗️ \n"
#MENSAJE+=" ══━━━━⎊⎊━━━━══ \n"
MENSAJE+="🔑 ${_key}\n"
#MENSAJE+=" =========== ☝️ USADA ☝ ============\n"
#MENSAJE+=" ☝️ USADA ☝️ \n"
MENSAJE+=" 👤 ${RESELL}\n"
MENSAJE+=" 🆔 ${ID} \n"
#MENSAJE+=" =======================================\n"
MENSAJE+=" 🌐 : $USRIP \n"
MENSAJE+=" 🕐 $_hora \n"
MENSAJE+=" INSTALACION N° $(cat ${onliCHECK}/checkIP.log | wc -l)\n"
MENSAJE+=' ===========▫NotiBotC▫======\n'
#MENSAJE+=' ⚜ By @ChumoGH ⚜ \n'
#MENSAJE+=" ==========================\n"
#curl -s -X POST $urlBOT -d chat_id=$ID -d text="$(echo -e "$MENSAJE")" &>/dev/null
MENSAJE+='&reply_markup={"inline_keyboard":[[{"text":"KEY DNX","callback_data":"/keygen"},{"text":" SOPORTE ","url":"https://t.me/darnix0"}]]}'
#curl -s -X POST $urlBOT -d chat_id=$ID -d text="$(echo -e "$MENSAJE")" &>/dev/null
#curl -s --max-time 10 -d "chat_id=$ID&disable_web_page_preview=1&text=$(echo -e "$MENSAJE")&parse_mode=html" $urlBOT &>/dev/null
curl -s --max-time 10 -d "chat_id=$ID&disable_web_page_preview=1&text=$(echo -e "$MENSAJE")" ${urlBOT} &>/dev/null
}
rm -rf $FILE2
rm -f ${FILE2}.name
fi
num=$(cat ${IVAR})
if [[ $num = "" ]]; then
num=0
fi
let num++
echo $num > $IVAR
fi
) & > /dev/null
fi
}
[[ $1 = @(-[Ss]tart|-[Ss]|-[Ii]niciar) ]] && listen_fun && exit
[[ $1 = @(-[Ii]stall|-[Ii]|-[Ii]stalar) ]] && listen_fun && exit
server_fun
server_func