02/09/2017 01:50 1/10 Installer le connecteur funambol pour SOGo Installer le connecteur funambol pour SOGo Source: http://wiki.contribs.org/funambol Installation du serveur Funambol Télécharger le serveur funambol mkdir -p./funambol cd./funambol wget http://download.forge.objectweb.org/sync4j/funambol-9.0.0.bin Puis l'exécuter chmod +x funambol-9.0.0.bin./funambol-9.0.0.bin Accepter la licence, et valider le choix du répertoire de destination (/opt) À la fin, l'installateur vous demande si vous voulez démarrer, le serveur, il faut choisir no Installation du driver MySQL Pour que le connecteur SOGo fonctionne, funambol doit utiliser une base MySQL. Il faut donc installer le driver MySQL. Télécharger le driver depuis http://dev.mysql.com/downloads/connector/j/5.0.html mkdir -p /opt/funambol/tools/mysql/lib wget http://dev.mysql.com/get/downloads/connector-j/mysql-connectorjava-5.0.8.tar.gz/from/http://www.mirrorservice.org/sites/ftp.mysql.com/ tar xvzf mysql-connector-java-5.0.8.tar.gz mv mysql-connector-java-5.0.8/mysql-connector-java-5.0.8-bin.jar /opt/funambol/tools/mysql/lib rm -rf mysql-connector-java-5.0.8/ Créer une base de données mysql pour funambol /usr/bin/openssl rand -base64 60 tr -c -d '[:alnum:]' > my.pw chmod 600 my.pw db configuration setprop mysqld InnoDB enabled LocalNetworkingOnly no expand-template /etc/my.cnf sv t /service/mysqld sleep 10 mysqladmin create funamboldb --default-character-set=utf8 mysql -e "grant all privileges on funamboldb.* to 'funamboluser'@'localhost' identified by '$(cat my.pw)'" mysql -e 'flush privileges' WikiT - https://wikit.firewall-services.com/
Last update: tuto:ipasserelle:divers:connecteur_funambol_sogo https://wikit.firewall-services.com/doku.php/tuto/ipasserelle/divers/connecteur_funambol_sogo 12/07/2012 22:55 Configurer funambol pour utiliser cette base de donnée pw=$(cat my.pw) sed -i -e "s/^dbms=.*/dbms=mysql/" \ -e "s/^jdbc\.classpath=.*/jdbc\.classpath=\.\.\/tools\/mysql\/lib\/mysqlconnector-java-5.0.8-bin\.jar/" \ -e "s/^jdbc\.driver=.*/jdbc\.driver=com.mysql.jdbc.driver/" \ -e "s/^jdbc\.url=.*/jdbc\.url=jdbc:mysql:\/\/localhost\/funamboldb?characterenc oding=utf-8/" \ -e "s/^jdbc\.user=.*/jdbc\.user=funamboluser/" \ -e "s/^jdbc\.password=.*/jdbc\.password=$pw/" \ /opt/funambol/ds-server/install.properties dos2unix /opt/funambol/ds-server/install.properties Désactiver le driver hypersonyc sed -i -e "s/comed=.*/comed=false/" /opt/funambol/bin/funambol Création d'un utilisateur funambol useradd -d /opt/funambol -s /bin/false -c 'Funambol user' funambol Démarrage automatique de funambol db configuration set funambol service status enabled access private TCPPort 8080 Attention: par défaut, funambol utilise le port TCP 8080 et peut donc entrer en conflit avec dansguardian par exemple Créer le script de démarrage: cat <<'' > /etc/init.d/funambol #! /bin/bash # # funambol Start the funambol services # NAME="Funambol Server" FUNAMBOL_HOME=/opt/Funambol/bin FUNAMBOL_USER=funambol FUNAMBOL_BIN=$FUNAMBOL_HOME"/funambol". /etc/rc.d/init.d/functions https://wikit.firewall-services.com/ Printed on 02/09/2017 01:50
02/09/2017 01:50 3/10 Installer le connecteur funambol pour SOGo #cd $FUNAMBOL_HOME case "$1" in start) action "Starting $NAME" \ /bin/su -s /bin/bash -l $FUNAMBOL_USER $FUNAMBOL_BIN start ;; stop) action "Stopping $NAME" \ /bin/su -s /bin/bash -l $FUNAMBOL_USER $FUNAMBOL_BIN stop ;; restart) action "Restarting $NAME" \ /bin/su -s /bin/bash -l $FUNAMBOL_USER $FUNAMBOL_BIN stop && \ /bin/su -s /bin/bash -l $FUNAMBOL_USER $FUNAMBOL_BIN start ;; *) echo "Usage: /etc/init.d/funambol {start stop restart}" exit 1 ;; esac exit 0 chmod 755 /etc/init.d/funambol Créer les liens de démarrage et d'arrêt ln -s /etc/init.d/e-smith-service /etc/rc.d/rc7.d/s98funambol ln -s /etc/init.d/e-smith-service /etc/rc.d/rc6.d/k02funambol ln -s /etc/init.d/e-smith-service /etc/rc.d/rc2.d/k02funambol ln -s /etc/init.d/e-smith-service /etc/rc.d/rc1.d/k02funambol ln -s /etc/init.d/e-smith-service /etc/rc.d/rc0.d/k02funambol Installation du connecteur SOGo Maintenant que le cœur du serveur funambol est installé, il faut mettre en place le connecteur SOGo Installation des dépendances du connecteur Le connecteur SOGo nécessite plusieurs composants java supplémentaires wget http://www.apache.org/dist/commons/collections/binaries/commonscollections-3.2.1-bin.zip unzip commons-collections-3.2.1-bin.zip cp -p commons-collections-3.2.1/commons-collections-3.2.1.jar /opt/funambol/tools/tomcat/lib/ rm -rf commons-collections-3.2.1 wget http://www.apache.org/dist/commons/configuration/binaries/commonsconfiguration-1.6.zip WikiT - https://wikit.firewall-services.com/
Last update: tuto:ipasserelle:divers:connecteur_funambol_sogo https://wikit.firewall-services.com/doku.php/tuto/ipasserelle/divers/connecteur_funambol_sogo 12/07/2012 22:55 unzip commons-configuration-1.6.zip cp -p commons-configuration-1.6/commons-configuration-1.6.jar /opt/funambol/tools/tomcat/lib/ rm -rf commons-configuration-1.6 wget http://www.apache.org/dist/commons/logging/binaries/commonslogging-1.1.1-bin.zip unzip commons-logging-1.1.1-bin.zip cp -p commons-logging-1.1.1/commons-logging-1.1.1.jar /opt/funambol/tools/tomcat/lib/ rm -rf commons-logging-1.1.1 wget http://www.apache.org/dist/commons/lang/binaries/commons-lang-2.5- bin.zip unzip commons-lang-2.5-bin.zip cp -p commons-lang-2.5/commons-lang-2.5.jar /opt/funambol/tools/tomcat/lib/ rm -rf commons-lang-2.5 wget http://json-simple.googlecode.com/files/json_simple.jar cp json_simple.jar /opt/funambol/tools/tomcat/lib/ Installation du connecteur Maintenant que les dépendances sont installées, on peut nstaller le connecteur lui-même. Il faut vérifier la dernière version disponible sur http://www.sogo.nu/downloads/backend.html Téléchargement wget http://www.sogo.nu/uploads/funambol/funambol-sogo-1.0.8.s4j cp funambol-sogo-1.0.8.s4j /opt/funambol/ds-server/modules Configuration pour installation Il faut éditer le fichier install.properties, et ajouter le module sogo sur la ligne modules-to-install sed -i -r -e "s/^modules\-to\-install=(.*)$/modules\-to\- install=\1,funambol\-sogo\-1.0.8/" \ /opt/funambol/ds-server/install.properties Installation des modules et création des tables de la base de données /opt/funambol/bin/install Et répondre oui (y) à toutes les questions On peut maintenant modifier les droits sur l'ensemble de l'installation de funambol chown -R funambol:funambol /opt/funambol/ https://wikit.firewall-services.com/ Printed on 02/09/2017 01:50
02/09/2017 01:50 5/10 Installer le connecteur funambol pour SOGo chmod 750 /opt/funambol/ Démarrage du serveur funambol On peut maintenant démarrer le serveur funambol /etc/init.d/funambol start qui devrait retourner OK si tout s'est bien passé Si on accède à la page http://<nom du serveur>:8080/funambol/ds on devrait voir les informations du serveur. Changer le mot de passe admin de funambol sed -i -e "s/^jdbc_jar=.*/jdbc_jar=\/opt\/funambol\/tools\/mysql\/lib\/mysqlconnector-java-5.0.8-bin.jar/" \ /opt/funambol/bin/admin-passwd Puis: /opt/funambol/bin/admin-passwd Et suivre les instructions (le mot de passe par défaut est sa) Configuration du proxypass Plutôt que d'ouvrir le serveur funambol directement sur l'interface externe, nous allons configurer un proxypass (apache redirigera les requêtes /funambol vers le serveur funambol) mkdir -p /etc/e-smith/templatescustom/etc/httpd/conf/httpd.conf/virtualhosts cat <<'' > /etc/e-smith/templatescustom/etc/httpd/conf/httpd.conf/virtualhosts/28funambolproxypass { $havessl = (exists ${modssl}{status} and ${modssl}{status} eq "enabled")? 'yes' : 'no'; $access = (($funambol{'publicaccess'} 'no') eq 'yes')? "all" : "$localaccess $externalsslaccess"; $OUT = ''; if (($funambol{'status'} 'disabled') eq 'enabled'){ if (($port eq ${'httpd-e-smith'}{'tcpport'}) && ($havessl eq WikiT - https://wikit.firewall-services.com/
Last update: tuto:ipasserelle:divers:connecteur_funambol_sogo https://wikit.firewall-services.com/doku.php/tuto/ipasserelle/divers/connecteur_funambol_sogo 12/07/2012 22:55 'yes')){ $OUT.= " RewriteRule ^/funambol(/.* \$) https://%{http_host}/funambol/ds\$1 [L,R]\n"; } else{ $OUT.= " ProxyPass /funambol http://127.0.0.1:$funambol{tcpport}/funambol/ds\n"; $OUT.= " ProxyPassReverse /funambol http://127.0.0.1:$funambol{tcpport}/funambol/ds\n"; } HERE } } $OUT.=<<"HERE"; <Location /funambol> SSLRequireSSL on order deny,allow deny from all allow from $access </Location> Puis on régénère la configuration d'apache, on vérifie que tout est ok, et on relance apache: expand-template /etc/httpd/conf/httpd.conf httpd -t Si aucune erreur de syntaxe n'est détectée, on relance apache: sv t /service/httpd-e-smith Création des sources de synchronisation pour SOGo cat <<'' > sogo-sync-source-insert.sql INSERT INTO `fnbl_sync_source` (`uri`, `config`, `name`, `sourcetype`) VALUES ('sogo-cal', 'sogo/sogo/sogo/sogo-cal.xml', 'sogo-cal', 'sogo'), ('sogo-card', 'sogo/sogo/sogo/sogo-card.xml', 'sogo-card', 'sogo'), ('sogo-todo', 'sogo/sogo/sogo/sogo-todo.xml', 'sogo-todo', 'sogo'); mysql funamboldb < sogo-sync-source-insert.sql https://wikit.firewall-services.com/ Printed on 02/09/2017 01:50
02/09/2017 01:50 7/10 Installer le connecteur funambol pour SOGo Calendrier mkdir -p /opt/funambol/config/sogo/sogo/sogo mkdir -p /etc/e-smith/templatescustom/opt/funambol/config/sogo/sogo/sogo/sogo-cal.xml touch /etc/e-smith/templates-custom/opt/funambol/config/sogo/sogo/sogo/sogocal.xml/template-begin cat <<'' > /etc/e-smith/templatescustom/opt/funambol/config/sogo/sogo/sogo/sogo-cal.xml/all <?xml version="1.0" encoding="utf-8"?> <java version="1.5.0_10" class="java.beans.xmldecoder"> <object class="ca.inverse.sogo.engine.source.sogosyncsource"> <void property="databasepassword"> <string>{$sogod{'dbpassword'}}</string> <void property="databaseurl"> <string>jdbc:mysql://localhost/sogo</string> <void property="databaseusername"> <string>sogo</string> <void property="info"> <object class="com.funambol.framework.engine.source.syncsourceinfo"> <void property="supportedtypes"> <array class="com.funambol.framework.engine.source.contenttype" length="1"> <void index="0"> <object class="com.funambol.framework.engine.source.contenttype"> <void property="type"> <string>text/x-vevent</string> <void property="version"> <string>1</string> </array> <void property="name"> <string>sogo-cal</string> <void property="sourceuri"> <string>sogo-cal</string> </java> WikiT - https://wikit.firewall-services.com/
Last update: tuto:ipasserelle:divers:connecteur_funambol_sogo https://wikit.firewall-services.com/doku.php/tuto/ipasserelle/divers/connecteur_funambol_sogo 12/07/2012 22:55 expand-template /opt/funambol/config/sogo/sogo/sogo/sogo-cal.xml Carnet d'adresses mkdir -p /etc/e-smith/templatescustom/opt/funambol/config/sogo/sogo/sogo/sogo-card.xml touch /etc/e-smith/templates-custom/opt/funambol/config/sogo/sogo/sogo/sogocard.xml/template-begin cat <<'' > /etc/e-smith/templatescustom/opt/funambol/config/sogo/sogo/sogo/sogo-card.xml/all <?xml version="1.0" encoding="utf-8"?> <java version="1.5.0_10" class="java.beans.xmldecoder"> <object class="ca.inverse.sogo.engine.source.sogosyncsource"> <void property="databasepassword"> <string>{$sogod{'dbpassword'}}</string> <void property="databaseurl"> <string>jdbc:mysql://localhost/sogo</string> <void property="databaseusername"> <string>sogo</string> <void property="info"> <object class="com.funambol.framework.engine.source.syncsourceinfo"> <void property="supportedtypes"> <array class="com.funambol.framework.engine.source.contenttype" length="1"> <void index="0"> <object class="com.funambol.framework.engine.source.contenttype"> <void property="type"> <string>text/x-vcard</string> <void property="version"> <string>1</string> </array> <void property="name"> <string>sogo-card</string> <void property="sourceuri"> <string>sogo-card</string> https://wikit.firewall-services.com/ Printed on 02/09/2017 01:50
02/09/2017 01:50 9/10 Installer le connecteur funambol pour SOGo </java> expand-template /opt/funambol/config/sogo/sogo/sogo/sogo-card.xml Tâches mkdir -p /etc/e-smith/templatescustom/opt/funambol/config/sogo/sogo/sogo/sogo-todo.xml touch /etc/e-smith/templates-custom/opt/funambol/config/sogo/sogo/sogo/sogotodo.xml/template-begin cat <<'' > /etc/e-smith/templatescustom/opt/funambol/config/sogo/sogo/sogo/sogo-todo.xml/all <?xml version="1.0" encoding="utf-8"?> <java version="1.5.0_10" class="java.beans.xmldecoder"> <object class="ca.inverse.sogo.engine.source.sogosyncsource"> <void property="databasepassword"> <string>{$sogod{'dbpassword'}}</string> <void property="databaseurl"> <string>jdbc:mysql://localhost/sogo</string> <void property="databaseusername"> <string>sogo</string> <void property="info"> <object class="com.funambol.framework.engine.source.syncsourceinfo"> <void property="supportedtypes"> <array class="com.funambol.framework.engine.source.contenttype" length="1"> <void index="0"> <object class="com.funambol.framework.engine.source.contenttype"> <void property="type"> <string>text/x-vtodo</string> <void property="version"> <string>1</string> </array> <void property="name"> <string>sogo-todo</string> <void property="sourceuri"> <string>sogo-todo</string> WikiT - https://wikit.firewall-services.com/
Last update: tuto:ipasserelle:divers:connecteur_funambol_sogo https://wikit.firewall-services.com/doku.php/tuto/ipasserelle/divers/connecteur_funambol_sogo 12/07/2012 22:55 </java> expand-template /opt/funambol/config/sogo/sogo/sogo/sogo-todo.xml Création automatique des utilisateurs funambol sed -i -e "s com/funambol/server/security/userprovisioningofficer.xml ca/inverse/sogo/ security/sogoofficer.xml " \ /opt/funambol/config/funambol.xml cat <<'' > /opt/funambol/config/ca/inverse/sogo/security/sogoofficer.xml <?xml version="1.0" encoding="utf-8"?> <java version="1.4.0" class="java.beans.xmldecoder"> <object class="ca.inverse.sogo.security.sogoofficer"> <void property="host"> <string>localhost</string> <void property="port"> <string>20000</string> </java> Redémarrer le serveur Funambol Dernière étape: /etc/init.d/funambol restart From: https://wikit.firewall-services.com/ - WikiT Permanent link: https://wikit.firewall-services.com/doku.php/tuto/ipasserelle/divers/connecteur_funambol_sogo Last update: 12/07/2012 22:55 https://wikit.firewall-services.com/ Printed on 02/09/2017 01:50