Chamilo LMS unter Ubuntu 18.04 LTS installieren

Chamilo ist ein populäres, quelloffenes Lernmanagementsystem (LMS), das weltweit für E-Learning und teamorientierte Zusammenarbeit eingesetzt wird.

Diese Anleitung beschreibt Schritt für Schritt, wie Sie die aktuelle stabile Version von Chamilo auf einem Ubuntu 18.04 LTS Server einrichten.

Systemvoraussetzungen

  • Ein neu aufgesetzter Ubuntu 18.04 LTS 64-Bit Server. Für produktive Umgebungen werden mindestens 8 GB RAM empfohlen. Beispiel-IP-Adresse: 203.0.113.1.
  • Ein Benutzerkonto mit sudo-Rechten.
  • Das System sollte auf den neuesten stabilen Stand aktualisiert sein. Orientierung bietet die offizielle Dokumentation.
  • Eine korrekt konfigurierte Domain wie chamilo.example.com, die auf die IP des Servers zeigt.

UFW-Firewall-Regeln einrichten

Für den produktiven Einsatz ist es entscheidend, die UFW-Firewall so zu konfigurieren, dass nur eingehende TCP-Verbindungen auf die Ports für SSH, HTTP und HTTPS zugelassen werden. Verwenden Sie dazu folgende Befehle:


sudo ufw allow in ssh
sudo ufw allow in http
sudo ufw allow in https
sudo ufw enable


Apache 2.4 auf Ubuntu 18.04 installieren und konfigurieren

Installieren Sie den Apache-Webserver über APT mit dem folgenden Befehl, um die neueste stabile Version unter Ubuntu 18.04 LTS zu nutzen:

sudo apt install -y apache2

Entfernen Sie anschließend die Apache-Standardstartseite, um unnötige Inhalte nicht öffentlich verfügbar zu machen:

sudo mv /var/www/html/index.html /var/www/html/index.html.old

Zur Verbesserung der Sicherheit verhindern Sie, dass Apache Dateilisten aus dem Standard-Webverzeichnis /var/www/html anzeigt:

sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf

Aktivieren Sie das Apache-Modul „rewrite“, um URL-Rewrite-Funktionen zu ermöglichen, die von vielen Webanwendungen benötigt werden:

Starten Sie den Apache-Dienst und richten Sie ihn so ein, dass er beim Systemstart automatisch geladen wird:


sudo systemctl start apache2.service
sudo systemctl enable apache2.service


MariaDB 10.3 unter Ubuntu 18.04 installieren und absichern

Beginnen Sie mit der Installation der benötigten Pakete und binden Sie das MariaDB-Repository in Ihr System ein:

sudo apt install -y software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirrors.accretive-networks.net/mariadb/repo/10.3/ubuntu bionic main'
sudo apt update
sudo apt install -y mariadb-server

Während der Installation werden Sie aufgefordert, ein sicheres Passwort für den MariaDB-Root-Benutzer zu vergeben. Wählen Sie ein starkes Passwort, um die Datenbanksicherheit zu gewährleisten.

Starten Sie anschließend den MariaDB-Dienst und aktivieren Sie ihn für den automatischen Start beim Systemboot:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Führen Sie nun das Sicherungsskript von MariaDB aus, um die Konfiguration weiter abzusichern:

sudo /usr/bin/mysql_secure_installation

Beantworten Sie die Fragen des Skripts wie folgt:

  • Aktuelles Root-Passwort eingeben (leer lassen, wenn keines): Ihr-MariaDB-Root-Passwort
  • Root-Passwort ändern? [Y/n]: n
  • Anonyme Benutzer entfernen? [Y/n]: y
  • Root-Zugriff über das Netzwerk verbieten? [Y/n]: y
  • Testdatenbank und Zugriffe darauf entfernen? [Y/n]: y
  • Privilegientabellen jetzt neu laden? [Y/n]: y

PHP 7.2 und benötigte Erweiterungen unter Ubuntu 18.04 installieren

Für die beste Kompatibilität mit Chamilo LMS empfiehlt es sich, PHP 7.2 anstelle älterer 5.x-Versionen zu verwenden. Die Installation erfolgt über ein externes PPA-Repository.

