freier Konferenzserver auf Flashbasis
Installation der benötigten Pakete (unter debian wheezy):
apt-get install lame imagemagick ffmpeg yasm sox swftools gdebi flvtool2 libjpeg62 libfaad2 jodconverter libavcodec-extra-53 mysql-server red5-server msttcorefonts docvert-converter pdf2svg
Anschließend für den MYSQL-root das Passwort vergeben und einen Benutzer openmeetings
mit dem Passwort openmeetings
anlegen:
mysql -uroot -p CREATE DATABASE openmeetings DEFAULT CHARACTER SET 'utf8'; GRANT ALL PRIVILEGES ON openmeetings.* TO 'openmeetings'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION; quit;
Anmeldung des Benutzers openmeetings testen:
mysql -uopenmeetings -p
Anschließend den red5-server stoppen:
/etc/init.d/red5-server stop
Anschließend ein Downloadverzeichnis erstellen und da reinwechseln:
mkdir /install cd /install mkdir red5
Download von openmeeting und dem benötigten JAVA-Plugin mysql-connector-java-5.1.23.jar
:
wget https://builds.apache.org/job/openmeetings/lastSuccessfulBuild/artifact/singlewebapp/dist/apache-openmeetings-3.0.0.r1538874-05-11-2013_0623.tar.gz wget http://www.netzwerk-lehmann.de/projekte/openmeetings-1/mysql-connector-java-5.1.23.tar.gz/at_download/file cd red5 tar xvfz ../apache-openmeetings-3.0.0.r1538874-05-11-2013_0623.tar.gz cd ..
Altes Verzeichnis wegkopieren; neues Verzeichnis reinkopieren:
mv /usr/share/red5 /usr/share/red5.org mv red5 /usr/share/red5 tar xvfz mysql-connector-java-5.1.23.tar.gz cp mysql-connector-java-5.1.27-bin.jar /usr/share/red5/webapps/openmeetings/WEB-INF/lib/ cd /usr/share/red5/webapps/openmeetings/WEB-INF/classes/META-INF
MYSQL-Verbindung konfigurieren:
mv mysql_persistence.xml persistence.xml ... , Username=openmeetings , Password=openmeetings" /> ...
Rechte für red5-Benutzer setzen:
chown -R _red5 /usr/share/red5/*
Server wieder starten:
/etc/init.d/red5-server start
Anmelden an http://10.10.81.158:5080/openmeetings/install
Administrator konfigurieren und als dieser anmelden…
dann JODconverter konfigurieren:
jod.path: /usr/share/red5/webapps/openmeetings/jod
dann Benutzer konfigurieren
Erstelle eine Benutzer(hier meinldapUser) im AD dessen Passwort nicht abläuft und der in einer eigenen Standardgruppe ist.
Entferne ihn aus der Gruppe Domänenbenutzer
. Dadurch hat er keine Rechte außer gegen das AD zu authentifizieren.
Erstelle eine Textdatei /usr/lib/red5/webapps/openmeetings/conf/mydom_ldap.cfg
auf dem Openmeetingsserver mit folgendem Inhalt:
ldap_server_type=ActiveDirectory ldap_conn_url=ldap://meinDomCtrl:389 ldap_admin_dn=CN:meinldapUser,OU:Dienstkonten,OU:Administration,DC:meinefirma,DC:com ldap_passwd=geheimesPW ldap_search_base=OU:User,DC:meinefirma,DC:com #field_user_principal=sAMAccountName field_user_principal=userPrincipalName ldap_auth_type=SIMPLE ldap_sync_password_to_om=no ldap_user_attr_lastname=sn ldap_user_attr_firstname=givenName ldap_user_attr_mail=mail ldap_user_attr_street=streetAddress ldap_user_attr_additionalname=description ldap_user_attr_fax=facsimileTelephoneNumber ldap_user_attr_zip=postalCode ldap_user_attr_country=co ldap_user_attr_town=l ldap_user_attr_phone=telephoneNumber
Melde Dich über das Webinterface http://meinOmsrv:5080/openmeetings am Server an der lokalen DB an.
klicke auf Administration / LDAP.
erstelle eine neue Konfiguration :
Name: myNTDOM
Enabled: yes
Config file Name: mydom_ldap.cfg
add Domain to username: yes
Domain: meinefirma.com
(abspeichern nicht vergessen!)
Dadurch wird später der eingegebene Benutzername (Beispiel:pitti
) mit der Domäne(meinefirma.com
) verknüpft und gegen das LDAP-Feld userPrincipalName
im AD geprüft.
Wenn der Benutzer (Beispiel: pitti@meinefirma.com) gefunden wird, wird das eingegebene Passwort dagegen geprüft.
Openmeetings lässt sich nicht so einfach auf Ports kleiner 1024 umleiten.
1.Möglichkeit : iptables
Eintrag in /etc/rc.local
(debian wheezy):
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5080
2.Möglichkeit : authbind
3.Möglichkeit : xinetd
4.Möglichkeit : socat
socat TCP4-LISTEN:80,fork TCP4:openmeetingssrv:5080
5.Möglichkeit : redir
Die Anleitung auf der Website http://openmeetings.apache.org/RTMPSAndHTTPS.html ist ziemlich verwirrend und hinterließ mich ratlos.
Damit wenigstens die Anmeldung nicht mitgeschnüffelt werden kann, muss der Datenverkehr verschlüsselt und dann an der unverschlüsselten Port 5080 weitergeleitet werden.
Der Flashverkehr wird nach wie vor unverschlüsselt übermittelt.
Installiere als erstes den Apache und konfiguriere ihn so, dass er auf Port 443 hört. (siehe auch Apache2)
Dann muss der Port 80 im Apache deaktiviert werden.
Dann muss die Datei /etc/apache2/sites-enabled/default-ssl
wie folgt angepasst werden:
... ProxyRequests On ProxyVia On Header always set Strict-Transport-Security "max-age=31536000 ; includeSubdomains" SSLProxyEngine On SSLProtocol all -SSLv2 ProxyPass /openmeetings/ http://127.0.0.1:5080/openmeetings/ ProxyPassReverse /openmeetings/ http://127.0.0.1:5080/openmeetings/ <Proxy *> Order allow,deny Allow from all </Proxy> SSLCertificateFile /etc/ssl/certs/meinCert.pem SSLCertificateKeyFile /etc/ssl/private/meinCert.key ...
Apacheneustart:
/etc/init.d/apache2 restart
Test von: https://meinomeetingsrv/openmeetings/
fertig!
/usr/lib/red5/log/openmeetings.log #oder /usr/share/red5/log/*
um Dateien auf die Arbeitsfläche uploaden zu können, musste ich noch ein Verzeichnis anlegen(wurde in Logdatei angemeckert):
mkdir -p /usr/share/red5/work/red5Engine/0.0.0.0/openmeetings/OpenmeetingsApplication-filestore/8067/8745/67A0927E25F569C91CD01974CDECE/data chown -R _red5 /usr/share/red5/work
MS-Officedateien werden zwar hochgeladen aber nicht konvertiert.
Dienst docvert-converter
muss gestartet sein Port 2002 muss für jodconverter geöffnet sein.
Führe auf dem laufenden System folgenden Befehl aus:
/usr/share/red5/admin.sh -b
es wird eine Backupdatei backup_DATUM_UHRZEIT.zip
im aktuellen Verzeichnis erstellt.
admin -r -file backup_DATUM_UHRZEIT.zip
Daemonneustart.
das Script (omwaechter.sh
) per cronjob alle 10 Minuten von 7-22 Uhr ausführen :
*/10 7-22 * * * /pfad/zu/omwaechter.sh >/dev/null
#!/bin/sh wget -qO- http://meinOMServer:5080/openmeetings/ >/dev/null f=$? if [ ! $f -eq 0 ]; then echo https://meinOMServer/ | mail -s Openmeetingsfehler admin@domain.de /etc/init.d/red5 stop /etc/init.d/mysql restart /etc/init.d/red5 start # echo $f returnwert fi