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
- 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.sh
- Setzen von DNS-Namen, Passwörtern, Email und Heap-Speicher
- Die Definition "Config=0" auf "Config=1" ändern
- Mit <Strg>-O und Enter das Script speichern
- Mit <Strg>-X den Editor verlassen
- Seten von Ausführungsrechten
chmod 755 install-letto-ubuntu-20.04.sh
- Script starten
./install-letto-ubuntu-20.04.sh
- 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
- 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