# auto-elearning Instala automáticamente una **Wiki** (MediaWiki) y un **Campus Virtual** (Moodle). Para ello instala un entorno **LEMP** (GNU/Linux+Nginx+MySQL/MariaDB+PHP) o **LAMP** (GNU/Linux+Apache+MySQL/MariaD+PHP). Además instala **certificados** SSL/TLS válidos de **Let's Encrypt** (o auto-firmados) y genera copias de seguridad diariamente. Este código ha sido desarrollado como parte del **Trabajo Fin de Grado** para el **Grado en Ingeniería de Sistemas de Telecomunicación** de la **Universidad Alfonso X "El Sabio"**. Licencia: GPLv3 (Autor: Guzmán Castanedo Villalba [guzman@castanedo.es](mailto:guzman@castanedo.es)). ## DESCARGA: Recomendamos que se use la última versión estable: * `curl "https://code.castanedo.es/guzman/auto-elearning/archive/1.1.tar.gz" | tar -xvz` * `cd auto-elearning` * `sudo ./install` Si se quiere instalar la última versión en desarrollo (precaución: esta puede causar problemas de estabilidad): * `git clone "https://code.castanedo.es/guzman/auto-elearning.git"` * `cd auto-elearning` * `sudo ./install` ## SINOPSIS: * `sudo ./install` (Forma 1) * `sudo ./install [OPCIONES]` (Forma 2) ## DESCRIPCIÓN: La primera forma permite instalarlo todo de forma **INTERACTIVA** (contestando a unas preguntas que saldrán por pantalla). La segunda forma permite hacer lo mismo de forma **NO INTERACTIVA** (indicando todas las opciones desde el terminal). Esta aplicación requiere de permisos de administrador (root). ## COMPATIBILIDAD: Esta aplicación es compatible con **Ubuntu 18.04**, **Ubuntu 16.04**, **Debian 9**, **CentOS 7** y **Fedora 28**. Requiere de un sistema moderno que tenga instalado SystemD. Se irán añadiendo nuevas distribuciones en futuras versiones. ## OPCIONES: * `-d, --dominio, --fqdn `: dominio principal del servidor (**OBLIGATORIO**) * `--lemp`: activa servidor web Nginx (Por Defecto) * `--lamp`: activa servidor web Apache2 * `--mariadb`: activa base de datos mariadb (Por Defecto) * `--mysql`: activa base de datos mysql * Sólo compatible con Ubuntu 18.04 * `--password-sql `: contraseña root de base de datos (**OBLIGATORIO**) * `--max-upload-size `: tamaño de subida permitido (Por Defecto: "100M") * `--lets-encrypt`: activa certificados SSL/TLS de Let's Encrypt * `--auto-firmados`: activa certificadaos SSL/TLS auto-firmados (sólo para pruebas) * `--no-https, --no-ssl`: desactiva HTTPS ## OPCIONES MEDIA WIKI: * `--media-wiki`: activa instalación de Media Wiki (Por Defecto) * Si se activa esta opción `--nombre-mw`, `--dominios-mw` y `--password-mw` son **OBLIGARIOS** * `--no-media-wiki`: desactiva instalación de Media Wiki * `--nombre-mw `: nombre de la wiki * `--dominios-mw `: dominios para Media Wiki * Deben estar configuradas las DNS para que estos apunten a este servidor * Se pueden indicar más de uno separándolos con espacios * `--password-mw `: contraseña para usuario 'admin' ## OPCIONES MOODLE: * `--moodle`: activa instalación de Moodle (Por Defecto) * Si se activa esta opción `--nombre-mo`, `--nombre-corto-mo`, `--dominios-mo` y `--password-mo` son **OBLIGARIOS** * `--no-moodle`: desactiva instalación de Moodle * `--nombre-mo `: nombre del campus * `--nombre-corto-mo `: nombre corto del campus (una sola palabra) * `--dominio-mo `: dominio para Moodle * Deben estar configuradas las DNS para que estos apunten a este servidor * Sólo se puede indicar **UN DOMINIO** * `--password-mo `: contraseña para usuario 'admin' ## OTRAS OPCIONES: * `--php-info`: activa info.php (sólo para pruebas) * `--no-php-info`: desactiva info.php (Por Defecto) * `--backup`: activa los backups automáticos (Por Defecto) * `--no-backup`: desactiva los backups automáticos ## EJEMPLOS: * `sudo ./install` * Activa el programa en modo interactivo * `sudo ./install -d ejemplo.com --lemp --mariadb --password-sql 123456 --media-wiki --nombre-mw "Wiki de Ejemplo" --dominios-mw "ejemplo.com www.ejemplo.com wiki.ejemplo.com" --password-mw qwerty --no-moodle` * Instala LEMP con mariadb y Media Wiki * `sudo ./install -d ejemplo.com --lamp --mysql --password-sql 123456 --no-media-wiki --moodle --nombre-mo "Campus Virtual" --nombre-corto-mo EJEMPLO --dominio-mo moodle.ejemplo.com --password-mo qwerty` * Instala LAMP con MySQL y Moodle