| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230 |
- #!/bin/bash
- #25/01/2021 by @Kalix1
- clear
- clear
- SCPdir="/etc/VPS-MX"
- SCPfrm="${SCPdir}/herramientas" && [[ ! -d ${SCPfrm} ]] && exit
- SCPinst="${SCPdir}/protocolos"&& [[ ! -d ${SCPinst} ]] && exit
- declare -A cor=( [0]="\033[1;37m" [1]="\033[1;34m" [2]="\033[1;31m" [3]="\033[1;33m" [4]="\033[1;32m" )
- dirapache="/usr/local/lib/ubuntn/apache/ver" && [[ ! -d ${dirapache} ]] && exit
- mportas () {
- unset portas
- portas_var=$(lsof -V -i tcp -P -n | grep -v "ESTABLISHED" |grep -v "COMMAND" | grep "LISTEN")
- while read port; do
- var1=$(echo $port | awk '{print $1}') && var2=$(echo $port | awk '{print $9}' | awk -F ":" '{print $2}')
- [[ "$(echo -e $portas|grep "$var1 $var2")" ]] || portas+="$var1 $var2\n"
- done <<< "$portas_var"
- i=1
- echo -e "$portas"
- }
- fun_bar () {
- comando="$1"
- _=$(
- $comando > /dev/null 2>&1
- ) & > /dev/null
- pid=$!
- while [[ -d /proc/$pid ]]; do
- echo -ne " \033[1;33m["
- for((i=0; i<20; i++)); do
- echo -ne "\033[1;31m##"
- sleep 0.5
- done
- echo -ne "\033[1;33m]"
- sleep 1s
- echo
- tput cuu1
- tput dl1
- done
- echo -e " \033[1;33m[\033[1;31m########################################\033[1;33m] - \033[1;32m OK \033[0m"
- sleep 1s
- }
- ssl_stunel () {
- [[ $(mportas|grep stunnel4|head -1) ]] && {
- echo -e "\033[1;33m $(fun_trans "Deteniendo Stunnel")"
- msg -bar
- service stunnel4 stop > /dev/null 2>&1
- fun_bar "apt-get purge stunnel4 -y"
- msg -bar
- echo -e "\033[1;33m $(fun_trans "Detenido Con Exito!")"
- msg -bar
- return 0
- }
- echo -e "\033[1;32m $(fun_trans " INSTALADOR SSL By VPS-MX")"
- msg -bar
- echo -e "\033[1;33m $(fun_trans "Seleccione una puerta de redirección interna.")"
- echo -e "\033[1;33m $(fun_trans "Un puerto SSH/DROPBEAR/SQUID/OPENVPN/SSL")"
- msg -bar
- while true; do
- echo -e "\033[1;37m"
- read -p " Local-Port: " portx
- echo ""
- if [[ ! -z $portx ]]; then
- if [[ $(echo $portx|grep [0-9]) ]]; then
- [[ $(mportas|grep $portx|head -1) ]] && break || echo -e "\033[1;31m Puerto Invalido"
- fi
- fi
- done
- msg -bar
- DPORT="$(mportas|grep $portx|awk '{print $2}'|head -1)"
- echo -e "\033[1;33m Ahora Que Puerto sera SSL"
- msg -bar
- while true; do
- echo -e "\033[1;37m"
- read -p " Listen-SSL: " SSLPORT
- echo ""
- [[ $(mportas|grep -w "$SSLPORT") ]] || break
- echo -e "\033[1;33m Este Puerto esta en Uso"
- unset SSLPORT
- done
- msg -bar
- echo -e "\033[1;33m $(fun_trans "Instalando SSL")"
- msg -bar
- fun_bar "apt-get install stunnel4 -y"
- apt-get install stunnel4 -y > /dev/null 2>&1
- echo -e "client = no\n[SSL]\ncert = /etc/stunnel/stunnel.pem\naccept = ${SSLPORT}\nconnect = 127.0.0.1:${portx}" > /etc/stunnel/stunnel.conf
- ####Coreccion2.0#####
- openssl genrsa -out stunnel.key 2048 > /dev/null 2>&1
- # (echo "mx" ; echo "mx" ; echo "mx" ; echo "mx" ; echo "mx" ; echo "mx" ; echo "@vpsmx" )|openssl req -new -key stunnel.key -x509 -days 1000 -out stunnel.crt > /dev/null 2>&1
- openssl req -new -key stunnel.key -x509 -days 1000 -out stunnel.crt
- cat stunnel.crt stunnel.key > stunnel.pem
- mv stunnel.pem /etc/stunnel/
- ######-------
- sed -i 's/ENABLED=0/ENABLED=1/g' /etc/default/stunnel4
- service stunnel4 restart > /dev/null 2>&1
- msg -bar
- echo -e "\033[1;33m $(fun_trans "INSTALADO CON EXITO")"
- msg -bar
- rm -rf /etc/ger-frm/stunnel.crt > /dev/null 2>&1
- rm -rf /etc/ger-frm/stunnel.key > /dev/null 2>&1
- rm -rf /root/stunnel.crt > /dev/null 2>&1
- rm -rf /root/stunnel.key > /dev/null 2>&1
- return 0
- }
- SPR &
- ssl_stunel_2 () {
- echo -e "\033[1;32m $(fun_trans " AGREGAR MAS PUESRTOS SSL")"
- msg -bar
- echo -e "\033[1;33m $(fun_trans "Seleccione una puerta de redirección interna.")"
- echo -e "\033[1;33m $(fun_trans "Un puerto SSH/DROPBEAR/SQUID/OPENVPN/SSL")"
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- read -p " Local-Port: " portx
- echo ""
- if [[ ! -z $portx ]]; then
- if [[ $(echo $portx|grep [0-9]) ]]; then
- [[ $(mportas|grep $portx|head -1) ]] && break || echo -e "\033[1;31m $(fun_trans "Puerto Invalido")"
- fi
- fi
- done
- msg -bar
- DPORT="$(mportas|grep $portx|awk '{print $2}'|head -1)"
- echo -e "\033[1;33m $(fun_trans "Ahora Que Puerto sera SSL")"
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- read -p " Listen-SSL: " SSLPORT
- echo ""
- [[ $(mportas|grep -w "$SSLPORT") ]] || break
- echo -e "\033[1;33m $(fun_trans "Esta puerta está en uso")"
- unset SSLPORT
- done
- msg -bar
- echo -e "\033[1;33m $(fun_trans "Instalando SSL")"
- msg -bar
- fun_bar "apt-get install stunnel4 -y"
- echo -e "client = no\n[SSL+]\ncert = /etc/stunnel/stunnel.pem\naccept = ${SSLPORT}\nconnect = 127.0.0.1:${DPORT}" >> /etc/stunnel/stunnel.conf
- ######-------
- sed -i 's/ENABLED=0/ENABLED=1/g' /etc/default/stunnel4
- service stunnel4 restart > /dev/null 2>&1
- msg -bar
- echo -e "${cor[4]} INSTALADO CON EXITO"
- msg -bar
- rm -rf /etc/ger-frm/stunnel.crt > /dev/null 2>&1
- rm -rf /etc/ger-frm/stunnel.key > /dev/null 2>&1
- rm -rf /root/stunnel.crt > /dev/null 2>&1
- rm -rf /root/stunnel.key > /dev/null 2>&1
- return 0
- }
- ssl_stunel_3 () {
- clear
- clear
- msg -bar
- msg -tit
- echo -e "\033[1;93m SSL + PYDIREC \033[1;94m By @AleSosaCreaciones "
- msg -bar
- echo -e "\033[1;91m Deveras tener el Puerto 22 SSH y libre (80 y 443)"
- msg -bar
- install_python(){
- echo -e "\033[1;97m Activando Python Direc 80\n"
- fun_bar "apt-get install python -y"
- sleep 3
- screen -dmS pydic-80 python ${SCPinst}/python.py 80 "VPS-MX" && echo "80 VPS-MX" >> /etc/VPS-MX/PySSL.log
- msg -bar
- }
- install_ssl(){
- echo -e "\033[1;97m Activando Servicios SSL 80 ► 443\n"
- fun_bar "apt-get install stunnel4 -y"
- apt-get install stunnel4 -y > /dev/null 2>&1
- echo -e "client = no\n[SSL]\ncert = /etc/stunnel/stunnel.pem\naccept = 443\nconnect = 127.0.0.1:80" > /etc/stunnel/stunnel.conf
- openssl genrsa -out stunnel.key 2048 > /dev/null 2>&1
- #(echo "mx" ; echo "mx" ; echo "mx" ; echo "mx" ; echo "mx" ; echo "mx" ; echo "@vpsmx" )|openssl req -new -key stunnel.key -x509 -days 1000 -out stunnel.crt > /dev/null 2>&1
- openssl req -new -key stunnel.key -x509 -days 1000 -out stunnel.crt
- cat stunnel.crt stunnel.key > stunnel.pem
- mv stunnel.pem /etc/stunnel/
- ######-------
- sed -i 's/ENABLED=0/ENABLED=1/g' /etc/default/stunnel4
- service stunnel4 restart > /dev/null 2>&1
- rm -rf /root/stunnel.crt > /dev/null 2>&1
- rm -rf /root/stunnel.key > /dev/null 2>&1
- }
- install_python
- install_ssl
- msg -bar
- echo -e "${cor[4]} INSTALACION COMPLETA"
- msg -bar
- }
- clear
- clear
- msg -bar
- msg -bar3
- msg -tit
- echo -e "${cor[3]} INSTALADOR MONO Y MULTI SSL By @Kalix1"
- msg -bar
- echo -e "${cor[1]} Escoja la opcion deseada."
- msg -bar
- echo -e "${cor[4]} 1).-\033[1;37m INICIAR | PARAR SSL "
- echo -e "${cor[4]} 2).-\033[1;37m AGREGAR PUERTOS SSL "
- msg -bar
- echo -e "${cor[4]} 3).-\033[1;37m SSL+PYDIREC (AUTO CONFIGURACION) "
- echo -ne ""$(msg -bar)" \n$(msg -verd " 0).-") $(msg -verm2 "==>")" && msg -bra " \e[97m\033[1;41m VOLVER \033[1;37m"
- msg -bar
- echo -ne "\033[1;37mDigite solo el numero segun su respuesta: "
- read opcao
- case $opcao in
- 1)
- msg -bar
- ssl_stunel
- ;;
- 2)
- msg -bar
- ssl_stunel_2
- ;;
- 3)
- msg -bar
- ssl_stunel_3
- msg -ne "Enter Para Continuar" && read enter
- /etc/VPS-MX/protocolos/ssl.sh
- ;;
- 4)
- exit
- ;;
- esac
|