Cómo instalar Gibbon LMS en Ubuntu 20.04

Gibbon es un sistema de gestión escolar gratuito y de código abierto especialmente diseñado para profesores, alumnos, padres y dirigentes. Ayuda a los profesores a encontrar, contactar y ayudar a sus alumnos. Permite a los profesores planificar, enseñar, recopilar, evaluar y devolver el trabajo en un proceso racionalizado. Es una herramienta excelente y eficaz que permite disponer de toda la información en un solo lugar. Dispone de una sencilla interfaz web que ayuda a los profesores a acceder a todos los datos de los alumnos sobre la marcha.

En este tutorial, te mostraremos cómo instalar Gibbon LMS con Let’s Encrypt SSL en un servidor Ubuntu 20.04.

Requisitos previos

  • Un servidor con Ubuntu 20.04.
  • Un nombre de dominio válido apuntado con la IP de tu servidor.
  • Una contraseña de root está configurado el servidor.

Cómo empezar

En primer lugar, se recomienda actualizar los paquetes de tu sistema a la última versión. Puedes actualizarlos con el siguiente comando:

apt-get update -y

Una vez actualizados todos los paquetes, puedes pasar al siguiente paso.

Instalar Apache, MariaDB y PHP

A continuación, tendrás que instalar en tu sistema el servidor web Apache, MariaDB, PHP y otras extensiones de PHP. Puedes instalarlos todos con el siguiente comando:

apt-get install apache2 mariadb-server php libapache2-mod-php php-common php-sqlite3 php-mysql php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-bcmath php-xml php-cli php-zip unzip git -y

Una vez instalados todos los paquetes, edita el archivo php.ini y establece los valores deseados:

nano /etc/php/7.4/apache2/php.ini

Cambia las siguientes líneas con los valores que necesites:

memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/Chicago

Guarda y cierra el archivo cuando hayas terminado. A continuación, puedes pasar al siguiente paso.

Configurar la base de datos MariaDB

A continuación, tendrás que crear una base de datos y un usuario para Gibbon. En primer lugar, inicia sesión en el shell de MySQL con el siguiente comando:

mysql

Una vez iniciada la sesión, crea una base de datos y un usuario con el siguiente comando:

MariaDB [(none)]> CREATE DATABASE gibbondb;
MariaDB [(none)]> CREATE USER 'gibbon'@'localhost' IDENTIFIED BY 'password';

A continuación, concede todos los privilegios a la base de datos Gibbon con el siguiente comando:

MariaDB [(none)]> GRANT ALL ON gibbondb.* TO 'gibbon'@'localhost' WITH GRANT OPTION;

A continuación, vacía los privilegios y sal del intérprete de comandos MySQL con el siguiente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Una vez configurada tu base de datos, puedes pasar al siguiente paso.

Instalar Gibbon

En primer lugar, tendrás que descargar la última versión de Gibbon desde su sitio web oficial. Puedes descargarla con el siguiente comando:

wget https://github.com/GibbonEdu/core/archive/v20.0.00.zip

Una vez finalizada la descarga, puedes descomprimir el archivo descargado con el siguiente comando:

unzip v20.0.00.zip

A continuación, mueve el directorio extraído al directorio raíz de Apache con el siguiente comando:

mv core-20.0.00 /var/www/html/gibbon

A continuación, cambia la propiedad y el permiso del Gibbon con el siguiente comando:

chown -R www-data:www-data /var/www/html/gibbon/
chmod -R 755 /var/www/html/gibbon/

Una vez que hayas terminado, puedes pasar al siguiente paso.

Configurar Apache para Gibbon

A continuación, tendrás que configurar Apache para que sirva al Gibbon. Para ello, crea un archivo de configuración del host virtual de Apache con el siguiente comando:

nano /etc/apache2/sites-available/gibbon.conf

Añade las siguientes líneas:

<VirtualHost *:80>
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/gibbon
     ServerName gibbon.example.com

     <Directory /var/www/html/gibbon/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined
    
     <Directory /var/www/html/gibbon/>
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*) index.php [PT,L]
    </Directory>
</VirtualHost>

Guarda y cierra el archivo cuando hayas terminado. A continuación, habilita el host virtual Gibbon ejecutando el siguiente comando:

a2ensite gibbon.conf

A continuación, activa el módulo de reescritura de Apache y reinicia el servicio Apache para aplicar los cambios de configuración:

a2enmod rewrite
systemctl restart apache2

En este punto, el servidor web Apache está configurado para servir al Gibbon LMS. Cuando hayas terminado, puedes pasar al siguiente paso.

Acceder a la Interfaz Web de Gibbon

Ahora, abre tu navegador y accede a la interfaz web de Gibbon utilizando la URL http://gibbon.example.com. Serás redirigido a la siguiente página:

Requisitos del sistema

Comprueba todos los requisitos del sistema, selecciona el idioma inglés y pulsa el botón Enviar. Deberías ver la siguiente página:

Configuración de la base de datos

Introduce el nombre de tu base de datos, el nombre de usuario, la contraseña y pulsa el botón Enviar. Deberías ver la siguiente página:

Cuenta de usuario

URL base

Configuración de la organización

Proporciona la configuración de tu cuenta, la configuración del sistema y la configuración de la organización y haz clic en el botón Enviar. Una vez completada la instalación, deberías ver la siguiente página:

Instalación finalizada

A continuación, haz clic en ir a tu página de inicio de Gibbon, deberías ver la página de inicio de sesión de Gibbon en la siguiente página:

Sistema Gibbon de Gestión del Aprendizaje

Proporciona tu nombre de usuario y contraseña de administrador y haz clic en el botón Iniciar sesión. Deberías ver el panel de Gibbon en la siguiente página:

Lecciones

Asegura Gibbon con Let’s Encrypt SSL

A continuación, se recomienda asegurar tu sitio web con Let’s Encrypt SSL. En primer lugar, instala el cliente Certbot utilizando el siguiente comando:

apt-get install python3-certbot-apache -y

Una vez instalado, ejecuta el siguiente comando para asegurar tu sitio web con Let’s Encrypt SSL:

certbot --apache -d gibbon.example.com

Se te pedirá que proporciones tu correo electrónico y aceptes las condiciones del servicio, como se muestra a continuación:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for gibbon.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/gibbon-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/gibbon-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/gibbon-le-ssl.conf

A continuación, selecciona si deseas o no redirigir el tráfico HTTP a HTTPS, como se muestra a continuación:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Escribe 2 y pulsa Intro para instalar el SSL de Let’s Encrypt para tu sitio web:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/gibbon.conf to ssl vhost in /etc/apache2/sites-available/gibbon-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://gibbon.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=gibbon.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/gibbon.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/gibbon.example.com/privkey.pem
   Your cert will expire on 2020-10-23. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Ahora, puedes acceder al Gibbon LMS de forma segura utilizando la URL https://gibbon.example.com.

Conclusión

Enhorabuena! has instalado y configurado con éxito Gibbon LMS con Let’s encrypt SSL en Ubuntu 20.04. Ahora puedes implementarlo fácilmente en tu escuela y explorar Gibbon en busca de nuevas funcionalidades y características. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...