Fügen Sie zuerst das ondrej/php PPA hinzu und aktualisieren Sie Ihre Paketliste:

sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y

Installieren Sie im nächsten Schritt die Kernkomponenten von PHP 7.2 sowie alle erforderlichen Erweiterungen:

sudo apt install -y php7.2 php7.2-opcache php7.2-cli php7.2-curl php7.2-common php7.2-gd php7.2-intl php7.2-mbstring php7.2-mysql libapache2-mod-php7.2 php7.2-soap php7.2-xml php7.2-xmlrpc php7.2-zip php7.2-ldap php-apcu-bc

Erstellen Sie eine Sicherung der PHP-Konfigurationsdatei für Apache und legen Sie Ihre Zeitzone fest:

sudo cp /etc/php/7.2/apache2/php.ini /etc/php/7.2/apache2/php.ini.bak
sudo sed -i 's#;date.timezone =#date.timezone = America/Los_Angeles#' /etc/php/7.2/apache2/php.ini

Hinweis: Passen Sie den Wert der Zeitzone (z. B. America/Los_Angeles) an Ihre Region an. Eine vollständige Liste der verfügbaren Zeitzonen finden Sie online.

Chamilo LMS auf dem LAMP-Stack bereitstellen

Nachdem Ihre LAMP-Umgebung eingerichtet ist, können Sie Chamilo installieren. Dieser Vorgang umfasst das Anlegen einer separaten Datenbank in MariaDB, das Einrichten der Chamilo-Quelldateien, das Anpassen von PHP, das Erstellen eines virtuellen Hosts, die webbasierte Konfiguration sowie sicherheitsrelevante Härtungsmaßnahmen.

MariaDB-Datenbank und Benutzer anlegen

Öffnen Sie das MariaDB-Terminal mit Root-Rechten:

Erstellen Sie im Terminal die Chamilo-Datenbank und einen Benutzer mit allen Rechten:

CREATE DATABASE chamilo;
CREATE USER 'chamilouser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON chamilo.* TO 'chamilouser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

Hinweis: Ersetzen Sie chamilo, chamilouser und yourpassword durch Ihre eigenen, sicheren Werte.

Chamilo LMS-Dateien herunterladen und vorbereiten

Laden Sie die aktuellste Chamilo-Version, die mit PHP 7 kompatibel ist, über GitHub herunter:

cd
wget https://github.com/chamilo/chamilo-lms/releases/download/v1.11.8/chamilo-1.11.8-php7.tar.gz

Entpacken Sie das Archiv in das Verzeichnis /opt:

sudo tar -zxvf chamilo-1.11.8-php7.tar.gz -C /opt

Erstellen Sie einen symbolischen Link im Apache-Webverzeichnis, um zukünftige Updates zu erleichtern:

sudo ln -s /opt/chamilo-1.11.8-php7 /var/www/html/chamilo

Zum Schluss setzen Sie die Eigentumsrechte der Chamilo-Dateien auf den Standardbenutzer von Apache, um Zugriffsprobleme zu vermeiden:


sudo chown -R www-data:www-data /opt/chamilo-1.11.8-php7


PHP 7.2 und erforderliche Erweiterungen installieren

Um Chamilo LMS mit bestmöglicher Leistung zu betreiben, sollte PHP 7.2 anstelle älterer PHP-5-Versionen eingesetzt werden. Dafür kann ein externes Paketarchiv verwendet werden, um alle benötigten Komponenten zu installieren.

Fügen Sie zunächst das ondrej/php Repository hinzu und aktualisieren Sie anschließend Ihr System:

sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt upgrade -y
sudo apt autoremove -y

Installieren Sie danach sämtliche für Chamilo erforderlichen PHP-7.2-Pakete:

sudo apt install -y php7.2 php7.2-opcache php7.2-cli php7.2-curl php7.2-common php7.2-gd php7.2-intl php7.2-mbstring php7.2-mysql libapache2-mod-php7.2 php7.2-soap php7.2-xml php7.2-xmlrpc php7.2-zip php7.2-ldap php-apcu-bc

