|
@@ -41,6 +41,9 @@ comprobarError() {
|
|
|
5)
|
|
|
error="\n$type $codeNum:\tEl directorio '"$(realpath $extraInfo)"' no existe.\n"
|
|
|
;;
|
|
|
+ 6)
|
|
|
+ error="$type $codeNum:\tError interno (selección SSL/TLS).\n"
|
|
|
+ ;;
|
|
|
100)
|
|
|
error="$type $codeNum:\tError interno (selección del servidor web).\n"
|
|
|
;;
|
|
@@ -129,6 +132,12 @@ comprobarError() {
|
|
|
305)
|
|
|
error="\n$type $codeNum:\tImposible configurar PHP-7.2.\n"
|
|
|
;;
|
|
|
+ 501)
|
|
|
+ error="\n$type $codeNum:\tImposible descargar MediaWiki-1.31.0.\n"
|
|
|
+ ;;
|
|
|
+ 601)
|
|
|
+ error="\n$type $codeNum:\tImposible descargar Moodle-3.5.1.\n"
|
|
|
+ ;;
|
|
|
800)
|
|
|
error="$type $codeNum:\tEs necesario ser root ('sudo $0').\n"
|
|
|
;;
|
|
@@ -159,6 +168,9 @@ comprobarError() {
|
|
|
809)
|
|
|
error="$type $codeNum:\t'sed' no instalado.\n"
|
|
|
;;
|
|
|
+ 810)
|
|
|
+ error="$type $codeNum:\t'curl' no instalado.\n"
|
|
|
+ ;;
|
|
|
900)
|
|
|
error="$type $codeNum:\tError interno (habilitar servicio).\n"
|
|
|
;;
|
|
@@ -292,9 +304,12 @@ comprobarDependencias() {
|
|
|
# Comprobamos tput
|
|
|
which tput > /dev/null 2>&1
|
|
|
comprobarError $? 808
|
|
|
- # Comprobamso sed
|
|
|
+ # Comprobamos sed
|
|
|
which sed > /dev/null 2>&1
|
|
|
comprobarError $? 809
|
|
|
+ # Comprobamos curl
|
|
|
+ which curl > /dev/null 2>&1
|
|
|
+ comprobarError $? 810
|
|
|
if [ $debianOS = true ];then
|
|
|
# Comprobamos apt-get
|
|
|
which apt-get > /dev/null 2>&1
|
|
@@ -332,6 +347,8 @@ inicializarVariables() {
|
|
|
mariaDBOn=false
|
|
|
phpOn=false
|
|
|
sslOn=false
|
|
|
+ letsEncryptOn=false
|
|
|
+ autoFirmadoOn=false
|
|
|
mediaWikiOn=false
|
|
|
moodleOn=false
|
|
|
infoPHPOn=false
|
|
@@ -352,6 +369,7 @@ instalacionExpress() {
|
|
|
mariaDBOn=true
|
|
|
phpOn=true
|
|
|
sslOn=true
|
|
|
+ letsEncryptOn=true
|
|
|
mediaWikiOn=true
|
|
|
moodleOn=true
|
|
|
actualizacionesOn=true
|
|
@@ -433,8 +451,9 @@ mostrarComponentes() {
|
|
|
for i in $componentes; do
|
|
|
case $i in
|
|
|
\"SSL/TLS\")
|
|
|
- # 2 Opciones: Let's Encrypt o Autofirmado
|
|
|
sslOn=true
|
|
|
+ # 2 Opciones: Let's Encrypt o Autofirmado
|
|
|
+ mostrarSSL
|
|
|
progresoTotal=$((progresoTotal + 2))
|
|
|
;;
|
|
|
\"MediaWiki\")
|
|
@@ -461,6 +480,27 @@ mostrarComponentes() {
|
|
|
progresoTotal=$((progresoTotal + 2))
|
|
|
}
|
|
|
|
|
|
+mostrarSSL() {
|
|
|
+ ssl=$(whiptail --tile "INSTALACION SSL/TLS" --radiolist "<ESPACIO>: seleccionar <TAB>: cambiar <FLECHAS>: moverse\n\nEscoge el tipo de Certificado SSL/TLS que quieres instalar:" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) 2 \
|
|
|
+ "LetsEncrypt" "Instala certificados 100% compatibles con todos los navegadores" ON \
|
|
|
+ "Auto-Firmado" "Instala certificados auto-firmados (sólo par apruebas)" OFF \
|
|
|
+ --ok-button "Continuar" --cancel-button "Salir" 3>&1 1>&2 2>&3)
|
|
|
+ comrpobarError $? 1
|
|
|
+ for i in $ssl; do
|
|
|
+ case $i in
|
|
|
+ LetsEncrypt)
|
|
|
+ letsEcnryptOn=true
|
|
|
+ ;;
|
|
|
+ Auto-Firmados)
|
|
|
+ autoFirmadoOn=true
|
|
|
+ ;;
|
|
|
+ *)
|
|
|
+ comprobarError 1 6
|
|
|
+ ;;
|
|
|
+ esac
|
|
|
+ done
|
|
|
+}
|
|
|
+
|
|
|
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?" $((ALTO * 9 / 10)) $((ANCHO * 9 / 10)) --ok-button "Cambiar" --cancel-button "No Cambiar" 3>&1 1>&2 2>&3)
|
|
@@ -1003,6 +1043,28 @@ esSSH() {
|
|
|
esSSH $ppid
|
|
|
}
|
|
|
|
|
|
+descargarMediWiki() {
|
|
|
+ # Descargar la versión 1.31.0 de MediaWiki
|
|
|
+ if [ ! -d ./var ];then
|
|
|
+ comprobarError 1 5 "./var"
|
|
|
+ fi
|
|
|
+ #echo -en "Descargando MediaWiki-1.31.0..." | tee -a $logFile
|
|
|
+ curl -o "./var/mediawiki-1.31.0.tar.gz" "https://releases.wikimedia.org/mediawiki/1.31/mediawiki-1.31.0.tar.gz" >> $logFile 2>&1
|
|
|
+ comprobarError $? 501
|
|
|
+ #echo -en " Ok.\n" | tee -a $logFile
|
|
|
+}
|
|
|
+
|
|
|
+descargarMoodle() {
|
|
|
+ # Descargar la versión 1.31.0 de MediaWiki
|
|
|
+ if [ ! -d ./var ];then
|
|
|
+ comprobarError 1 5 "./var"
|
|
|
+ fi
|
|
|
+ #echo -en "Descargando Moodle-3.5-1..." | tee -a $logFile
|
|
|
+ curl -o "./var/moodle-3.5.1.tgz" "https://download.moodle.org/download.php/stable35/moodle-3.5.1.tgz"
|
|
|
+ comprobarError $? 501
|
|
|
+ #echo -en " OK.\n" | tee -a $logFile
|
|
|
+}
|
|
|
+
|
|
|
# Comprobación del sistema e inicialización
|
|
|
inicializarVariables
|
|
|
comprobarRoot
|
|
@@ -1137,10 +1199,10 @@ mostrarExpress
|
|
|
# MediaWiki
|
|
|
if [ $mediaWikiOn = true ]; then
|
|
|
# Descargar MediaWiki
|
|
|
- echo -en "Descargando MediaWiki..." | tee -a $logFile
|
|
|
+ echo -en "Descargando MediaWiki-1.31.0..." | tee -a $logFile
|
|
|
# {
|
|
|
# echo -en "%s\n" $((100 * progreso / progresoTotal))
|
|
|
- sleep 2
|
|
|
+ descargarMediaWiki
|
|
|
progreso=$((progreso + 1))
|
|
|
# } > >(whiptail --gauge "Instalando MediaWiki..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal)))
|
|
|
echo -en " OK.\n" | tee -a $logFile
|
|
@@ -1156,10 +1218,10 @@ mostrarExpress
|
|
|
# Moodle
|
|
|
if [ $moodleOn = true ]; then
|
|
|
# Descargar Moodle
|
|
|
- echo -en "Descargando Moodle..." | tee -a $logFile
|
|
|
+ echo -en "Descargando Moodle-3.5.1..." | tee -a $logFile
|
|
|
# {
|
|
|
# echo -en "%s\n" $((100 * progreso / progresoTotal))
|
|
|
- sleep 2
|
|
|
+ descargarMoodle
|
|
|
progreso=$((progreso + 1))
|
|
|
# } > >(whiptail --gauge "Instalando Moodle..." $((ALTO * 4 / 10)) $((ANCHO * 9 / 10)) $((100 * progreso / progresoTotal)))
|
|
|
echo -en " OK.\n" | tee -a $logFile
|