1
0
mirror of https://github.com/AAAAAEXQOSyIpN2JZ0ehUQ/SSHPLUS-MANAGER-FREE.git synced 2025-02-12 05:38:01 +00:00
AAAAAEXQOSyIpN2JZ0ehUQ 04c2ce7afb Update Script
2023-07-17 01:56:36 -04:00

448 lines
16 KiB
Bash

#!/bin/bash
clear
#====================================================
# CODIGO FUENTE: iLLuminati Dev Team
#====================================================
# SCRIPT: GENERADOR DE KEY SSHPLUS MANAGER
# DATA ATUALIZACAO: 01-03-2022
# CONTATO TELEGRAM: @AAAAAEXQOSyIpN2JZ0ehUQ
# GRUPO TELEGRAM: https://t.me/AAAAAEXQOSyIpN2JZ0ehUQ
#====================================================
if [ ! -e /home/keyssh ]; then
mkdir /home/keyssh
fi
key_tmp="$RANDOM:$RANDOM"
a="$RANDOM"
b="$RANDOM"
echo "$a" > /tmp/a
echo "$b" > /tmp/b
pasta1=$(cat /tmp/a)
pasta2=$(cat /tmp/b)
signus=":"
x="ok"
fun_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"
}
menu ()
{
fun_gerkey () {
echo ""
echo -ne "\033[1;36mInfome o nome do Cliente:\033[1;37m "; read client
if [[ -z $client ]]; then
echo -e "\033[1;31m Nome invalido ou vazio\033[0m"
sleep 2
exit 0
fi
echo ""
echo -ne "\033[1;36mQuantos minutos essa key deve durar\033[1;33m
(\033[1;31mm=Minutos, h=Horas, d=Dias\033[1;33m)
(\033[1;31mEX: \033[1;32m20m\033[1;33m)\033[1;37m: "; read _temp
if [[ -z $_temp ]]; then
echo -e "\033[1;31m Tempo invalido ou vazio\033[0m"
sleep 2
exit 0
fi
VERSION_ID=$(cat /etc/os-release | grep "VERSION_ID")
if [[ "$VERSION_ID" = 'VERSION_ID="14.04"' ]]; then
[[ ! -e /var/www/index.html ]] && touch /var/www/index.html > /dev/null 2>&1
mkdir /var/www/$pasta1
mkdir /var/www/$pasta1/$pasta2
touch /home/keyssh/$client
cp /home/list /var/www/$pasta1/$pasta2/list
cp -a /home/_script_$/. /var/www/$pasta1
chmod 777 /var/www/$pasta1/crz/*
else
[[ ! -e /var/www/html/index.html ]] && touch /var/www/html/index.html > /dev/null 2>&1
mkdir /var/www/html/$pasta1
mkdir /var/www/html/$pasta1/$pasta2
touch /home/keyssh/$client
cp /home/list /var/www/html/$pasta1/$pasta2/list
cp -a /home/_script_$/. /var/www/html/$pasta1
chmod 777 /var/www/html/$pasta1/crz/*
fi
clear
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo -e "\033[1;33m⇱ SCRIPT SSHPLUS MANAGER ⇲ \033[0m"
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo ""
echo -e "\033[1;37mwget $IP/scripts/Plus; chmod 777 Plus; ./Plus"
echo ""
echo -e "\033[1;32mKEY: \033[1;37m$pasta1$signus$pasta2\033[0m"
echo ""
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo -e "\033[1;33mObrigado Pela Sua Contribuicao! 👍
DEV: CRAZY ✌️😎 \033[0m"
echo ""
echo -e "\033[1;32mUsuario: \033[1;37m $client\033[0m"
echo -e "\033[1;32mValidade: \033[1;37m$_temp\033[0m"
echo -e "\033[1;32mVersao: \033[1;37m $(cat /home/_script_$/crz/versao)\033[0m"
VERSION_ID=$(cat /etc/os-release | grep "VERSION_ID")
if [[ "$VERSION_ID" = 'VERSION_ID="14.04"' ]]; then
echo "#!/bin/bash
#NAME: $client
#KEY: $pasta1$signus$pasta2
#VALIDADE: $_temp
sleep $_temp
rm -rf /var/www/pasta1
rm -rf /home/keyssh/$client
exit" > /home/keyssh/$client
else
echo "#!/bin/bash
#NAME: $client
#KEY: $pasta1$signus$pasta2
#VALIDADE: $_temp
sleep $_temp
rm -rf /var/www/html/$pasta1
rm -rf /home/keyssh/$client
exit" > /home/keyssh/$client
fi
bash /home/keyssh/$client &
}
fun_gerkey_fixa () {
echo ""
echo -ne "\033[1;36mInfome o nome do Cliente:\033[1;37m "; read client
if [[ -z $client ]]; then
echo -e "\033[1;31m Nome invalido ou vazio\033[0m"
sleep 2
exit 0
fi
VERSION_ID=$(cat /etc/os-release | grep "VERSION_ID")
if [[ "$VERSION_ID" = 'VERSION_ID="14.04"' ]]; then
mkdir /var/www/$pasta1
mkdir /var/www/$pasta1/$pasta2
touch /home/keyssh/$client
cp /home/list /var/www/$pasta1/$pasta2/list
cp -a /home/_script_$/. /var/www/$pasta1
chmod 777 /var/www/$pasta1/crz/*
else
[[ ! -e /var/www/html/index.html ]] && touch /var/www/html/index.html > /dev/null 2>&1
mkdir /var/www/html/$pasta1
mkdir /var/www/html/$pasta1/$pasta2
touch /home/keyssh/$client
cp /home/list /var/www/html/$pasta1/$pasta2/list
cp -a /home/_script_$/. /var/www/html/$pasta1
chmod 777 /var/www/html/$pasta1/crz/*
fi
clear
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo -e "\033[1;33m⇱ SCRIPT SSHPLUS MANAGER ⇲ \033[0m"
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo ""
echo -e "\033[1;37mwget $IP/scripts/Plus; chmod 777 Plus; ./Plus"
echo ""
echo -e "\033[1;32mKEY: \033[1;37m$pasta1$signus$pasta2\033[0m"
echo ""
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo -e "\033[1;33mObrigado Pela Sua Contribuicao! 👍
DEV: CRAZY ✌️😎 \033[0m"
echo ""
echo -e "\033[1;32mUsuario: \033[1;37m $client\033[0m"
echo -e "\033[1;32mValidade: \033[1;37mPermanente\033[0m"
echo -e "\033[1;32mVersao: \033[1;37m $(cat /home/_script_$/crz/versao)\033[0m"
VERSION_ID=$(cat /etc/os-release | grep "VERSION_ID")
if [[ "$VERSION_ID" = 'VERSION_ID="14.04"' ]]; then
echo "#!/bin/bash
#NAME: $client
#KEY: $pasta1$signus$pasta2
#VALIDADE: $_temp
rm -rf /var/www/$pasta1
rm -rf /home/keyssh/$client
exit" > /home/keyssh/$client
else
echo "#!/bin/bash
#NAME: $client
#KEY: $pasta1$signus$pasta2
#VALIDADE: $_temp
rm -rf /var/www/html/$pasta1
rm -rf /home/keyssh/$client
exit" > /home/keyssh/$client
fi
# bash /home/keyssh/$client &
}
fun_gerkey_manual () {
echo ""
echo -ne "\033[1;36mInfome o nome do Cliente:\033[1;37m "; read client
if [[ -z $client ]]; then
echo -e "\033[1;31m Nome invalido ou vazio\033[0m"
sleep 2
exit 0
fi
echo ""
echo -ne "\033[1;36mQuantos minutos essa key deve durar\033[1;33m
(\033[1;31mm=Minutos, h=Horas, d=Dias\033[1;33m)
(\033[1;31mEX: \033[1;32m20m\033[1;33m)\033[1;37m: "; read _temp
if [[ -z $_temp ]]; then
echo -e "\033[1;31m Tempo invalido ou vazio\033[0m"
sleep 2
exit 0
fi
echo ""
echo -ne "\033[1;36mDigite a Key [ xxxxxxxx:xxxxxxxx ]\033[1;33m
(\033[1;31mEX: \033[1;32m1234:1234\033[1;33m)\033[1;37m: "; read key
_lnk1=$(echo "$key"|awk -F : '{print $1}')
_lnk2=$(echo "$key"|awk -F : '{print $2}')
echo "$_lnk1" > /tmp/c
echo "$_lnk2" > /tmp/d
key1p=$(cat /tmp/c)
key2p=$(cat /tmp/d)
signus=":"
if [ "$key" = "" ]; then
echo -e "\033[1;31m key nao alterada\033[0m"
sleep 2
exit 0
fi
VERSION_ID=$(cat /etc/os-release | grep "VERSION_ID")
if [[ "$VERSION_ID" = 'VERSION_ID="14.04"' ]]; then
[[ ! -e /var/www/index.html ]] && touch /var/www/index.html > /dev/null 2>&1
[[ ! -d /var/www/$key1p ]] && mkdir /var/www/$key1p
[[ ! -d /var/www/$key1p/$key2p ]] && mkdir /var/www/$key1p/$key2p
touch /home/keyssh/$client
cp /home/list /var/www/$key1p/$key2p/list
cp -a /home/_script_$/. /var/www/$key1p
chmod 777 /var/www/$key1p/crz/*
else
[[ ! -e /var/www/html/index.html ]] && touch /var/www/html/index.html > /dev/null 2>&1
[[ ! -d /var/www/html/$key1p ]] && mkdir /var/www/html/$key1p
[[ ! -d /var/www/html/$key1p/$key2p ]] && mkdir /var/www/html/$key1p/$key2p
touch /home/keyssh/$client
cp /home/list /var/www/html/$key1p/$key2p/list
cp -a /home/_script_$/. /var/www/html/$key1p
chmod 777 /var/www/html/$key1p/crz/*
fi
clear
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo -e "\033[1;33m⇱ SCRIPT SSHPLUS MANAGER ⇲ \033[0m"
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo ""
echo -e "\033[1;37mwget $IP/scripts/Plus; chmod 777 Plus; ./Plus"
echo ""
echo -e "\033[1;32mKEY: \033[1;37m$key1p$signus$key2p\033[0m"
echo ""
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo -e "\033[1;33mObrigado Pela Sua Contribuicao! 👍
DEV: CRAZY ✌️😎 \033[0m"
echo ""
echo -e "\033[1;32mUsuario: \033[1;37m $client\033[0m"
echo -e "\033[1;32mValidade: \033[1;37m$_temp\033[0m"
echo -e "\033[1;32mVersao: \033[1;37m $(cat /home/_script_$/crz/versao)\033[0m"
VERSION_ID=$(cat /etc/os-release | grep "VERSION_ID")
if [[ "$VERSION_ID" = 'VERSION_ID="14.04"' ]]; then
echo "#!/bin/bash
#NAME: $client
#KEY: $key1p$signus$key2p
#VALIDADE: $_temp
sleep $_temp
rm -rf /var/www/$key1p
rm -rf /home/keyssh/$client
exit" > /home/keyssh/$client
else
echo "#!/bin/bash
#NAME: $client
#KEY: $key1p$signus$key2p
#VALIDADE: $_temp
sleep $_temp
rm -rf /var/www/html/$key1p
rm -rf /home/keyssh/$client
exit" > /home/keyssh/$client
fi
bash /home/keyssh/$client &
}
pluskeygen_onoff () {
if [ ! -e /home/PlusKeygen-Active ]; then
# KEYGEN SSHPPLUS ACTIVE
apt-get install apache2 -y &>/dev/null
sed -i "s;Listen 80;Listen 81;g" /etc/apache2/ports.conf
#echo "" >> /etc/apache2/ports.conf
echo "Listen 80" >> /etc/apache2/ports.conf
service apache2 restart > /dev/null 2>&1 &
echo "#KEYGEN SSHPPLUS ACTIVE" > /home/PlusKeygen-Active
echo ""
echo -e "\033[1;32m[!] Apache2 Porta 80"
else
# KEYGEN SSHPPLUS DEACTIVATED
sed -i "s;Listen 80;# Listen off;g" /etc/apache2/ports.conf
service apache2 restart > /dev/null 2>&1
rm -rf /home/PlusKeygen-Active
echo ""
echo -e "\033[1;32m[!] Removido Apache2 Porta 80"
fi
}
fun_keyson () {
echo -e "$barra"
echo -e " \033[1;31m++| \033[1;32mKEYS ONLINE \033[1;31m|++ \033[0m"
echo -e "$barra"
echo ""
[ "$(ls -A /home/keyssh)" ] && echo -e "\033[1;32m Key Online!\033[1;37m" || echo -e "\033[1;31m Nenhuma Key Online!\033[0m"
echo ""
ls /home/keyssh
}
fun_delkey () {
echo -e "$barra"
echo -e " \033[1;31m++| \033[1;32mREMOVER KEY ONLINE \033[1;31m|++ \033[0m"
echo -e "$barra"
echo -e "\033[1;33m"
for keyson in $(ls /home/keyssh |sort |sed 's/.sh//g')
do
echo " $keyson"
done
echo ""
echo -ne "\033[1;36m Imforme o nome: \033[1;37m "; read client
if [ -e /home/keyssh/$client ]; then
tmp=$(cat /home/keyssh/$client | sed -n '2 p')
sed -i "s/\b$tmp\b/echo -n/g" /home/keyssh/$client > /dev/null 2>&1
bash /home/keyssh/$client;
sleep 2
echo -e "\n\033[1;32m Key Removida Com Sucesso !\033[0m"
else
echo -e "\n\033[1;31m Key nao existente !\033[0m"
sleep 2.5s
fi
}
remover_plus () {
echo -e "\033[1;31mRemovendo...\033[0m"
rm -rf /home/list /home/index.html /home/PlusKeygen-Active /home/_script_$ /home/keyssh > /dev/null 2>&1
rm -rf /bin/keyssh /bin/key /bin/otimizar > /dev/null 2>&1
rm -rf /var/www/html/Index.php /var/www/html/script /var/www/html/scripts > /dev/null 2>&1
pkill -f 80
wget -O /etc/apache2/ports.conf https://raw.githubusercontent.com/AAAAAEXQOSyIpN2JZ0ehUQ/SSHPLUS-MANAGER-FREE/master/Install/Generador/Install/ports.conf > /dev/null 2>&1
service apache2 restart > /dev/null 2>&1
}
actualiza_plus () {
rm $HOME/instgerador.sh* > /dev/null 2>&1; wget https://raw.githubusercontent.com/AAAAAEXQOSyIpN2JZ0ehUQ/SSHPLUS-MANAGER-FREE/master/Install/Generador/instgerador.sh; chmod +x instgerador.sh* && ./instgerador.sh*
}
mine_port () {
local portasVAR=$(lsof -V -i tcp -P -n | grep -v "ESTABLISHED" |grep -v "COMMAND" | grep "LISTEN")
local NOREPEAT
local reQ
local Port
while read port; do
reQ=$(echo ${port}|awk '{print $1}')
Port=$(echo {$port} | awk '{print $9}' | awk -F ":" '{print $2}')
[[ $(echo -e $NOREPEAT|grep -w "$Port") ]] && continue
NOREPEAT+="$Port\n"
case ${reQ} in
apache|apache2)
[[ -z $APC ]] && echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m" && local APC="\033[1;31mAPACHE: \033[1;37m"
APC+="$Port ";;
esac
done <<< "${portasVAR}"
[[ ! -z $APC ]] && echo -e $APC
}
while true $x != "ok"
do
_ram=$(printf ' %-9s' "$(free -h | grep -i mem | awk {'print $2'})")
_usor=$(printf '%-8s' "$(free -m | awk 'NR==2{printf "%.2f%%", $3*100/$2 }')")
_usop=$(printf '%-1s' "$(top -bn1 | awk '/Cpu/ { cpu = "" 100 - $8 "%" }; END { print cpu }')")
_core=$(printf '%-1s' "$(grep -c cpu[0-9] /proc/stat)")
clear
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo -e " \033[1;31m++| \033[1;32mKEYGEN SSHPLUS \033[1;31m|++ \033[1;32m[ VERSAO: 2.0 BETA ]\033[0m"
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
sts=$([ "$(ls -A /home/keyssh)" ] && echo -e "\033[1;32m Key Online!\033[1;37m" || echo -e "\033[1;31m Nenhuma Key Online!\033[0m")
echo -e "\033[1;31mSTATUS: $sts"
mine_port
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo -e "\033[1;31mRAM:\033[1;37m $_usor \033[1;31mNUCLEO:\033[1;37m $_usop \033[0m"
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo ""
echo -e "\033[1;37m |1| \033[1;31m<----> \033[1;36mGERAR KEY ALEATORIA \033[1;32m [CV] \033[0m"
echo -e "\033[1;37m |2| \033[1;31m<----> \033[1;36mGERAR KEY ALEATORIA FIXA \033[1;32m [SV] \033[0m"
echo -e "\033[1;37m |3| \033[1;31m<----> \033[1;36mGERAR KEY MANUAL\033[1;33m! \033[1;32m [CV] \033[0m"
if [ ! -e /home/PlusKeygen-Active ]; then
echo -e "\033[1;37m |4| \033[1;31m<----> \033[1;31m(PARADO)\033[1;36m - INICIAR KEYGEN\033[0m"
else
echo -e "\033[1;37m |4| \033[1;31m<----> \033[1;32m(RODANDO)\033[1;36m - PARAR KEYGEN\033[0m"
fi
echo -e "\033[1;37m |5| \033[1;31m<----> \033[1;36mKEYS ONLINE\033[0m"
echo -e "\033[1;37m |6| \033[1;31m<----> \033[1;36mREMOVER KEY\033[0m"
# echo -e "\033[1;37m |X| \033[1;31m<----> \033[1;36mLOG DE REGISTROS\033[0m"
echo -e "\033[1;37m |7| \033[1;31m<----> \033[1;33m[!] \033[1;32mACTUALIZAR \033[0m"
echo -e "\033[1;37m |8| \033[1;31m<----> \033[1;33m[!] \033[1;31mDESINSTALAR KEYGEN\033[0m "
echo -e "\033[1;37m |0| \033[1;31m<----> \033[1;36mSAIR DO KEYGEN\033[0m"
echo ""
echo -e " \033[1;37m@AAAAAEXQOSyIpN2JZ0ehUQ\033[0m"
echo -e "\033[0m\e[34m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\033[0m"
echo ""
echo -ne "\033[1;32mOQUE DESEJA FAZER \033[1;33m?\033[1;31m?\033[1;37m : "; read x
case "$x" in
1 | 01)
fun_gerkey
echo -ne "\n\033[1;31mENTER \033[1;33mpara retornar ao \033[1;32mMENU!\033[0m"; read
menu
;;
2 | 02)
fun_gerkey_fixa
echo -ne "\n\033[1;31mENTER \033[1;33mpara retornar ao \033[1;32mMENU!\033[0m"; read
menu
;;
3 | 03)
fun_gerkey_manual
echo -ne "\n\033[1;31mENTER \033[1;33mpara retornar ao \033[1;32mMENU!\033[0m"; read
menu
;;
4 | 04)
pluskeygen_onoff
echo -ne "\n\033[1;31mENTER \033[1;33mpara retornar ao \033[1;32mMENU!\033[0m"; read
menu
;;
5 | 05)
clear
fun_keyson
echo -ne "\n\033[1;31mENTER \033[1;33mpara retornar ao \033[1;32mMENU!\033[0m"; read
menu
;;
6 | 06)
clear
fun_delkey
echo -ne "\n\033[1;31mENTER \033[1;33mpara retornar ao \033[1;32mMENU!\033[0m"; read
menu
;;
7 | 07)
clear
actualiza_plus
exit;
;;
8 | 08)
remover_plus
clear
exit;
;;
9 | 09)
clear
otimizar
echo -ne "\n\033[1;31mENTER \033[1;33mpara retornar ao \033[1;32mMENU!\033[0m"; read
menu
;;
0 | 00)
echo -e "\033[1;31mSalindo...\033[0m"
sleep 1
clear
exit;
;;
*)
echo -e "\n\033[1;31mOpcao invalida !\033[0m"
sleep 1
esac
done
}
menu
#fim