Erstellen Sie anschließend eine Sicherung der PHP-Konfigurationsdatei für Apache und passen Sie die Zeitzone entsprechend Ihrer Region an:

sudo cp /etc/php/7.2/apache2/php.ini /etc/php/7.2/apache2/php.ini.bak
sudo sed -i 's#;date.timezone =#date.timezone = America/Los_Angeles#' /etc/php/7.2/apache2/php.ini

Hinweis: Ersetzen Sie America/Los_Angeles durch die für Ihre Region passende Zeitzone. Eine vollständige Liste unterstützter Werte ist online verfügbar.

Chamilo-Datenbank und Benutzer einrichten

Melden Sie sich bei MariaDB an und legen Sie die Datenbank sowie einen dazugehörigen Benutzer an:

Führen Sie im MariaDB-Terminal die folgenden Befehle aus:

CREATE DATABASE chamilo;
CREATE USER 'chamilouser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON chamilo.* TO 'chamilouser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

Hinweis: Ersetzen Sie chamilo, chamilouser und yourpassword durch Ihre tatsächlichen Datenbankinformationen.

Apache Virtual Host für Chamilo konfigurieren

Erstellen Sie eine eigene Apache-Konfigurationsdatei für Ihre Chamilo-Installation:

Wichtig: Ersetzen Sie example.com durch Ihre tatsächliche Domain.

Deaktivieren Sie nun die Standardseite und aktivieren Sie Ihre neue Chamilo-Konfiguration:

sudo rm /etc/apache2/sites-enabled/000-default.conf
sudo ln -s /etc/apache2/sites-available/chamilo.conf /etc/apache2/sites-enabled/

Starten Sie Apache neu, um die Änderungen zu übernehmen:


sudo systemctl restart apache2.service


Chamilo über den Webbrowser installieren

Öffnen Sie Ihren Webbrowser und rufen Sie http://chamilo.example.com auf. Folgen Sie dem grafischen Installationsassistenten:

  1. Sprache wählen: Wählen Sie Ihre bevorzugte Sprache (z. B. Deutsch) und klicken Sie auf „Weiter“.
  2. Systemanforderungen: Prüfen Sie, ob alle Voraussetzungen erfüllt sind, und klicken Sie auf „Neuinstallation“.
  3. Lizenzbedingungen: Akzeptieren Sie die GPL-Lizenz, tragen Sie Ihre Kontaktdaten ein und fahren Sie fort.
  4. Datenbankkonfiguration: Geben Sie Ihre Zugangsdaten zur MariaDB ein, testen Sie die Verbindung und klicken Sie auf „Weiter“.
  5. Grundeinstellungen: Legen Sie ein Administratorpasswort fest und füllen Sie die übrigen Felder aus.
  6. Abschließende Prüfung: Überprüfen Sie alle Angaben und klicken Sie auf „Chamilo installieren“.
  7. Fertigstellung: Klicken Sie auf „Gehe zu Ihrem neuen Portal“.

Chamilo nach der Installation absichern

Führen Sie zur Erhöhung der Sicherheit nach Abschluss der Einrichtung folgende Schritte aus:


sudo chmod -R 0555 /var/www/html/chamilo/app/config
sudo rm -rf /var/www/html/chamilo/main/install


Fazit

Mit dieser ausführlichen Anleitung haben Sie Chamilo LMS erfolgreich auf einem Ubuntu 18.04 LTS Server installiert und konfiguriert. Vom Einrichten des Apache-Webservers und dem Absichern der MariaDB-Datenbank bis hin zur PHP-Optimierung und dem Abschluss der Webinstallation wurden alle wichtigen Schritte abgedeckt.

Diese Konfiguration bietet Ihnen eine leistungsstarke, sichere und skalierbare Plattform für E-Learning. Sie sind nun bereit, Chamilo umfassend für digitale Kurse, virtuelle Klassenzimmer und kollaboratives Lernen einzusetzen.

Quelle: vultr.com

Jetzt 200€ Guthaben sichern

Registrieren Sie sich jetzt in unserer ccloud³ und erhalten Sie 200€ Startguthaben für Ihr Projekt.

Das könnte Sie auch interessieren: