Moodle Installation · 5 min read · Nov 07, 2025
Wie man Moodle auf ISPConfig installiert
Moodle ist eine Lernplattform, die entwickelt wurde, um Lehrern, Administratoren und Lernenden ein robustes, sicheres und integriertes System zur Verfügung zu stellen, um personalisierte Lernumgebungen zu schaffen.
Es wird in vielen Umgebungen eingesetzt, angefangen von Bildung, E-Learning bis hin zu Zertifizierungstests.
Ich werde es persönlich jeden Tag nutzen, um meinen Studenten in einem Betriebssystemkurs zu unterrichten, und sowohl Lehrer als auch Schüler lieben es.
In diesem Tutorial werden wir lernen, wie man es als Website innerhalb von ISPConfig installiert, auch mit einem SSL-Zertifikat von Let’s Encrypt.
Das Tutorial basiert auf Debian 8, sollte aber auch gut mit Ubuntu und anderen von ISPConfig unterstützten Distributionen funktionieren.
Was sind also die Voraussetzungen, bevor wir beginnen
- ISPConfig installiert (dieser Leitfaden sollte in Ordnung sein https://www.howtoforge.com/tutorial/perfect-server-debian-8-4-jessie-apache-bind-dovecot-ispconfig-3-1/)
- DNS korrekt konfiguriert, um Ihre Website zu verweisen (für unseren Test verwenden wir course.servisys.it als Referenz des Beispiels), dies ist notwendig für die korrekte Konfiguration von Let’s Encrypt
1. DNS einrichten
In unserem Beispiel haben wir gesagt, dass wir die Domain course.servisys.it verwenden werden, also wenn wir unsere Moodle-Website öffnen, verwenden wir https://course.servisys.it, um das DNS zu konfigurieren. Gehen Sie zum DNS-Tab in ISPConfig und bearbeiten Sie Ihr DNS, sodass es ungefähr so aussieht wie das Bild unten:

Achten Sie darauf, einen A-Record-Typ auszuwählen. Dies ist ein sehr wichtiger Schritt, da der A-Record von Let’s Encrypt verwendet wird, um das SSL-Zertifikat zu generieren.
Wenn Sie Ihr DNS bei einem externen Anbieter verwalten, müssen Sie dort denselben Record-Typ erstellen.
2. Die Website erstellen
Gehen Sie jetzt zum Website-Tab in ISPConfig und erstellen Sie eine neue Website, die wie die zuvor eingerichtete DNS heißt, und bearbeiten Sie die folgenden Optionen:

Auto-Subdomain: In meinem Fall habe ich von www. auf keine gewechselt, da meine Domain course.servisys.it ist. Wenn Sie es auf www. setzen, wird die Automatisierung von Let’s Encrypt versuchen, ein Zertifikat für www.course.servisys.it zu generieren und wird fehlschlagen. Achten Sie also auf diese Option.
SSL: Aktivieren für SSL.
Let’s Encrypt: Ja, wir wollen ein Zertifikat damit generieren.
PHP: Fastcgi funktioniert gut für mich.
Klicken Sie jetzt auf Speichern und warten Sie, dass das Zertifikat korrekt ausgestellt wird.
Warten Sie einige Minuten und versuchen Sie, Ihre Website zu öffnen, in meinem Fall https://course.servisys.it, wenn alles in Ordnung ist, sehen Sie die grüne Leiste!

3. Datenbank erstellen
Lassen Sie uns einen Datenbankbenutzer und eine Datenbank erstellen, die wir mit Moodle verwenden.
Gehen Sie zum Tab Websites, dann zu Datenbankbenutzern > neuer Benutzer.
Wählen Sie den zugehörigen Client aus, wählen Sie einen Namen und ein Passwort, etwa so:

Notieren Sie sich:
- Datenbankbenutzer
- Passwort
Gehen Sie zurück zum Tab Websites und wählen Sie jetzt Datenbanken, dann Neue Datenbank hinzufügen, wählen Sie Ihre Website (courses.serverisy.it), wählen Sie einen Datenbanknamen und wählen Sie den zuvor erstellten Benutzer aus und klicken Sie auf Speichern. Etwa so wie im Screenshot unten:

4. MySql-Konfiguration ändern
Die Standard-MySQL-Konfiguration benötigt einige kleine Änderungen, um mit Moodle zu funktionieren. Sie müssen die Datei bearbeiten:
nano /etc/mysql/my.cnfund am Anfang die rote Zeile hinzufügen
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
default-character-set = utf8mb4Immer in derselben Datei gehen Sie ein wenig nach unten, bevor die [mysqldump]-Anweisung beginnt, und fügen Sie erneut die roten Zeilen hinzu
#Moodle - Matteo
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysqldump]
quick
quote-names
max_allowed_packet = 16MDiese Änderungen sind erforderlich, da sie Voraussetzungen für die Installation von Moodle sind, oder während der Einrichtung wird es Ihnen nicht erlauben, mit der Installation fortzufahren.
Danach starten Sie MySQL mit:
/etc/init.d/mysql restart5. Vorbereitung der Moodle-Installation
Wir sind jetzt bereit, die Installation von Moodle vorzubereiten, wir werden dies über die Befehlszeile tun, da es schneller ist als FTP :)
Gehen Sie auf diese Seite und wählen Sie die Installation, die Ihren Bedürfnissen entspricht. In einer Produktionsumgebung empfehle ich Ihnen, die stabile Version zu verwenden. Zum Zeitpunkt des Schreibens ist es die 3.2.2.
Gehen Sie also über die Befehlszeile in das Webverzeichnis Ihrer Website, in meinem Fall sind dies die Befehle:
cd /var/www/course.servisys.it/web rm index.htmlwget https://download.moodle.org/download.php/direct/stable32/moodle-3.2.2.tgztar -zxvf moodle-3.2.2.tgzcp -pr moodle/* ./cp -pr moodle/.* ./Wenn Sie den cd-Befehl verwenden, ändern Sie ihn offensichtlich in den Namen Ihrer Website.
Wir haben die Standardseite index.html entfernt, da wir möchten, dass die erste Seite, die bereitgestellt wird, index.php ist.
Danach müssen wir die Eigentümerschaft der Dateien anpassen, um zu unseren Benutzern und Gruppen zu passen. Um zu wissen, was für Sie korrekt ist, führen Sie einfach ein
ls -alSie sollten viele Dateien sehen, und einige der enthaltenen Benutzer web client, in meinem Fall:
drwxr-xr-x 18 1005 1005 4096 mar 11 22:16 report
drwxr-xr-x 24 1005 1005 4096 mar 11 22:16 repository
-rwxr-xr-- 1 web42 client1 14 apr 13 17:25 robots.txt
drwxr-xr-x 2 1005 1005 4096 mar 11 22:16 rss
drwxr-xr-x 7 1005 1005 4096 mar 11 22:16 search
drwxr-xr-x 2 web42 client1 4096 apr 13 17:25 stats
drwxr-xr-x 5 1005 1005 4096 mar 11 22:16 tag
-rw-r--r-- 1 1005 1005 615 mar 11 22:16 tags.txt
drwxr-xr-x 6 1005 1005 4096 mar 11 22:16 themeWie Sie sehen können, ist mein Benutzer web42 und meine Gruppe client1, also beheben Sie jetzt die Berechtigungen mit:
chown -R web42:client1 *chown -R web42:client1 .*und stellen Sie die Berechtigungen der Verzeichnisse wieder her
chown root:root stats/ error/Dann gehen wir dazu über, ein moodledata-Verzeichnis zu erstellen, das nicht öffentlich zugänglich ist. Dazu erstellen Sie es einfach im privaten Verzeichnis.
mkdir ../private/moodledatachown -R web42:client1 ../private/moodledata6. Moodle-Webinstallation
Hier sind wir! Jetzt können wir den letzten Schritt der Installation starten. Öffnen Sie Ihren Browser, Sie sollten eine Seite sehen, die dieser ähnelt, wenn Sie die URL der Website öffnen:

