Today we are going to learn that how to install Gibbon LMS on Ubuntu 20.04. Gibbon is a free & open source platform that provide you a fully functioned school management system. It is specially designed for interaction b/w the teachers,students,parents & leader. Teachers can plan, provide, collect, assign work to students & students can submit through the LMS. So, here we’ll see that how you can install it on your system.
Step 1: Update Your System
First of all update your system to have the latest updates installed.
sudo apt update && sudo apt upgrade -y Reboot Sever
Step 2: Install Apache, MariaDB & PHP On Ubuntu 20.04
Hit the below commands to get install the required packages.
sudo apt 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
When all dependencies are resolved, edit the php.ini file.
sudo nano /etc/php/7.4/apache2/php.ini
Modify the below lines according to your own requirements.
memory_limit = 256M upload_max_filesize = 100M max_execution_time = 360 date.timezone = Europe/Amsterdam
Then save & exit the file.
Now, type mysql in terminal to login to mariaDB.
mysql
CREATE DATABASE gibbondb; CREATE USER 'gibbon'@'localhost' IDENTIFIED BY 'password'; GRANT ALL ON gibbondb.* TO 'gibbon'@'localhost' WITH GRANT OPTION; FLUSH PRIVILEGES; EXIT;
Step 3: Install Gibbon LMS On Ubuntu 20.04
With the help of wget command get the latest version of gibbon from their official site.
wget https://github.com/GibbonEdu/core/archive/v20.0.00.zip
After the download finished, extract it using unzip command.
unzip v20.0.00.zip
And then move the extracted content to the apache root folder.
mv core-20.0.00 /var/www/html/gibbon
And give the proper permssions.
chown -R www-data:www-data /var/www/html/gibbon/
chmod -R 755 /var/www/html/gibbon/
Step 4: Configure Apache For Gibbon LMS
Create a new config file.
sudo nano /etc/apache2/sites-available/gibbon.conf
And then paste the below content into it.
<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>
Save & exit the file.
And enable the new config file by
a2ensite gibbon.conf
Now, enable apache rewrite & restart the apache services.
a2enmod rewrite
systemctl restart apache2
Step 5: Access Gibbon LMS Web Interface
Type http://testlab.osradar.com in your browser to access gibbon lms on your system. You’ll see the given page.
Verify the requirements & hit “Submit” button. You’ll be redirected to other page. Here, provide mentioned details & hit “Submit” button.
Now, provide account configs, system settings & organization settings & finally click “Submit”.
On successfull installation you’ll see the following page.
Here, hit Gibbon Homepage to go to the login page.
Type credentials to login.
You’ll see the Gibbon LMS Dashboard as shown below:
Step 6: Secure Gibbon LMS with Let’s Encrypt SSL
As for security reasons it is recommended to install SSL certificates. Hit the below commands to install SSL.
sudo apt-get install python3-certbot-apache -y certbot --apache -d testlab.osradar.com
Note: Replace testlab.osradar.com with your own domain. And provide the asked details to finish installing SSL.
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
Select redirect http to https & press Enter.
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
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
Now, you can access Gibbon LMS over https.
So, this is how you can install Gibbon LMS on Ubuntu 20.04