| 
					
				 | 
			
			
				@@ -117,6 +117,9 @@ comprobarError() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		807) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			error="$type $codeNum:\t'firewall-cmd' no instalado.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		808) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			error="$type $codeNum:\t'tput' no instalado.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		900) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			error="$type $codeNum:\tError interno (habilitar servicio).\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			;; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -205,6 +208,9 @@ comprobarDependencias() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Comprobamos hostnamectl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	which hostnamectl > /dev/null 2>&1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	comprobarError $? 802 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	# Comprobamos tput 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	which tput > /dev/null 2>&1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	comprobarError $? 808 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $debianOS = true ];then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		# Comprobamos apt-get 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		which apt-get > /dev/null 2>&1 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -244,6 +250,8 @@ inicializarVariables() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	mediaWikiOn=false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	moodleOn=false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	actualizacionesOn=false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	progreso=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	progresoTotal=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 instalacionExpress() { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -253,22 +261,25 @@ instalacionExpress() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	mediaWikiOn=true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	moodleOn=true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	actualizacionesOn=true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	progresoTotal=15 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Preguntas mínimas 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	establecerFQDN 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	leerSQLPasswd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 mostrarBienvenida() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	ANCHO=$(tput cols) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	ALTO=$(tput lines) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $debianOS = false ] && [ $rhelOS = false ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		whiptail --title "ERROR S.O. NO SOPORTADO" --msgbox "Este script automatiza la creación de una web MediaWiki SOLO para distribuciones Linux de la familia Debian (Ubuntu, Linux Mint, ...) y de la familia Red-Hat (CentOS, Fedora, ...).\n\nInformación del sistema:\nOS: $OS $DIST $REV\n$HDInfo" 20 70 --ok-button "Salir" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		whiptail --title "ERROR S.O. NO SOPORTADO" --msgbox "Este script automatiza la creación de una web MediaWiki SOLO para distribuciones Linux de la familia Debian (Ubuntu, Linux Mint, ...) y de la familia Red-Hat (CentOS, Fedora, ...).\n\nInformación del sistema:\nOS: $OS $DIST $REV\n$HDInfo" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) --ok-button "Salir" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		exit 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	whiptail --title "INSTALACION MEDIAWIKI" --yesno "Este script automatiza completamente la instalación de una wiki.\nPara ello instala un servidor LAMP, el software MediaWiki y lo configura todo.\n\nInformación del sistema:\nOS: $OS $DIST $REV\n$HDInfo" 20 70 --yes-button "Continuar" --no-button "Salir" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	whiptail --title "INSTALACION MEDIAWIKI" --yesno "Este script automatiza completamente la instalación de una wiki.\nPara ello instala un servidor LAMP, el software MediaWiki y lo configura todo.\n\nInformación del sistema:\nOS: $OS $DIST $REV\n$HDInfo" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) --yes-button "Continuar" --no-button "Salir" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	comprobarError $? 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 mostrarExpress() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	express=$(whiptail --title "INSTALACION EXPRESS" --radiolist "<ESPACIO>: seleccionar   <TAB>: cambiar   <FLECHAS>: moverse\n\nLa instalación express instala Apache2, MariaDB, PHP-7, Let's Encrypt, MediaWiki, Moodle y actualizaciones automáticas.\nSeleccione el tipo de instalación que desee:" 20 70 2 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	express=$(whiptail --title "INSTALACION EXPRESS" --radiolist "<ESPACIO>: seleccionar   <TAB>: cambiar   <FLECHAS>: moverse\n\nLa instalación express instala Apache2, MariaDB, PHP-7, Let's Encrypt, MediaWiki, Moodle y actualizaciones automáticas.\nSeleccione el tipo de instalación que desee:" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) 2 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	"Express" "Instalación rápida" ON \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	"Avanzada" "Permite escoger todas las opciones disponibles" OFF \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	--ok-button "Continuar" --cancel-button "Salir" 3>&1 1>&2 2>&3) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -288,7 +299,7 @@ mostrarExpress() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 mostrarAvanzada() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	componentes=$(whiptail --title "INSTALACION AVANZADA" --checklist "<ESPACIO>: seleccionar   <TAB>: cambiar   <FLECHAS>: moverse\n\nEscoge los componentes que quieres instalar:" 20 70 7 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	componentes=$(whiptail --title "INSTALACION AVANZADA" --checklist "<ESPACIO>: seleccionar   <TAB>: cambiar   <FLECHAS>: moverse\n\nEscoge los componentes que quieres instalar:" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) 7 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	"WebServer" "Instalar servidor web http/https" ON \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	"Database" "Instalar una base de datos SQL" ON \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	"PHP" "Instala PHP7" ON \ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -303,34 +314,42 @@ mostrarAvanzada() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		case $i in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			\"WebServer\") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mostrarWebServer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progresoTotal=$((progresoTotal + 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			\"Database\") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mostrarDatabase 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progresoTotal=$((progresoTotal + 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			\"PHP\") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				phpOn=true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progresoTotal=$((progresoTotal + 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			\"SSL/TLS\") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				# 2 Opciones: Let's Encrypt o Autofirmado 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progresoTotal=$((progresoTotal + 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			\"MediaWiki\") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				mediaWikiOn=true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progresoTotal=$((progresoTotal + 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			\"Moodle\") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				moodleOn=true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progresoTotal=$((progresoTotal + 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			\"Actualizaciones\") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				actualizacionesOn=true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progresoTotal=$((progresoTotal + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			*) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				comprobarError 1 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	progresoTotal=$((progresoTotal + 2)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 mostrarWebServer() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	webServer=$(whiptail --title "SERVIDOR WEB" --radiolist "<ESPACIO>: seleccionar   <TAB>: cambiar   <FLECHAS>: moverse\n\nEscoge el servidor web que quieres usar:" 20 70 2 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	webServer=$(whiptail --title "SERVIDOR WEB" --radiolist "<ESPACIO>: seleccionar   <TAB>: cambiar   <FLECHAS>: moverse\n\nEscoge el servidor web que quieres usar:" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) 2 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	"Apache" "Instalar el servidor web Apache2" ON \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	"Nginx" "Instalar el servidor web Nginx" OFF \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	--ok-button "Continuar" --cancel-button "Salir" 3>&1 1>&2 2>&3) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -352,7 +371,7 @@ mostrarWebServer() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 establecerFQDN() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	while [ -z $hostname ]; do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		hostname=$(whiptail --title "FQDN" --inputbox "El nombre de dominio principal (FQDN) de este servidor es:\n"$(hostname)"\n\nQuieres cambiarlo por otro?" 20 70 --ok-button "Cambiar" --cancel-button "No Cambiar" 3>&1 1>&2 2>&3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		hostname=$(whiptail --title "FQDN" --inputbox "El nombre de dominio principal (FQDN) de este servidor es:\n"$(hostname)"\n\nQuieres cambiarlo por otro?" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) --ok-button "Cambiar" --cancel-button "No Cambiar" 3>&1 1>&2 2>&3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if [ $? -eq 0 ] && [ ! -z $hostname ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			hostnamectl set-hostname $hostname 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		else 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -391,7 +410,7 @@ instalarNginx() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 mostrarDatabase() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $debianOS = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		database=$(whiptail --title "BASE DE DATOS" --radiolist "<ESPACIO>: seleccionar   <TAB>: cambiar   <FLECHAS>: moverse\n\nEscoge la base de datos que quieres usar:" 20 70 2 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		database=$(whiptail --title "BASE DE DATOS" --radiolist "<ESPACIO>: seleccionar   <TAB>: cambiar   <FLECHAS>: moverse\n\nEscoge la base de datos que quieres usar:" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) 2 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		"MySQL" "Instalar la base de datos MySQL (no uso comercial)" ON \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		"MariaDB" "Instalar la base de datos MariaDB (fork de MySQL)" OFF \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		--ok-button "Continuar" --cancel-button "Salir" 3>&1 1>&2 2>&3) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -408,7 +427,7 @@ mostrarDatabase() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	elif [ $rhelOS = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		whiptail --title "BASE DE DATOS" --yesno "Para su distribucion $OS $DIST $REV, sólo está disponible la base de datos MariaDB." 20 70 --yes-button "Continuar" --no-button "Salir" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		whiptail --title "BASE DE DATOS" --yesno "Para su distribucion $OS $DIST $REV, sólo está disponible la base de datos MariaDB." $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) --yes-button "Continuar" --no-button "Salir" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		comprobarError $? 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		mariaDBOn=true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	else 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -423,9 +442,9 @@ leerSQLPasswd() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	error="" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Leemos la contreseña (stdin) y confirmamos 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	while [ $control = false ]; do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		sqlPasswd=$(whiptail --title "CONTRASEÑA SQL" --passwordbox "$error""Introduzca la contraseña para el usuario 'root' de la base de datos:" 20 70 --ok-button "Continuar" --nocancel 3>&1 1>&2 2>&3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sqlPasswd=$(whiptail --title "CONTRASEÑA SQL" --passwordbox "$error""Introduzca la contraseña para el usuario 'root' de la base de datos:" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) --ok-button "Continuar" --nocancel 3>&1 1>&2 2>&3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		comprobarError $? 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		sqlPasswd2=$(whiptail --title "CONTRASEÑA SQL" --passwordbox "Confirme la contraseña:" 20 70 --ok-button "Continuar" --nocancel 3>&1 1>&2 2>&3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sqlPasswd2=$(whiptail --title "CONTRASEÑA SQL" --passwordbox "Confirme la contraseña:" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) --ok-button "Continuar" --nocancel 3>&1 1>&2 2>&3) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		comprobarError $? 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		#printf "SQL Password 1: $sqlPasswd\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		#printf "SQL Password 2: $sqlPasswd2\n" 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -562,38 +581,74 @@ mostrarExpress 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Servidor Web 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $apacheOn = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf "Instalando Web Server Apache..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		instalarApache 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			instalarApache 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Instalando Web Server Apache..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	elif [ $nginxOn = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf "Instalando Web Server Nginx..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		instalarNginx 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			instalarNginx 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Instalando Web Server Nginx..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Base de Datos 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $mySQLOn = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf "Instalando Base de Datos MySQL..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		instalarMySQL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			instalarMySQL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Instalando Base de Datos MySQL..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	elif [ $mariaDBOn = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf "Instalando Base de Datos MariaDB..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		instalarMariaDB 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			instalarMariaDB 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Instalando Base de Datos MariaDB..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# PHP 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $phpOn = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf "Instalando PHP-7..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Instalando PHP-7..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# SSL/TLS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		# Falta por implementar 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Instalando SSL/TLS..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# MediaWiki 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $mediaWikiOn = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf "Instalando MediaWiki..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Instalando MediaWiki..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Moodle 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $moodleOn = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf "Instalando Moodle..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Instalando Moodle..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	fi	 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -603,44 +658,95 @@ mostrarExpress 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Configuración 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Configuración Apache 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		# Virtual Hosts 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf "Configurando Servidor Web..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Configurando Servidor Web..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Configuración Database 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		# Arrancar Base de Datos, establecer contraseña y configuración segura 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if [ $mySQLOn = true ];then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			habilitarServicio mysql 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			establecerSQLPasswd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "Configurando Base de Datos MySQL..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				habilitarServicio mysql 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				establecerSQLPasswd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} > >(whiptail --gauge "Configurando Base de Datos MySQL..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if [ $mariaDBOn = true ];then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			habilitarServicio mariadb 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			establecerSQLPasswd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "Configurando Base de Datos MAriaDB..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				habilitarServicio mariadb 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				establecerSQLPasswd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} > >(whiptail --gauge "Configurando Base de Datos MariaDB..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Configuración PHP 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		# cgi.fix_pathinfo=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		# Configurar máximo de subida de archivos 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf "Configurando PHP-7..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Configurando PHP-7..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Configuración MediWiki 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	printf "Configurando MediaWiki..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} > >(whiptail --gauge "Configurando MediaWiki..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Configuración Moodle 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	printf "Configurando Moodle..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} > >(whiptail --gauge "Configurando Moodle..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Arrancar y habilitar todos los servicios (SystemD, Service o SystemV) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	printf "Arrancando Servicios..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} > >(whiptail --gauge "Arrancando Servicios..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Añadir reglas del cortafuegos 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	printf "Configurando Cortafuegos..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	} > >(whiptail --gauge "Configurando Cortafuegos..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Configuración SSL/TLS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		# Generar certificados 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		# Configurar certificados 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf "Configurando SSL/TLS..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Configurando SSL/TLS..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	# Configurar actualizaciones 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if [ $actualizacionesOn = true ]; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf "Configurando actualizaciones automáticas..." 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		# CRONTAB 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			printf "%s\n" $((100 * progreso / progresoTotal)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			sleep 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			progreso=$((progreso + 1)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} > >(whiptail --gauge "Configurando actualizaciones automáticas..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		printf " OK.\n" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Autodestrucción 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	for i in $(seq 0 5 50); do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		sleep 0.1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		echo $i 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} | whiptail --gauge "Autodestrucción..." 7 70 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	for i in $(seq 50 5 100); do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		sleep 0.1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		echo $i 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-} | whiptail --gauge "Autopulverización..." 7 70 50 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 |