You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Installatie Openmeetings

Preparation

  • Install CentOS 6.3 64-bit
  • I'm installing OM on /data, as this server will be a node in a cluster which will be configured at a later stage.

    swftools

    {{# mkdir -p /install/openmeetings/swftools/ && cd /install/openmeetings/swftools/
  1. wget http://www.swftools.org/swftools-0.9.2.tar.gz
  2. tar xvzf swftools-0.9.2.tar.gz
  3. cd swftools-0.9.2
  4. yum install gcc-c++ zlib-devel libjpeg-devel freetype-devel giflib-devel
  5. ./configure --libdir=/usr/lib --bindir=/usr/bin
  6. make
  7. vi swfs/Makefile #anders foutmelding met make install}}
    In de lijnen met rm de opties "-o" en "-L" verwijderen
  8. make install
    ==ghostscript==
  9. yum install ghostscript
    ==jodconverter==
  10. yum install unzip
  11. mkdir /install/openmeetings/jodconverter && cd /install/openmeetings/jodconverter/
  12. wget http://jodconverter.googlecode.com/files/jodconverter-core-3.0-beta-4-dist.zip
  13. unzip jodconverter-core-3.0-beta-4-dist.zip
    ==lame & ffmpeg==
  14. mkdir /install/openmeetings/lame && cd /install/openmeetings/lame
  15. wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flame%2Ffiles%2Flame%2F3.99%2F&ts=1359065447&use_mirror=netcologne
  16. tar xvzf lame-3.99.5.tar.gz && cd lame-3.99.5
  17. ./configure --libdir=/usr/lib --bindir=/usr/bin
  18. make && make install
  19. mkdir /install/openmeetings/ffmpeg && cd /install/openmeetings/ffmpeg
  20. wget http://ffmpeg.org/releases/ffmpeg-1.1.1.tar.gz
  21. tar xvzf ffmpeg-1.1.1.tar.gz
  22. cd ffmpeg-1.1.1
  23. ./configure --libdir=/usr/lib --bindir=/usr/bin --enable-libmp3lame --disable-yasm
  24. make && make install
    ==sox==
  25. yum install sox
    ==libreoffice==
  26. yum install libre-office

==openmeetings==

  1. mkdir /install/java && cd/install/java
    download Java SE 7 SDK from http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
  2. tar jre-7u11-linux-x64.tar.gz
  3. mv jre1.7.0_11 /opt
  4. vi /etc/profile.d/java.sh

export JAVA_HOME=/opt/jre1.7.0_11
export PATH=$PATH:$JAVA_HOME/bin

  1. source /etc/profile.d/java.sh
  2. mkdir -p /install/openmeetings/openmeetings && cd /install/openmeetings/openmeetings
  3. wget http://www.apache.org/dyn/closer.cgi/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz
  4. mkdir /data/openmeetings && cd /data/openmeetings #voor cluster later
  5. tar xvzf apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz
  6. vi /etc/my.cnf

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql

  1. Disabling symbolic-links is recommended to prevent assorted security risks
    symbolic-links=0
    default-character-set = utf8
    collation-server = utf8_unicode_ci
    init-connect='SET NAMES utf8'
    character-set-server = utf8

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

  1. service mysqld restart
  2. mkdir /install/openmeetings/mysql-connector-java && cd /install/openmeetings/mysql-connector-java
  3. wget http://www.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.22.tar.gz/from/http://cdn.mysql.com/
  4. tar xvzf mysql-connector-java-5.1.22.tar.gz
  5. cp mysql-connector-java-5.1.22/mysql-connector-java-5.1.22-bin.jar /data/openmeetings/webapps/openmeetings/WEB-INF/lib/
  6. cp /data/openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml /data/openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
  7. vim /data/openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
    Password aanpassen
  8. chmod 640 /data/openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
  9. cd /data/openmeetings/
  10. ./red5.sh
    Browsen naar http://pbx02:5080/openmeetings/install
    username: admin
    userpass: short pw
    email: ict@dafra.be
    user time zone: France, ... Etc/GMT+1
    org name: Dafra Pharma International NV
    allow self-reg: no
    default rooms: no
    mail-referer: ict@dafra.be
    smtp-server: cluster2fs
    default language: english
    default font: arial
    JOD path: /install/openmeetings/jodconverter/jodconverter-core-3.0-beta-4/lib
    Enable SIP: no
    SIP rooms prefix
    SIP ext context: intern
    Sip applet - enable SIP: yes
    SIP Realm:
    SIP Port:
    SIP Proxy:
    Install klikken, wachten tot klaar, ctrl-c in terminal venster waar red5.sh was gestart
  11. vi /etc/init.d/red5

<nowiki>

  1. #!/bin/sh -e
  2. Startup script for Red5

export RED5_HOME=/data/openmeetings/

start_red5="$RED5_HOME/red5.sh start"
stop_red5="$RED5_HOME/red5-shutdown.sh stop"

start() {
echo -n "Starting Red5: "
$

Unknown macro: {start_red5}

&
echo "done."
}
stop() {
echo -n "Shutting down Red5: "
$

Unknown macro: {stop_red5}


echo "done."
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 10
start
;;
*)
echo "Usage: $0

Unknown macro: {start|stop|restart}

"
esac

exit 0 </nowiki>

  1. chmod +x /etc/init.d/red5

==securisering: aanvragen certificaat en creëren keystore==

  • verwijder bestaande keystore:
  1. rm -f /data/openmeetings/conf/keystore
  • creëer nieuwe keystore:
  1. /opt/jre1.7.0_11/bin/keytool -keysize 2048 -genkey -alias red5 -keyalg RSA -keystore /data/openmeetings/conf/keystore

password: short usual
first and last name: meeting.dafra.be
name OU: OU
organization: Dafra
city: Turnhout
state: Antwerp
country code: BE
yes
return (same password)

  • creëer CSR:
  1. /opt/jre1.7.0_11/bin/keytool -certreq -keyalg RSA -alias red5 -file /data/openmeetings/conf/red5.csr -keystore /data/openmeetings/conf/keystore
  1. cd /install/openmeetings/certs && unzip AllCerts.zip && cd certs
  • installeer root certificate:
  1. /opt/jre1.7.0_11/bin/keytool -import -alias root -keystore /data/openmeetings/conf/keystore -trustcacerts -file TrustedRoot.crt
    still add? YES
  • install intermediate certificate:
  1. /opt/jre1.7.0_11/bin/keytool -import -alias intermed -keystore /data/openmeetings/conf/keystore -trustcacerts -file DigiCertCA.crt
  • installeer server certificate - alias moet hetzelfde zijn als van de CSR:
  1. /opt/jre1.7.0_11/bin/keytool -import -alias red5 -keystore /data/openmeetings/conf/keystore -trustcacerts -file star_dafra_be.crt
  • nakijken inhoud keystore:
  1. /opt/jre1.7.0_11/bin/keytool -v -list -keystore /data/openmeetings/conf/keystore
  • keystore copieren naar keystore.screen om screen sharing ook beveiligd te maken.
  1. cp /data/openmeetings/conf/keystore /data/openmeetings/conf/keystore.screen

==securiseren RMTP==

  • aanpassingen aan config files:
  1. vi /data/openmeetings/conf/red5-core.xml
    onder <nowiki> <!-- RTMPS --></nowiki> commentaar regels weghalen zodat sectie actief wordt.
    ook:
    <property name="keystoreFile" value="conf/keystore" />
    vervangen door:
    <property name="keystoreFile" value="/data/openmeetings/conf/keystore" />
  2. vi /data/openmeetings/conf/red5.properties

rtmps.port=5443
rtmps.keystorepass= usual short password

  1. chmod 640 /data/openmeetings/conf/red5.properties
  2. vi /data/openmeetings/webapss/openmeetings/config.xml

<nowiki>
<rtmpsslport>5443</rtmpsslport>
<useSSL>yes</useSSL>
<proxyType>best</proxyType>
</nowiki>

  1. /etc/init.d/red5 restart
  • testen met tcpdump tcp port 5443: zou pakketten moeten geven. tcpdump tcp port 1935 slechts 1 packet

==securiseren HTTP==

  1. cp /data/openmeetings/conf/jee-container-ssl.xml /data/openmeetings/conf/jee-container.xml
  2. vi /data/openmeetings/webapps/openmeetings/config.xml

<nowiki><protocol>https</protocol></nowiki>
<nowiki><red5httpport>443</red5httpport></nowiki>

  1. vi /data/openmeetings/conf/red5.properties

https.port=443
http.port=443

  1. /etc/init.d/red5 restart

==firewall==

  • VIP creëren voor 443 en 5443
  • NAT via 213.224.25.30

==Opmerkingen:==

  • installatie opnieuw doen:
  1. rm /data/openmeetings/webapps/openmeetings/conf/install.xml
  2. vertalen: /data/openmeetings/webapps/openmeetings/languages bekijken en string opzoeken + id. Id in vertaaltool van Openmeetings opzoeken en zo vertalen.
  3. debugging: openmeetings opstarten met red5-debug.sh
    #
    =Upgrade naar Openmeetings 2.1=
    ==Upgrade==
  • zou beter zijn voor Asterisk integratie
  • aanmelden met admin, lokale DB
  • Administration, Backup, System Backup
  1. cd /install/openmeetings/openmeetings
  2. /etc/init.d/red5 stop
  3. mv /data/openmeetings /data/openmeetings20
  4. mkdir /data/openmeetings
  5. mv /install/openmeetings/openmeetings/ /install/openmeetings/openmeetings20
  6. mkdir /install/openmeetings/openmeetings21 && cd /install/openmeetings/openmeetings21
  7. wget https://builds.apache.org/job/openmeetings/lastSuccessfulBuild/artifact/singlewebapp/dist/apache-openmeetings-2.1.0.r1441250-31-01-2013_2314.tar.gz
  8. tar xvzf *
  9. mv * /data/openmeetings/
  10. cd /data/openmeetings
  11. cp /install/openmeetings/mysql-connector-java/mysql-connector-java-5.1.22/mysql-connector-java-5.1.22-bin.jar ./webapps/openmeetings/WEB-INF/lib/
  12. cp webapps/openmeetings/WEB-INF/classes/META-INF/mysql_persistence.xml webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
  13. vim webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml

, Password=usual"/>

  1. chmod 640 /data/openmeetings/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml
  2. mysqladmin -p drop openmeetings
  3. /etc/init.d/red5 start #lange wachten

Continue with step 1
zelfde als voor openmeeting 2.0
step 2 (duurt lang)

  1. /etc/init.d/red5 stop
  • Securiseren RMTP en HTTP idem als Openmeetings 2.0, cert ook opnieuw aangevraagd en geimporteerd.
  • LDAP config files terug zetten van backup:
  1. cp /data/openmeetings20/webapps/openmeetings/conf/edir.ldap.cfg /data/openmeetings/webapps/openmeetings/conf/
  1. /etc/init.d/red5 start
    Dit geeft volgende foutmelding:
    ERROR 02-02 00:36:32.388 ManageCryptStyle.java 66485 49 org.apache.openmeetings.utils.crypt.ManageCryptStyle [NioProcessor-18] - [getInstanceOfCrypt]
    java.lang.ClassNotFoundException: org.openmeetings.utils.crypt.MD5Implementation
    Is intussen gefixed in de code (Committed revision 1442468).. Manuele fix:
  2. mysql -p -D openmeetings -e "update configuration set conf_value = 'org.apache.openmeetings.utils.crypt.MD5Implementation' where conf_key = 'crypt_ClassName';"

==Branding:==

  • in /data/openmeetings/webapps/openmeetings/config.xml:
    <nowiki><currentappname>Dafra Conferencing Tool</currentappname> </nowiki>
  • link achter die naam:
    <nowiki><currentappnameurl>https://meetings.dafra.be</currentappnameurl></nowiki>
  • logo laten verdwijnen:
    <nowiki><displayelement name="logo" display="false" x="5" y="5"/></nowiki>
  • verplaatsen titel:
  • eliminatie /openmeetings in de URL: niets voor doen, er gebeurt vanzelf een redirect vanuit de root

=Integratie met Asterisk 11=
==opmerking==

==dahdi en meetme installeren op asterisk==

  • tot opwaardering pbx03 en herinstallatie cluster alles op pbx02
  1. cd /install/asterisk
  2. wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz
  3. tar xvzf dahdi-linux-complete-current.tar.gz
  4. cd dahdi-linux-complete-2.6.1+2.6.1/
  5. make all && make install && make config
  6. service dahdi start
  7. cd /install/asterisk/asterisk-11.2.0
  8. make distclean
  9. configure
  10. make menuselect # meetme activeren
  11. make && make install && make samples

==configuratie realtime==

  • module res_odbc moet mee gecompileerd zijn in Asterisk. Hier zijn ODBC pakketten voor nodig (ik dacht mysql-connector-odbc, unixODBC en unixODBC-devel)
    ===ODBC Setup===
  1. vi /etc/odbc.ini

[asterisk-connector]
Description = MySQL connection to 'openmeetings' database
Driver = MySQL
Database = openmeetings
Server = localhost
User = root
Password = usual short
Port = 3306
Socket = /var/lib/mysql/mysql.sock

  1. chmod 640 /etc/odbc.ini
  • odbcinst.ini is OK zoals het is
  • test:
  1. echo "select 1" | isql -v asterisk-connector
    ===Asterisk===
  • modules laten laden
  1. vi /etc/asterisk/modules.conf

preload => res_odbc.so
preload => res_config_odbc.so

  • sip.conf
  1. vi /etc/asterisk/sip.conf
    [general]
    rtcachefriends=yes
    [sip] ;interne user voor red5sip
    type=friend
    user=sip
    context=rooms
    secret=red5sip
    disallow=all
    allow=ulaw
    host=dynamic
    nat=yes
  • extconfig.conf:
  1. vi /etc/asterisk/extconfig.conf

[settings]
sippeers => odbc,asterisk,sipusers
meetme => odbc,asterisk,meetme

  • extensions.conf:
  1. vi /etc/asterisk/extensions.conf

[rooms]
switch => Realtime/@
exten => _600X!,1,MeetMe($

Unknown macro: {EXTEN}

,dM)
exten => <extension>,1,Set(SIP_NO=<number to call with sipnet>)
exten => <extension>,2,Goto(sipnet-out,s,1)
exten => _X.,1,Answer
exten => _X.,2,Playback(invalid)
exten => _X.,3,Hangup

[sipnet-out]
exten => s,1,Answer
exten => s,n,Dial(SIP/$

Unknown macro: {SIP_NO}

@SIPNET,30)
exten => s,n,HangUp

  • res_odbc.conf
  1. vi /etc/asterisk/res_odbc.conf

[asterisk]
enabled => yes
dsn => asterisk-connector
pre-connect => yes

  • creeer tabellen:
  1. mysql -D openmeetings -p < /install/asterisk/asterisk-11.2.0/contrib/realtime/mysql/sippeers.sql
  2. mysql -D openmeetings -p < /install/asterisk/asterisk-11.2.0/contrib/realtime/mysql/meetme.sql
  1. service asterisk restart

(??? * creëer user:
mysql -p -D openmeetings -e "insert into sipusers (allow, context, disallow, host, name, secret) values ('alaw' , 'rooms' , NULL, 'dynamic' , '314', NULL);"

  • creëer meet me conference
  1. mysql -D openmeetings -p -e "insert into extensions (context, exten, priority, app, appdata) values ('rooms', '600', 1, 'MeetMe', '600,dM');"
  2. mysql -D openmeetings -p -e "insert into meetme (confno, adminpin) values ('600', '1234');"
  • laat sip user registreren
    )

===red5sip===

  1. mkdir /install/openmeetings/red5sip && cd /install/openmeetings/red5sip
  2. svn co http://red5phone.googlecode.com/svn/branches/red5sip
  3. svn checkout http://red5phone.googlecode.com/svn/branches/red5sip/
  4. yum install ant
  5. ant
  6. yum install jakarta-commons-daemon-jsvc
  7. cp -r /install/openmeetings/red5sip/red5sip /data/ && cd /data/red5sip
  8. vi settings.properties

red5.host=127.0.0.1
red5.codec=asao
sip.obproxy=127.0.0.1
sip.phone=sip
sip.authid=sip
sip.secret=red5sip
sip.realm=asterisk
sip.proxy=127.0.0.1
rooms.forceStart=no
rooms=1

  1. vi red5sip.sh

JAVA_HOME=/opt/jre1.7.0_11
INSTALL_DIR=/data/red5sip
LOGS_DIR=$INSTALL_DIR/log
"jsvc" overal vervangen door "/usr/bin/jsvc" anders foutmelding: "jsvc error: JSVC re-exec requires execution with an absolute or relative path"

  1. chmod +x red5sip.sh && cp red5sip.sh /etc/init.d/ && chkconfig red5sip.sh on
  • No labels