Guten Tag, geschätzte Habrbewohner und Gäste des Portals!
Vor nicht allzu langer Zeit hatte ich die Notwendigkeit, einen kleinen Server für Video-Konferenzen einzurichten. Es standen nicht viele Optionen zur Wahl – BBB und OpenMeetings, da nur diese in Bezug auf die Funktionalität geeignet waren:
- Kostenlos
- Desktop- und Dokumentenfreigabe usw.
- Interaktive Zusammenarbeit mit Benutzern (gemeinsame Tafel, Chat usw.)
- Es ist keine zusätzliche Softwareinstallation für die Clients erforderlich
Ich begann mit BBB… nun, das klappte nicht wirklich… Erstens – es gab Anforderungen an die tatsächliche Hardware, da auf virtuellen Maschinen keine Funktionsfähigkeit garantiert werden kann; Zweitens – der Ressourcenverbrauch. Ja, gutes Bild und hervorragender Ton, aber für meine Aufgaben unverhältnismäßig zum Ressourcenverbrauch.
Ich begann mit OpenMeetings. Als Liebhaber von von anderen Benutzern getesteten und stabilen Versionen installierte ich die letzte stabile Version 4.0.8 (diesen Prozess werden wir hier nicht behandeln). Alles gut, bis auf die Tatsache, dass es auf FLASH basiert. Nun, da Chrome nicht funktionierte, ging es im Firefox… aber das widerspricht Punkt 4, da nicht alle Firefox verwenden und nicht jeder ihn mag. Ich war schon ziemlich enttäuscht, als ich sah, dass die Version 5.0.0-M1 ohne FLASH angekündigt war! Hier begann alles. Ich sage gleich, es gelang mir nicht, alles auf einmal zum Laufen zu bringen, es dauerte etwa 2 Wochen, 1-2 Stunden pro Tag, bis alles vollständig lief.
Ich habe es also auf Ubuntu 18.0.4-LTS installiert. Anforderungen:
- JRE 8
- Kurento Media Server
Fangen wir mit JRE8 an. Standardmäßig wird aus den Repositories Version 11 installiert, daher fügen wir das Repository hinzu und starten dann die Installation der benötigten Version:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installerNach der Installation muss die standardmäßige Java-Version festgelegt werden:
sudo apt-get install oracle-java8-set-defaultwir überprüfen die Version
java -versionsollte ausgeben
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)jetzt müssen die Home-Verzeichnisse festgelegt werden.
cat >> /etc/environment <<EOL
JAVA_HOME=/usr/lib/jvm/java-8-oracle
JRE_HOME=/usr/lib/jvm/java-8-oracle/jre
EOLFür das ordnungsgemäße Funktionieren von Video-/Audio-Streams ist der Kurento Media Server (KMS) erforderlich. Es gibt verschiedene Installationsmöglichkeiten, ich habe die Docker-Option verwendet. Der Prozess der Installation und Konfiguration von Docker gehört nicht zu diesem Artikel, zum Glück ist das Internet voller Informationen. Also, starten wir den KMS
docker run -d --name kms -p 8888:8888 kurento/kurento-media-server:latest Jetzt beginnen wir mit der Installation der Begleitkomponenten:
MySQL OM verfügt über eine integrierte Datenbank, aber es wird nicht empfohlen, sie in der Produktionsversion zu verwenden. Installieren Sie eine beliebige für Sie passende Version. Auch die aus den Standard-Repositories ist geeignet.
sudo apt-get install mysql Um Java mit MySQL zu verbinden, muss man und in den Ordner /webapps/openmeetings/WEB-INF/lib/ legen. Die MySQL-Verbindungsanpassung befindet sich in der Datei /webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml.
ImageMagick — Wird für das gemeinsame Board, die Dokumenten- und Bilddemonstrationen benötigt. Auch hiervon nehmen wir aus den Standard-Repos.
sudo apt-get install imagemagickGhostScript — wenn wir mit PDFs arbeiten wollen, führt kein Weg daran vorbei. Die Repositories sind ebenfalls standardmäßig.
OpenOffice oder Libre Office — zum Ausgeben aller Formate von Bürodokumenten…
FFMpeg und SoX — um die Möglichkeit zu haben, Videokonferenzen in verschiedenen Formaten aufzuzeichnen. Die Version sollte 10.3 oder neuer sein.
sudo apt install ffmpeg
sudo apt-get install sox Nun sind wir bereit, openmeetings selbst herunterzuladen.
Heruntergeladen und in den benötigten Ordner entpackt.
Es scheint alles bereit zu sein für den Start (insbesondere wenn man der ), aber dort gibt es so ein Linkformat . Wenn man auf https und den Port 5443 achtet, versteht man, dass es nicht funktionieren wird. Natürlich kann man das Skript ./bin/startup.sh starten und der Server wird hochfahren. Man könnte sogar darauf zugreifen und es über den Link einstellen , aber es wird keinen ordentlichen Betrieb geben. Alle Browser, besonders Chrome, kämpfen derzeit für die Sicherheit der Nutzer und erlauben die Verwendung von Kamera und Mikrofon nur über https. Mit FF ist es möglich, darauf zuzugreifen und die Kamera zu aktivieren, aber das bindet uns wiederum an einen einzigen Browser. Daher gehen wir zur Installation und Konfiguration von SSL über. Man kann ein Zertifikat gegen Geld erstellen lassen oder es selbst herstellen; es wird OM nicht schlechter machen.
Die Version OM 5.0.0-M1 basiert auf TomCat und nicht auf Apache. Die Konfiguration des Webservers befindet sich im Ordner ./conf/. Wie man ein selbstsigniertes Zertifikat erstellt und in TomCat einfügt, habe ich bereits .
Jetzt ist https eingerichtet, gehen wir in den Ordner ./bin und starten statup.sh und nach dem Start des Servers wechseln wir zum Web-Installer. . Hier ist alles einfach und intuitiv, AUSSER im Abschnitt „Konverter“. Hier müssen die Pfade zu unseren zusätzlich installierten Paketen angegeben werden.
- ImageMagick Pfad /usr/bin
- FFMPEG Pfad /usr/bin
- SoX Pfad /usr/bin
- OpenOffice/LibreOffice Pfad für jodconverter /usr/lib/libreoffice (ich habe Libre installiert)
Die Einstellungen sind dann wieder nicht schwierig.
Nach dem ersten Login im System unbedingt zu „Verwaltung“ -> „Konfiguration“ wechseln und den Punkt path.ffmpeg finden und den darin gespeicherten Wert „/usr/bin“ löschen. Einstellungen speichern.
Nun ist unser VCS-Server eingerichtet und bereit für den Einsatz.
Nach dem Neustart des Servers muss
- die Datenbank SGBD (wenn Sie nicht das eingebettete Derby verwenden)
- KMS
- das Skript statup.sh
Man kann es manuell machen, aber es können auch Autostartscripts erstellt werden.
Um „nach außen“ im Firewall die Ports 5443, 5080, 8888 freizugeben, ist notwendig.
Viel Spaß bei der Benutzung!
P.S. Wenn die Kamera kein Bild überträgt und Sie niemanden außer sich selbst sehen, müssen Sie in der Firewall die Domain und den Port zu den Ausnahmen hinzufügen. Wenn Kaspersky aktiv ist, funktioniert es einwandfrei und lässt alles durch (eigentlich überraschend!), aber Avast und die in Windows integrierte Lösung sind schwierig zu konfigurieren.
Quelle: habr.com
