LinuxProfi . AT
ihr professioneller Linux Dienstleister
Für ein Projekt mit mehreren verteilten Entwicklern war es notwendig eine Lösung zu finden die es ermöglicht gemeinsam an Entwürfen für eine Programmoberfläche zu arbeiten.
Verschiedene Lösungen wurden ausprobiert. Die einen bedingten ein Abo, dass man nicht kaufen wollte, die anderen waren etwas suspekt ob der doch heiklen Daten die darüber verschickt wurden. Schließlich sollte die Programmoberfläche ja etwas neues darstellen. Um die Neugierde anderer nicht herauszufordern ging bald der Ruf in meine Richtung ob es nicht etwas gäbe dass folgenden Ansprüchen genügt:
|
![]() |
Nach ein bisschen überlegen und kramen in den Unterlagen die ich so sammle hab ich tatsächlich eine Lösung gefunden die zumindest aus der Ablage die gewünschte Funktionalität verspricht.
Das sollte einen näheren Blick wert sein.
Die Wahl fiel auf OpenMeeting, welches zu meinem eigenem Erstaunen mittlerweile zur Apache Foundation gewechselt wurde/hatte.
Also Installationanleitung durchgesehen. Zielserver wird ein CentOS 6.3 – die Anleitung gibts für CentOS 5. Naja – soviel wird schon nicht unterschiedlich sein.
Was ganz gut klappte war die Grundinstallation an sich.
Folgende Änderungen habe ich vorgenommen:
Die Installation lief dann auch relativ zügig durch und lief prompt nach dem ersten mal.
Nach einem ersten Test im lokalen Netz musste ich allerdings eine „Designschwäche“ feststellen. Da das Ding am Client unbedingt Adobe Flash braucht, könnte sich der Plattformübergreifende Einsatz einschränken. Adobe hat bekannterweise den Flashsupport für Linux eingestellt und bringt nur noch Sicherheitsaktualisierungen aber keine neue Version raus. Ausgewirkt hat sich das bei unseren internen Tests nur beim Hochladen von Dateien auf das Whiteboard. Manche Clients konnten einfach nicht hochladen. Was jetzt genau schuld ist weiß ich noch nicht, werd ich aber noch weiter verfolgen.
Etwas gefinkelt war allerdings der Wunsch nach SSL-Absicherung der Kommunikation. Geglückt ist es dann schluß endlich mit folgendem Vorgehen:
# In das Conf-Verzeichnis der Installation wechseln cd /<Installationsverzeichnis>/conf # Das Verzeichnis "key_generierung" erstellen mkdir key_generierung cd key_generierung # Erst mal ein neues Serverzertifikat erstellen openssl genrsa -des3 -out server.key 2048 # CSR erstellen damit dieser signiert werden kann openssl req -new -key server.key -out server.csr # Zertifik selbst bestätigen für 10 Jahre openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
Soweit so gut – jetzt hat man mal ein normales selbstsigniertes Serverzertifikat. Aber wie bringt man das in den JAVA-Keystore ?
„Ganz“ einfach: Der Keystore liegt nach der OpenMeeting Installation im Verzeichnis <Installationsverzeichnis>/conf/keystore. Also in das /conf – Verzeichnis wechseln und folgendes eingeben
# In das Conf-Verzeichnis der Installation wechseln cd /<Installationsverzeichnis>/conf # Erst mal das CSR aus dem Keystore holen keytool -certreq -keyalg RSA -alias red5 -file red5.csr -keystore keystore # Eine -eindeutige- Seriennummer generieren echo 04 > serial.txt # Den CSR aus dem Keystore mit dem selbst erstelltem Serverkey signieren openssl x509 -CA key_generierung/server.crt -CAkey key_generierung/server.key -CAserial serial.txt -req -in red5.csr -out red5.cer -days 3650 # Das Serverzertifikat in den Keystore importieren keytool -import -file key_generierung/server.crt -keystore keystore -alias serverCA # Das selbsterstellte (!) Serverzertifikat in den vertrauten CA-Store laden keytool -import -file key_generierung/server.crt -keystore keystore -alias serverCA -trustcacerts # Das erstellte Serverzeritifikate laden keytool -import -file red5.cer -keystore keystore -alias red5
Danach noch die Ports in 2 Dateien eintragen:
1) /conf/red5.properties ändern (rtmps.port=5443) und das Kennwort für den Keystore eintragen (rtmps.keystorepass=xyxyXYXYxyxy)
2) /webapps/openmeetings/config.xml den Port zwischen den Tags <rtmpsslport>5443</rtmpsslport> eintragen und die SSL wie Proxy festlegen: <useSSL>yes</useSSL> sowie <proxyType>best</proxyType>
Die entsprechenden Zeilen sind schnell gefunden….
Ist das so weit gelungen, fehlt noch eine Änderung in /conf/red5-core.xml. Dort müssen die Kommentarzeilen um den Block RTMPS entfernt werden. Der Anfang eines Kommtares in XML-Dateien wird damit eingeleitet <!– und das Ende mit –> festgelegt. Beide Kommentarzeilen löschen und Datei wieder speichern. Somit ist einer gesicherten Übertragung mit RTMPS nichts mehr im Wege stehen.
Wer jetzt noch das Webinterface über SSL absichern will (und Ihr wollt 😀 ) hat noch ein paar Schritte zur Vollkommenheit:
OpenMeeting neu starten und es sollte nun Verschlüsselt klappen.
Viel Spaß dabei…..