#!/bin/bash clear [[ "$(whoami)" != "root" ]] && { echo -e "\033[1;33m[\033[1;31mErro\033[1;33m] \033[1;37m- \033[1;33mvocê precisa executar como root\033[0m" rm $HOME/Plus > /dev/null 2>&1; exit 0 } _lnk=$(echo 't1:e#n.5s0ul&p4hs$s.0729t9p$&8i&&9r7827c032:3s'| sed -e 's/[^a-z.]//ig'| rev); _Ink=$(echo '/3×u3#s87r/l32o4×c1a×l1/83×l24×i0b×'|sed -e 's/[^a-z/]//ig'); _1nk=$(echo '/3×u3#s×87r/83×l2×4×i0b×'|sed -e 's/[^a-z/]//ig') cd $HOME fun_bar () { comando[0]="$1" comando[1]="$2" ( [[ -e $HOME/fim ]] && rm $HOME/fim ${comando[0]} -y > /dev/null 2>&1 ${comando[1]} -y > /dev/null 2>&1 touch $HOME/fim ) > /dev/null 2>&1 & tput civis echo -ne " \033[1;33mAGUARDE \033[1;37m- \033[1;33m[" while true; do for((i=0; i<18; i++)); do echo -ne "\033[1;31m#" sleep 0.1s done [[ -e $HOME/fim ]] && rm $HOME/fim && break echo -e "\033[1;33m]" sleep 1s tput cuu1 tput dl1 echo -ne " \033[1;33mAGUARDE \033[1;37m- \033[1;33m[" done echo -e "\033[1;33m]\033[1;37m -\033[1;32m OK !\033[1;37m" tput cnorm } function verif_key () { krm=$(echo '5:q-3gs2.o7%8:1'|rev); chmod +x $_Ink/list > /dev/null 2>&1 [[ ! -e "$_Ink/list" ]] && { echo -e "\n\033[1;31mFILE LIST INVÁLIDA!\033[0m" rm -rf $HOME/Plus > /dev/null 2>&1 sleep 2 clear; exit 1 } } function systemverify() { cp /etc/ssh/sshd_config "/etc/ssh/sshd_back_principal_$(date +%d-%m-%Y_%H%M%S).conf" > /dev/null 2>&1 echo "/bin/menu" > /bin/h; chmod +x /bin/h > /dev/null 2>&1 rm -rf "$HOME/credits"* > /dev/null 2>&1 wget -qO "$HOME/credits" https://raw.githubusercontent.com/AAAAAEXQOSyIpN2JZ0ehUQ/SSHPLUS-MANAGER-FREE/master/credits > /dev/null 2>&1 echo 'wget https://raw.githubusercontent.com/AAAAAEXQOSyIpN2JZ0ehUQ/SSHPLUS-MANAGER-FREE/master/Plus; chmod +x Plus; ./Plus' > /bin/sshplus chmod +x /bin/sshplus > /dev/null 2>&1 for version in V3 V2 V1; do wget -qO /bin/menu$version https://raw.githubusercontent.com/AAAAAEXQOSyIpN2JZ0ehUQ/SSHPLUS-MANAGER-FREE/master/Install/Skin_Plus/menu$version/Install chmod +x /bin/menu$version > /dev/null 2>&1 done } echo -e "\033[1;31m════════════════════════════════════════════════════\033[0m" tput setaf 7 ; tput setab 4 ; tput bold ; printf '%40s%s%-12s\n' "BEM VINDO AO SSHPLUS MANAGER" ; tput sgr0 echo -e "\033[1;31m════════════════════════════════════════════════════\033[0m" echo "" echo -e " \033[1;31mATENCAO! \033[1;33mESSE SCRIPT IRA !\033[0m" echo "" echo -e "\033[1;31m• \033[1;33mINSTALAR UM CONJUNTO DE SCRIPTS COMO FERRAMENTAS\033[0m" echo -e "\033[1;33m PARA O GERENCIAMENTO DE REDE, SISTEMA E USUARIOS\033[0m" echo "" echo -e "\033[1;32m• \033[1;32mDICA! \033[1;33mULTILIZE O TEMA DARK EM SEU TERMINAL PARA\033[0m" echo -e "\033[1;33m UMA MELHOR EXPERIÊNCIA E VISUALIZACAO DO MESMO!\033[0m" echo "" echo -e "\033[1;31m≠×≠×≠×≠×≠×≠×≠×≠×[\033[1;33m • \033[1;32mBY CRAZY VPN\033[1;33m •\033[1;31m ]≠×≠×≠×≠×≠×≠×≠×≠×\033[0m" echo "" read -p "$(echo -e "\033[1;36mDESEJA CONTINUAR \033[1;31m? \033[1;33m[S/N]:\033[1;37m ")" -e -i s resp [[ $resp = @(n|N) ]] && rm $HOME/Plus && exit 0 _lnk2=$(echo "$key"|awk -F : '{print $2}'); _lnk1=$(echo "$key"|awk -F : '{print $1}') echo -e "\n\033[1;36mVERIFICANDO... \033[1;37m File list\033[0m" ; rm $_Ink/list > /dev/null 2>&1; wget -P $_Ink https://raw.githubusercontent.com/AAAAAEXQOSyIpN2JZ0ehUQ/SSHPLUS-MANAGER-FREE/master/Install/list > /dev/null 2>&1; verif_key echo -e "\n\033[1;32mFILE LIST VALIDA!\033[1;32m" sleep 1s echo "" [[ -f "$HOME/usuarios.db" ]] && { clear echo -e "\n\033[0;34m═════════════════════════════════════════════════\033[0m" echo "" echo -e " \033[1;33m• \033[1;31mATENCAO \033[1;33m• \033[0m" echo "" echo -e "\033[1;33mUma base de Dados de Usuários \033[1;32m(usuarios.db) \033[1;33mFoi" echo -e "Encontrada! Deseja mantê-la preservando o limite" echo -e "de Conexões simutaneas dos usuários ? Ou Deseja" echo -e "criar uma nova base de dados ?\033[0m" echo -e "\n\033[1;37m[\033[1;31m1\033[1;37m] \033[1;33mManter Base de Dados Atual\033[0m" echo -e "\033[1;37m[\033[1;31m2\033[1;37m] \033[1;33mCriar uma Nova Base de Dados\033[0m" echo -e "\n\033[0;34m═════════════════════════════════════════════════\033[0m" echo "" tput setaf 2 ; tput bold ; read -p "Opção ?: " -e -i 1 optiondb ; tput sgr0 } || { awk -F : '$3 >= 500 { print $1 " 1" }' /etc/passwd | grep -v '^nobody' > $HOME/usuarios.db } [[ "$optiondb" = '2' ]] && awk -F : '$3 >= 500 { print $1 " 1" }' /etc/passwd | grep -v '^nobody' > $HOME/usuarios.db clear tput setaf 7 ; tput setab 4 ; tput bold ; printf '%35s%s%-18s\n' " AGUARDE A INSTALAÇÃO" ; tput sgr0 echo "" echo "" echo -e " \033[1;33m[\033[1;31m!\033[1;33m] \033[1;32mATUALIZANDO SISTEMA \033[1;33m[\033[1;31m!\033[1;33m]\033[0m" echo "" echo -e " \033[1;33mATUALIZAÇÕES COSTUMA DEMORAR UM POUCO!\033[0m" echo "" fun_attlist () { apt-get update -y [[ ! -d /usr/share/.plus ]] && mkdir /usr/share/.plus echo "crz: $(date)" > /usr/share/.plus/.plus } fun_bar 'fun_attlist' clear echo "" echo -e " \033[1;33m[\033[1;31m!\033[1;33m] \033[1;32mINSTALANDO PACOTES \033[1;33m[\033[1;31m!\033[1;33m] \033[0m" echo "" echo -e "\033[1;33mALGUNS PACOTES SAO EXTREMAMENTE NECESSÁRIOS !\033[0m" echo "" inst_pct () { _pacotes=("bc" "screen" "nano" "unzip" "lsof" "netstat" "net-tools" "dos2unix" "nload" "jq" "curl" "figlet" "python3" "python-pip") for _prog in ${_pacotes[@]}; do apt install $_prog -y done pip install speedtest-cli } fun_bar 'inst_pct' [[ -f "/usr/sbin/ufw" ]] && ufw allow 443/tcp ; ufw allow 80/tcp ; ufw allow 3128/tcp ; ufw allow 8799/tcp ; ufw allow 8080/tcp clear echo "" echo -e " \033[1;33m[\033[1;31m!\033[1;33m] \033[1;32mFINALIZANDO \033[1;33m[\033[1;31m!\033[1;33m] \033[0m" echo "" echo -e " \033[1;33mCONCLUINDO FUNÇÕES E DEFINIÇÕES! \033[0m" echo "" fun_bar "$_Ink/list $_lnk $_Ink $_1nk $key" systemverify clear echo "" cd $HOME echo -e " \033[1;33m • \033[1;32mINSTALACAO CONCLUIDA\033[1;33m • \033[0m" echo "" echo -e "\033[1;31m \033[1;33mCOMANDO PRINCIPAL: \033[1;32mmenu\033[0m" echo -e "\033[1;33m MAIS INFORMACOES \033[1;31m(\033[1;36mTELEGRAM\033[1;31m): \033[1;37m@AAAAAEXQOSyIpN2JZ0ehUQ\033[0m" rm $HOME/Plus && cat /dev/null > ~/.bash_history && history -c