ILIAS-Tricks not only for Schools
Openmeetings installieren
Eine Software, um virtuelle Besprechungen zu realisieren, darf eigentlich in keinem Schulnetzwerk fehlen. Openmeetings und BigBlueButton kommen hier - da OpenSource - in die engere Wahl. Für Beide gibt es auch entsprechende Plugins für ILIAS. Das Openmeetings-Plugin findet man auf GitHub und internetlehrer.de; das BBB-Plugin findet man auf ilias.de.
Welches virtuelle Klassenzimmer ist besser?
Die Wahl auf Openmeetings (OM) fiel in erster Linie, da wir es hier nur mit 2 Ports zu tun haben, die die Firewall umgehen muss, während es bei BigBlueButton (BBB) 3 sind. Auch ist der Funktionsumfang von OM höher (z.B. erlaubt es die Fernsteuerung von den Teilnehmer-PCs) und kann auch parallel mit einem Apache-Webserver installiert werden, während BBB nichts dergleichen neben sich zulässt.
Für BBB spricht aber auch die einfachere Bedienung, so dass ich eigentlich beide Systeme gleich empfehlen kann.
Man muss 2 Probleme lösen, um OM zu installieren: Erstens muss ein leistungsstarker Server her (vServer reichen in der Regel nicht aus) und man muss meistens die Ports auf 80 und 443 verbiegen. Ist der Server zu langsam, macht sich das durch hohe Latenzen bei Audioübertragungen bemerkbar: Der Sprecher hört sich selbst nach einigen Millisekunden. Verbiegt man die Ports nicht, können die Nutzer hinter institutionellen Firewalls den Dienst in der Regel nicht nutzen. Übrigens muss auch das RTMP-Protokoll von der jeweiligen Firewall durchgelassen werden.
Installation
Derzeit (Sommer 2016) kann ich nur die Version 2.2 empfehlen, da diese offenbar frei von Bugs ist bzw. dort das geht, was wichtig ist.
Man findet sehr gute Installationsanleitungen hier: https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools
Tipp: Wählen Sie eine für Sie passende Anleitung von Stephen Cottham aus.
Portsetting
Nun möchte ich einige Gedanken über das korrekte Portsetting verlieren. Die Installation inkl. SSL-Zertifikat für den Tomcat-Server ist ja oben (siehe Link zu den Tutorials) beschrieben und wird hier vorausgesetzt. Vorstellen möchte ich 2 Port-Szenarien:
- Webinterface läuft auf Port 443 und RTMPS auf Port 5443. Der Aufruf der Seite erfolgt mit https://domain.tld
- Webinterface läuft auf Port 80 und RTMPS auf 443. Der Aufruf der Seite erfolgt mit http://domain.tld
Vor- und Nachteile
Bei Szenario 1 ist ist die gesamte Kommunikation SSL-verschlüsselt. Das Webinterface läuft über 443. Dafür benötigt man den unkonventionellen Port 5433 (Protokoll: RMTPS), welcher geschlossen sein könnte in dem Netzwerk des Anwenders.
Bei Szenario 2 läuft die Kommunikation über die Standardports 80 (Webinterface, unverschlüsselt) und 443 (RMTPS, verschlüsselt) und dürfte damit alle Firewalls durchdringen, die nicht das RMTPS-Protokoll blockieren. Mit dem Nachteil des unverschlüsselten Webinterfaces muss man hier leben. Betreibt man dieses Szenario auf einem Webserver, der vollständig unter HTTPS läuft, kann es hier zu einer Meldung kommen, dass ein Teil der Übertragung nicht verschlüsselt ist, so dass hier wieder ein Nutzereingriff notwenidg werden würde.
In beiden Szenarien ist der Apache (oder Nginx) deaktiviert, da es ansonsten zu Portkonflikten käme.
Hinweis: Bei dem untenstehenden Code handelt es sich um die relevanten Auszüge, nicht um komplette Konfigurationsdateien!
Szenario 1 - Aufruf mit https://domain.tls
Datei conf/red5.properties
1 | # Socket policy |
Datei webapps/openmeetings/config.xml
1 | <rtmpport>1935</rtmpport> |
Datei conf/jee-container.xml
Die Sektion Tomcat with SSL enabled ist aktiviert (nicht auskommentiert) und
die Sektion Tomcat without SSL enabled ist auskommentiert.
Szenario 2 - Aufruf mit http://domain.tls
Datei conf/red5.properties
1 | # Socket policy |
Datei webapps/openmeetings/config.xml
1 | <rtmpport>1935</rtmpport> |
Datei conf/jee-container.xml
Die Sektion Tomcat with SSL enabled ist auskommentiert)
die Sektion Tomcat without SSL enabled ist aktiv.
Wenn Sie den Port 80 für andere Anwendungen benötigen
In diesem Fall ersetzen Sie bei Szenario 2 alle Portangaben von 80 auf 5080. Dann aktivieren Sie den Webbrowser Apache bzw. Nginx und kommentieren in /etc/apache2/ports.conf die Zeilen mit "Listen 443" aus.
In dem Vhost für den Port 80 fügen Sie eine Modrewrite (nach Stephen Cottham) ein:<VirtualHost *:80>
....ProxyRequests Off
ProxyPreserveHost On
RewriteEngine on
RewriteRule ^/(.*) http://om.yourdomain.com:5080/$1 [P]
....