Introducción
Gibbon es un sistema de gestión escolar gratuito y de código abierto especialmente diseñado para profesores, estudiantes, padres y líderes. Ayude 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 simplificado. Es una herramienta de ventanilla única excelente y eficiente que hace que toda la información esté disponible en un solo lugar. Viene con una sencilla interfaz basada en web que ayuda a los profesores a acceder a todos los detalles de los estudiantes sobre la marcha.
En este tutorial, le mostraremos cómo instalar Gibbon LMS con Let's Encrypt SSL en el servidor Ubuntu 20.04 LTS Focal Fossa.
Prerrequisitos
- Un servidor que ejecuta Ubuntu 20.04 LTS Focal Fossa.
- Un nombre de dominio válido que apunta a la IP del servidor.
- Una contraseña de root configurada en el servidor.
Si desea instalar Gibbon LMS en un servidor remoto, continúe leyendo; de lo contrario, omita el primer párrafo "Conexión al servidor" y lea el siguiente.
Conexión al servidor
Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:
ssh root@IP_DEL_SERVER
A continuación, deberá ingresar la contraseña del usuario root.
Si no usa el usuario root, puede iniciar sesión con otro nombre de usuario usando el mismo comando, luego cambie root a su nombre de usuario:
ssh nome_utente@IP_DEL_SERVER
Luego se le pedirá que ingrese su contraseña de usuario.
El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Para comenzar
Primero, se recomienda que actualice los paquetes del sistema a la última versión. Puede actualizarlos con el siguiente comando:
sudo apt-get update -y
Una vez que haya actualizado todos los paquetes, puede continuar con el siguiente paso.
Instale Apache, MariaDB y PHP
A continuación, deberá instalar el servidor web Apache, MariaDB, PHP y otras extensiones PHP en su sistema. Puedes instalarlos todos con el siguiente comando:
sudo 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, edite el php.ini
y establezca los valores deseados:
sudo nano /etc/php/7.4/apache2/php.ini
Cambie las siguientes líneas con los valores requeridos:
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = Europe/Rome
Guarde y cierre el archivo cuando termine. Luego, puede continuar con el siguiente paso.
Configurar la base de datos MariaDB
A continuación, deberá crear una base de datos y un usuario para Gibbon. Primero, inicie sesión en el shell de MySQL con el siguiente comando:
mysql
Una vez que haya iniciado sesión, cree una base de datos y un usuario con los siguientes comandos:
CREATE DATABASE gibbondb;
CREATE USER 'gibbon'@'localhost' IDENTIFIED BY 'password';
A continuación, conceda todos los privilegios a la base de datos de Gibbon con el siguiente comando:
GRANT ALL ON gibbondb.* TO 'gibbon'@'localhost' WITH GRANT OPTION;
A continuación, borre los privilegios y salga del shell MySQL con el siguiente comando:
FLUSH PRIVILEGES;
EXIT;
Una vez configurada la base de datos, puede continuar con el siguiente paso.
Instalar Gibbon
Primero, deberá descargar la última versión de Gibbon desde su sitio web oficial. Puedes descargarlo con el siguiente comando:
sudo wget https://github.com/GibbonEdu/core/archive/v20.0.00.zip
Una vez que se completa la descarga, puede descomprimir el archivo descargado con el siguiente comando de descompresión:
sudo unzip v20.0.00.zip
A continuación, mueva el directorio extraído al directorio raíz de Apache con el siguiente comando:
sudo mv core-20.0.00 /var/www/html/gibbon
A continuación, cambie la propiedad y autorización del Gibbon con el siguiente comando:
sudo chown -R www-data:www-data /var/www/html/gibbon/
sudo chmod -R 755 /var/www/html/gibbon/
Una vez hecho esto, puede continuar con el siguiente paso.
Configurar Apache para Gibbon
A continuación, deberá configurar Apache para que sirva a Gibbon. Para hacer esto, cree un archivo de configuración de host virtual Apache con el siguiente comando:
sudo nano /etc/apache2/sites-available/gibbon.conf
Agrega las siguientes líneas:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/gibbon
ServerName 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>
Guarde y cierre el archivo cuando termine. Luego, habilite el host virtual Gibbon ejecutando el siguiente comando:
a2ensite gibbon.conf
A continuación, habilite el rewrite
y reinicie el servicio Apache para aplicar los ajustes de configuración:
a2enmod rewrite
systemctl restart apache2
En este punto, el servidor web Apache está configurado para servir Gibbon LMS. Una vez hecho esto, puede continuar con el siguiente paso.
Inicie sesión en la interfaz web de Gibbon
Ahora abra su navegador web y acceda a la interfaz web de Gibbon usando la URL http://example.com/gibbon/
. Serás redirigido a la siguiente página:
Verifique todos los requisitos del sistema, seleccione el idioma deseado y haga clic en el botón Enviar. Debería ver la página de configuración de conexión de la base de datos.
Proporcione el nombre de la base de datos, el nombre de usuario, la contraseña y haga clic en el botón Enviar. Debería ver la cuenta de usuario y la página de configuración del sistema.
Proporcione la configuración de su cuenta, la configuración del sistema y la configuración de la organización, luego haga clic en el botón Enviar. Una vez que se complete la instalación, haga clic en ir a la página de inicio de Gibbon, debería ver la página de inicio de sesión de Gibbon.
Proporcione el nombre de usuario y la contraseña del administrador y haga clic en el botón Iniciar sesión. Debería ver el tablero de Gibbon.
Protección de Gibbon con Let's Encrypt SSL
Después de eso, se recomienda proteger el sitio web con Let's Encrypt SSL. Primero, instale el cliente Certbot usando el siguiente comando:
sudo apt-get install python3-certbot-apache -y
Una vez instalado, ejecute el siguiente comando para proteger su sitio web con Let's Encrypt SSL:
sudo certbot --apache -d example.com
Se le pedirá que proporcione su correo electrónico y que acepte el plazo de 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 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
Luego, seleccione si desea 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
Escriba 2 y presione Entrar para instalar Let's Encrypt SSL para su 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://example.com
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/example.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/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 puede iniciar sesión en Gibbon LMS de forma segura utilizando la URL http://example.com/gibbon/
.
Conclusión
¡Felicidades! ha instalado y configurado con éxito Gibbon LMS con Let's encrypt SSL en Ubuntu 20.04 LTS Focal Fossa. Ahora puede implementarlo fácilmente en su escuela y explorar Gibbon en busca de nuevas funciones y características.