<> == Procédure d'installation de SOGo == * Prérequis : * mysql-server, [[Etude/Unicode|configuré en utf-8]] * apache2 * installation de SOGo et de ses dépendances : {{{ echo "deb http://inverse.ca/debian squeeze squeeze" >> /etc/apt/sources.list apt-key adv --keyserver subkeys.pgp.net --recv 19CDA6A9810273C4 aptitude update aptitude install sogo memcached }}} * configurations * apache : adapter le nom du serveur dans `/etc/apache2/conf.d/SOGo.conf` * base de données : {{{ mysql -pxxxxxxxxxxx > > create database sogo; > > grant all privileges on sogo.* to 'sogo'@'localhost' identified by 'xxxxxxxxxx'; > > grant all privileges on sogo.* to 'sogo'@'sogo.mydomain.com' identified by 'xxxxxxxxxxxxxxx'; }}} * créer la table auf_users {{{ CREATE TABLE 'auf_users' ( 'c_uid' varchar(255) NOT NULL, 'c_name' varchar(255) DEFAULT NULL, 'c_password' varchar(255) DEFAULT NULL, 'c_cn' varchar(255) DEFAULT NULL, 'mail' varchar(255) DEFAULT NULL, 'mail_pays' varchar(255) DEFAULT NULL, 'givenname' varchar(64) DEFAULT NULL, 'sn' varchar(64) DEFAULT NULL, 'department' varchar(255) DEFAULT NULL, 'title' varchar(255) DEFAULT NULL, 'telephonenumber' varchar(16) DEFAULT NULL, 'source' varchar(64) DEFAULT 'LOCAL', PRIMARY KEY ('c_uid') ) ENGINE=MyISAM DEFAULT CHARSET=utf8; }}} * (cas des premiers serveurs SOGo : Montréal, Paris, Tana) modifier la table auf_users (adapter la restriction par pays) : {{{ alter table auf_users add column source varchar(64) default 'LOCAL'; alter table sogo_user_profile add column source varchar(64) default 'LOCAL'; alter table sogo_folder_info add column source varchar(64) default 'LOCAL'; update auf_users set source=NULL where not (mail_pays like '%@ca.auf.org' or mail_pays like '%@ht.auf.org'); }}} * sogo : tapez les commande suivantes (à l'invite shell) {{{ defaults -u sogo write sogod SOGoMailDomain mydomain.com defaults -u sogo write sogod SOGoMailingMechanism smtp defaults -u sogo write sogod SOGoSMTPServer smtp.mydomain.com defaults -u sogo write sogod SOGoLanguage French defaults -u sogo write sogod SOGoTimeZone America/Montreal defaults -u sogo write sogod SOGoEnableEMailAlarms YES defaults -u sogo write sogod OCSSessionsFolderURL mysql://sogo:xxxxxxxx@sogo.mydomain.com:3306/sogo/sogo_sessions_folder defaults -u sogo write sogod OCSFolderInfoURL mysql://sogo:xxxxxxxxx@sogo.mydomain.com:3306/sogo/sogo_folder_info defaults -u sogo write sogod SOGoProfileURL mysql://sogo:xxxxxxx@sogo.mydomain.com:3306/sogo/sogo_user_profile defaults -u sogo write sogod OCSEMailAlarmsFolderURL mysql://sogo:xxxxxxxx@sogo.mydomain.com:3306/sogo/sogo_alarms_folder defaults -u sogo write sogod SOGoIMAPServer imap.mydomain.com defaults -u sogo write sogod SOGoCalendarDefaultRoles ("PublicViewer","ConfidentialDAndTViewer") defaults -u sogo write sogod SOGoDayStartTime 9 defaults -u sogo write sogod SOGoDayEndTime 17 defaults -u sogo write sogod SOGoFirstDayOfWeek 1 defaults -u sogo write sogod SOGoMailAuxiliaryUserAccountsEnabled YES defaults -u sogo write sogod SOGoUserSources '( { canAuthenticate = YES; displayName = AUF; id = users; isAddressBook = YES; type = sql; userPasswordAlgorithm = md5; viewURL = "mysql://sogo:xxxxxx@sogo.mydomain.com:3306/sogo/auf_users"; IMAPLoginFieldName = mail_pays; authenticationFilter = "(mail_pays like '\''%@xx.mydomain.com'\'')"; } )' }}} Le fichier de config sera généré dans `/home/sogo/GNUstep/Defaults/.GNUstepDefaults`. * Note importante : ne pas éditer ce fichier directement, ça peut causer des soucis d'encodage après et SOGo ne marchera plus parce qu'il ne saura plus interpréter le fichier. J'ai eu cette mésaventure :-( --MoussaNombre. > Il faut utiliser les commandes SOGo prévu pour renseigner ce fichier (tel que fait ci-dessus). . /!\ Je n'en suis plus sûr du tout : c'est plutôt le contraire qui se produit maintenant (soucis d'encodage après avoir entré des commandes SOGo) --MoussaNombre > Pour visualiser la config actuelle : `defaults -u sogo read sogod` (ou faire des cat ou less sur le fichier de config) > Ce qui veut dire qu'il faut connaitre les variables prédéfinis de SOGo, pour ce faire je vous renvoi à la doc officielle http://www.sogo.nu/files/docs/SOGo%20Installation%20Guide.pdf. * fichier de log : `/var/log/sogo/sogo.log` * Soucis avec memcached : erreur dans les logs {{{ Oct 06 16:30:49 sogod [1482]: <0x0xa267368[SOGoCache]> an error occurred when caching value for key 'session:Lt++LnsCi1m+a369yS751Q==': "WRITE FAILURE" Oct 06 16:30:49 sogod [1482]: <0x0xa267368[SOGoCache]> an error occurred when caching value for key 'prod.test+attributes': "WRITE FAILURE" Oct 06 16:30:49 sogod [1482]: <0x0xa267368[SOGoCache]> an error occurred when caching value for key 'prod.test+attributes': "WRITE FAILURE" Oct 06 16:30:49 sogod [1482]: <0x0xa267368[SOGoCache]> an error occurred when caching value for key 'prod.test@auf.org+attributes': "WRITE FAILURE" Oct 06 16:30:49 sogod [1482]: <0x0xa267368[SOGoCache]> an error occurred when caching value for key 'prod.test@ca.auf.org+attributes': "WRITE FAILURE" Oct 06 16:30:49 sogod [1482]: <0x0xa267368[SOGoCache]> an error occurred when caching value for key 'session:Lt++LnsCi1m+a369yS751Q==': "WRITE FAILURE" Oct 06 16:30:49 sogod [1482]: <0x0xa267368[SOGoCache]> an error occurred when caching value for key 'prod.test+settings': "WRITE FAILURE" }}} * vérifier que memcached est installé * si oui, corriger le ficher /etc/memcached.conf : `sed -i -e "s/127.0.0.1/localhost/" /etc/memcached.conf` == CARDDAV pour les Iphones (carnet d'adresses) == * côté serveur : * créer une nouvelle entrée dns : `carddav.sogo.ca.auf.org` (serveur DNS) * créer un nouveau vhost apache {{{ # CARDDAV pour IPHONE ServerName carddav.sogo.ca.auf.org CustomLog /var/log/apache2/carddav-iphone_access.log combined ErrorLog /var/log/apache2/carddav-iphone_error.log RewriteEngine On RewriteRule ^/principals/users/(.*)$ /proxy/$1 [PT] ProxyPassInterpolateEnv On ProxyPreserveHost On ProxyPass /proxy http://127.0.0.1:20000/SOGo/dav/ interpolate ProxyPass /SOGo http://127.0.0.1:20000/SOGo interpolate ProxyPass / http://127.0.0.1:20000/SOGo/dav/ interpolate RequestHeader set "x-webobjects-server-port" "80" RequestHeader set "x-webobjects-server-name" "carddav.sogo.ca.auf.org" RequestHeader set "x-webobjects-server-url" "http://carddav.sogo.ca.auf.org" RequestHeader set "x-webobjects-server-protocol" "HTTP/1.0" RequestHeader set "x-webobjects-remote-host" %{REMOTE_HOST}e env=REMOTE_HOST AddDefaultCharset UTF-8 Order allow,deny Allow from all RewriteEngine On RewriteRule ^/SOGo/(.*)$ /SOGo/$1 [env=REMOTE_HOST:%{REMOTE_ADDR},PT] }}} * côté Iphone (pour ajouter le carnet d'adresses SOGo) : * dans les réglages "Mail, Contacts, Calendrier", choisir ajouter un compte->autres->Ajouter un compte CardDAV, puis : * serveur : carddav.sogo.ca.auf.org * nom d'utilisateur : prenom.nom * mot de passe : lavieestbelle!situn'ycomprendsrien * port : 80 * aller ensuite dans l'application "Contacts" pour vérifier (onglet Groupes)