Cette page présente mes notes concernant le déploiement de SOGo norme AuF. = Checklist = Récapitulatif des opérations à effectuer pour mettre en place un serveur SOGo norme AuF : == Installation == * '''(local)''' mettre en place un nom DNS `sogo.XX.auf.org` et, si possible, son DNS inverse . (`XX` peut être un code de pays norme ISO-3166 ou un nom d'implantation tel que `ifi`, `ifmt`, `ifag`, ...) * '''(local)''' envoyer un courriel à [[MoussaNombre|Moussa Nombré]] et [[ProgFou|Jean Christophe André]] pour déclarer le nom DNS utilisé et les domaines DNS des implantations qui utiliseront ce serveur SOGo * '''(central)''' enregistrer le nom DNS et les domaines DNS dans `sogocentral` et communiquer la clé pour les synchronisations (via jabber, pas via courriel) * '''(local)''' installer un serveur [[Debian/Squeeze|Debian Squeeze]] (virtuel ou non, ça marche bien dans un CT OpenVZ) * '''(local)''' installer `exim4` sur le serveur et tester un envoi de courriel depuis le serveur vers une adél @auf.org * '''(local)''' mettre en place un environnement [[LAMP]] dans le serveur (locales Unicode, MySQL et Apache) * '''(local)''' installer SoGo * … == Synchronisation == * '''(local)''' installer `auf-refer` sur un serveur dans le RPV (par exemple le serveur bureautique) * '''(local)''' envoyer un courriel à [[MoussaNombre|Moussa Nombré]] et [[ProgFou|Jean Christophe André]] pour déclarer l'adresse IP du serveur où est installé `auf-refer` * '''(central)''' enregistrer l'adresse IP du serveur `auf-refer` dans la table `"Authentification".machines` sur `db-srv.auf` et confirmer via jabber ou courriel = Notes d'installation = Notes : * être plus précis sur les recommandations d'espace disque (/var, /var/log, /srv, …) * donner des infos sur les limites de haricots utilisés à Montréal Installation : * installation de apache, dans un objectif SSL et PHP5 (installe le `mpm-prefork` au lieu du `mpm-worker` par défaut) : {{{ aptitude install apache2 libapache2-mod-php5 sed -i '/^#AddDefaultCharset/c AddDefaultCharset UTF-8' /etc/apache2/conf.d/charset a2enmod mime cat << __ EOF__ > /etc/apache2/site-available/sogo.vn.auf.org ServerName sogo.vn.auf.org ServerAdmin technique@vn.auf.org DocumentRoot /var/www ErrorLog ${APACHE_LOG_DIR}/sogo.vn.auf.org_error.log CustomLog ${APACHE_LOG_DIR}/sogo.vn.auf.org_access.log combined RedirectMatch ^/$ https://sogo.vn.auf.org/SOGo # ou plutôt ça ? RedirectMatch . https://sogo.vn.auf.org/SOGo __EOF__ cat << __ EOF__ > /etc/apache2/site-available/sogo.vn.auf.org-ssl ServerName sogo.vn.auf.org ServerAdmin technique@vn.auf.org DocumentRoot /var/www RedirectMatch ^/$ https://sogo.vn.auf.org/SOGo ErrorLog ${APACHE_LOG_DIR}/sogo.vn.auf.org-ssl_error.log CustomLog ${APACHE_LOG_DIR}/sogo.vn.auf.org-ssl_access.log combined SSLEngine on SSLCertificateFile /etc/ssl/certs/sogo.vn.auf.org-cert.pem SSLCertificateKeyFile /etc/ssl/private/sogo.vn.auf.org-key.pem SSLCACertificateFile /etc/ssl/certs/AC-AUF-RACINE+BAP.pem SSLVerifyClient None __EOF__ mv /root/sogo.vn.auf.org-key.pem /etc/ssl/private/ mv /root/sogo.vn.auf.org-cert.pem /root/AC-AUF-RACINE+BAP.pem /etc/ssl/certs/ a2enmod ssl a2ensite sogo.vn.auf.org a2ensite sogo.vn.auf.org-ssl a2dissite default a2enmod headers a2enmod rewrite a2enmod proxy_http service apache2 restart }}} * installation de MySQL : {{{ aptitude install mysql-server cat << __EOF__ > /root/.my.cnf [client] password = le-mdp-choisi-pour-root-dans-MySQL __EOF__ chmod 0600 /root/.my.cnf cat << __EOF__ > /etc/mysql/conf.d/local.cnf [mysqld] default-character-set = utf8 # à exécuter pour tous les clients (indispensable pour PHP 4, au moins) init-connect = 'SET NAMES utf8' language = /usr/share/mysql/french bind-address = 0.0.0.0 # log_slow_queries = /var/log/mysql/mysql-slow.log # log_bin = /var/log/mysql/mysql-bin.log log = /var/log/mysql/mysql.log # max_connections = 500 [mysqldump] default-character-set = utf8 [mysql] default-character-set = utf8 __EOF__ /etc/init.d/mysql restart }}} * installation SOGo : {{{ echo "deb http://inverse.ca/debian squeeze squeeze" >> /etc/apt/sources.list apt-key adv --keyserver keys.gnupg.net --recv-key 0x19CDA6A9810273C4 aptitude update aptitude install --without-recommends sogo memcached … service memcached restart # après le sed -i … defaults -u sogo write sogod SOGoUserSources '( { canAuthenticate = YES; displayName = ANNUAIRE-AUF; id = users; isAddressBook = YES; type = sql; userPasswordAlgorithm = crypt; viewURL = "mysql://sogo:xxxxxxxxxxxx@sogo.vn.auf.org:3306/sogo/auf_users"; IMAPLoginFieldName = mail_pays; authenticationFilter = "source='\''LOCAL'\''"; } )' if ! grep -q 'Required-Start:.* mysql' /etc/init.d/sogo ; then sed -i -e '/^# Required-Start:/s/$/ mysql/' /etc/init.d/sogo fi service sogo restart }}} Notes : * faire les fichiers temporaires dans /root et non /tmp * des choses à reprendre depuis http://wiki.debian.org/SOGo (en particulier variables d'env pour proxy => important)