Installation
Allgemeines
Der Letto-Server wurde in Java für JavaEE [1] Server entwickelt. Prinzipiell sollte Letto auf jedem JavaEE-Server unter Windows oder Linux lauffähig sein. Wir haben jedoch als Severumgebung nur Ubuntu-Server mit TomEE getestet und empfehlen deshalb auch diese Laufzeitumgebung.
Als Datenbank wird eine MySQL-Datenbank verwendet, welche idealerweise am gleichen Server wie der TomEE läuft. Es ist jedoch auch mögliche einen zentralen MySQL-Server zu verwenden welcher im LAN zur Verfügung steht.
Installation des Ubuntu Servers
Der Server kann entweder direkt auf einer PC-Hardware oder in einer virtuellen Umgebung installiert werden. Wir gehen hier nur auf die Direktinstallation ein, virtuelle Systeme sollten aber analog dazu installiert werden können.
Installation mit dem Setup-Service
- Die Installation über das Setup-Service ist noch in Entwicklung kann aber für eine lokale Installation auf einem Ubuntu-Server schon verwendet werden. Die Installation in Docker-Containern wird noch nicht unterstützt bzw. ist noch nicht verwendbar!!
- Siehe dazu https://www.letto.at/download/letto/setup/
Installation unter Ubuntu 20.04
- VIDEO-Anleitung: Installation Fertigstellung
- Download von Ubuntu Server [2]und Erzeugung eines Boot Mediums [3] (zB. DVD)
- Installation mit einem Benutzer letto
- Bei der Installation nur den OpenSSH Server mit installieren
- Der Server sollte über eine funktionierende Namensauflösung aus dem Internet erreichbar sein.
- Eine gegebenenfalls vor dem Server sitzende Firewall sollte ins Internet mindestens folgende Ports freischalten:
- Eingehend TCP: 22(ssh), 80(HTTP), 443(HTTPS)
- Eingehend ICMP: echo(ping)
- Ausgehend TCP: 22(ssh), 80(HTTP), 443(HTTPS)
- Ausgehend UDP: 53(DNS)
- Ausgehend ICMP: echo(ping)
- Und natürlich alle Antworten auf ausgehende Anfragen
- Falls eine Authentifizierung über LDAP gewünscht wird muss natürlich der LDAP oder AD-Server mit den notwendigen Ports erreichbar sein.
- Konfiguration des Servers
- Starten des Servers
- falls der Server nicht auf aktuellem Stand ist, die Updates einspielen und den Server neu starten
sudo apt-get -y update
sudo apt-get -y upgrade sudo apt-get -y dist-upgrade sudo apt-get -y autoremove sudo apt-get -y install -f sudo reboot
- Wechseln zu Benutzer root.
sudo su
- Wechsel in das Verzeichnis opt
cd /opt
- Download des Installationsscripts
wget https://letto.at/download/letto/install-letto-ubuntu-20.04.sh
- Script in einem Editor konfigurieren
nano install-letto-ubuntu-20.04.sh
- Seten von Ausführungsrechten
chmod 755 install-letto-ubuntu-20.04.sh
- Script starten
./install-letto-ubuntu-20.04.sh
Die Ausführung des Scripts wird je nach Server-Hardware zwischen 20 und 60 Minuten dauern, da die notwendige Installation von LaTeX und Inkscape relativ lange dauert. Falls das Script während der Ausführung abbricht sollte es (ggf. nach Behebung des Fehlers) einfach nochmals gestartet werden.
- Wechseln zu Benutzer root.
- Zertifikat für den Server installieren:
Bei der Standardeinstellung wurde noch das selbstsignierte Zertifikat vom Apache2 in der Datei /etc/apache2/sites-enabled/letto.conf eingebunden. Dieses Zertifikat kann nun durch ein eigenes gültiges Zertifikat für den Server-DNS-Namen ersetzt werden.
Falls kein eigenes Zertifikat vorhanden ist, kann auch mit dem Certbot ein selbstzertifiziertes Zertifikat installiert werden. Hierzu kann wie folgt vorgegangen werden:- Starten des certbot als root-Benuter
certbot --apache -d meinedomain.at
- Hierbei müssen einige Fragen wie email etc. beantwortet werden.
- Eintragen des certbot in einen Cronjob wie zB. in der Datei /etc/crontab
05 05 * * * root certbot renew
- Starten des certbot als root-Benuter
- Datensicherung einrichten:
Die Datensicherung wird durch das Script so eingerichtet, das täglich in das Verzeichnis /sicherung gesichert wird. Diese Verzeichnis sollte nun auf eine externe Hardware regelmäßig mit einem sinnvollen Archivierungskonzept gesichert werden.
- Konfiguration von LeTTo :
Nun kann der Server über seine URL erreicht und konfiguriert werden.
Installation unter Ubuntu 18.04
- Wir empfehlen ausdrücklich die Installation unter Ubuntu 20.04. Das Installationsscript für 18.04 wird ab 2021 nicht mehr gewartet.
- Download von Ubuntu Server [4] und Erzeugung eines Boot Mediums [5] (zB. DVD)
- Die weitere Vorgehensweise ist gleich wie bei Ubuntu 20.04 nur sollte das Script install-letto-ubuntu.sh statt install-letto-ubuntu-20.04.sh verwendet werden
wget https://letto.at/download/letto/install-letto-ubuntu.sh
globale Konfiguration
Folgende Einstellungen sollte der globale Administrator vornehmen:
- Anpassen der notwendigen Systemeinstellungen in der globalen Konfiguration.
- Parameter für die Active-Directory oder LDAP Authentifikation
- Parameter für den Server-Betrieb
- Wenn nur eine Schule vorhanden ist, die Konfiguration der Schul-Parameter
- Konfiguration des Serververhaltens
- Konfiguration des Schultyps
- Anlegen einer neuen Schule
- Konfiguration der Schul-Parameter
Lizenz-Key einspielen
- Im Regelfall wird die Lizenz automatisch bei der Konfiguration als globaler Administrator als Demolizenz angelegt.
- Bitte danach mit dem LeTTo-Team in Verbindung setzen damit wir die Demolizenz verlängern oder ein Angebot für eine Lizenz legen können.
Einspielen der Daten
- Das Einspielen der Daten wird bei einer Letto-Admin-Schulung erklärt
Konfiguration der globalen Einstellungen
- Im Dialog "Globale Konfiguration" müssen noch die Parameter für Server, AD-Login und Schule eingestellt werden.
- Als globaler Administrator kann man mit dem Menüpunkt "AD-check" die Authentifikation an einem LDAP-Server oder an einem Active-Directory konfigurieren.
letzte wichtige Server-Konfigurationen
Folgende Konfigurationen sollten noch vorgenommmen werden, werden aber in diesem Wiki nicht explizit beschrieben, sondern sollten von einem Linux/Unix-Fachmann vorgenommen werden.
- Letto beim Systemstart automatisch starten
- Datensicherung einrichten
- Firewall einrichten
- Zertifikat für den Glassfish für https
- Verlinkungen und Weiterleitungen auf den Server einrichten