Wählen Sie die Sprache und klicken Sie auf Weiter.

Das Standarddatenverzeichnis für Moodle wird als /var/www/clients/client1/web42/moodledata angezeigt, aber unser Verzeichnis befindet sich im privaten Ordner, also ändern Sie den Pfad so, dass er den moodle-Ordner im privaten Ordner verwendet: /var/www/clients/client1/web42/private/moodledata
Wählen Sie dann den Datenbanktyp, in meinem Fall MySql.

Vervollständigen Sie dann die MySql-Daten.

Datenbank-Host: localhost
Datenbankname: c1_moodle
Datenbankbenutzer: c1_moodle
Datenbankpasswort: das, das Sie während der Erstellung des Datenbankbenutzers gewählt haben
Tabellenpräfix: mdl_
Datenbankport:
Unix-Socket:
Klicken Sie jetzt und warten Sie, nach einigen Sekunden sollten Sie die Bedingungen sehen, die Sie akzeptieren sollten.

Danach wird Moodle einige Systemprüfungen durchführen, um zu testen, ob alles einwandfrei funktioniert.
Alles sollte jetzt grün sein!!!

Klicken Sie auf Weiter und weitere Prüfungen werden angezeigt….

Klicken Sie auf Weiter und füllen Sie die Daten des Administrators aus (Name, Vorname, Benutzerpasswort..).

Sie sollten die Daten Ihrer neuen Lern- und Testplattform ausfüllen :)

Viel Spaß mit Ihren Kursen!
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.