Mini HOWTO installation du serveur IMAP Cyrus Kevin Mitchell kevin@iserv.net v0.9 21.01.98 Adaptation francaise par Gacquer Frederic gacquer@neuronnexion.fr Jeudi 25 mai 1998 V 1.0. Relecture par Jean Charles Delepine delepine@lan.univ-lyon1.fr 11.. IInnttrroodduuccttiioonn Ce document a pour but d'apporter un peu d'aide pour l'installation du serveur IMAP de Cyrus, sur une machine Linux. Je voudrais remercier Bob Anderson boba@iserv.net et Jorge Paramo jorge@iserv.net pour leur aide dans mes aventures avec Linux. 22.. QQuu''eesstt--ccee qquu''IIMMAAPP eett ppoouurrqquuooii ddeevvrraaiiss--jjee ll''uuttiilliisseerr ?? IMAP (Internet Message Access Protocol) est une maniere d'acceder a son courrier electronique ou ses messages BBS stockes sur le serveur de courrier. IMAP est percu par beaucoup comme le successeur de POP (Post Office Protocol). IMAP permets aux utilisateurs d'acceder a leur courrier a partir de n'importe quel ordinateur sans avoir a le rapatrier. Cette methode d'acces au courrier est plus sure et offre plusieurs avantages pour l'utilisateur final. Une explication plus approfondie a : Une comparaison entre IMAP et POP a : Pourquoi utiliser le serveur Cyrus ? Cyrus est concu pour etre utilise sur un serveur ou les utilisateurs n'ont pas le droit de se connecter. Cyrus semble aussi etre parmi les deux plus populaires serveurs IMAP pour Unix. L'autre est le serveur IMAP de l'Universite de Washington. 33.. LLeess ccaarraacctteerriissttiiqquueess ddee mmoonn ssyysstteemmee J'ai installe Cyrus avec succes sur des architectures 486DX66 et Pentium, utilisant respectivement le noyau Linux 2.1.79 et 2.0.33. L'installation initiale est basee sur la Slackware 3.4. 44.. IInnssttaallllaattiioonn ddee TTccll Assurez vous que Tcl est installe sur votre machine avant de tenter d'installer Cyrus - sinon vous n'aurez pas la possibilite d'utiliser l'Outil d'Administration Cyrus (cyradm). Les derniers sources de Tcl sont disponibles sur Apres l'installation, assurez vous que le fichier libtcl.a se trouve dans le repertoire /usr/local/lib/. Tcl 8.0 genere un fichier libtcl8.0.a sur lequel vous devez creer un lien symbolique en utilisant la commande : # ln -s libtcl8.0.a libtcl.a 55.. IInnssttaallllaattiioonn ddee llaa ccoommmmaannddee mmaakkeeddeeppeenndd Verifiez que votre systeme a la commande makedepend. Si vous ne l'avez pas, ne vous inquietez pas - il est fourni avec le source de Cyrus. (Je ne l'avais pas avec l'installation Slackware 3.4). Pour installer makedepend, extraire la distribution Cyrus, se mettre dans le repertoire makedepend, et taper les commandes suivantes : ./configure make cp ./makedepend /usr/local/bin/makedepend 66.. IInnssttaallllaattiioonn ddee CCyyrruuss Suivre prudemment les conseils fournis avec la distribution Cyrus. Vous pouvez en trouver une copie en ligne a : Quelques astuces pour quelques-unes des etapes: Si vous utilisez la Slackware 3.4 (avec les Shadow Passwords), assurez vous que vous utilisez configure comme suit: Avec make c'est plus direct: make depend make all CFLAGS=-O +o Etape 1: lorsque vous ajoutez l'utilisateur cyrus, ce dernier est verouille pour ameliorer la securite. +o Etape 3: j'edite le fichier /etc/syslog.conf plutot que de les copier. +o Etape 9: Avec Linux, assurez vous de lancer pwcheck de cette maniere sinon le serveur ne fonctionnera pas correctement: umask 0;/usr/cyrus/bin/pwcheck & umask 022 Puis ajoutez ces dernieres a un script de demarrage comme celui-la: if [ -f /usr/cyrus/bin/pwcheck ]; then echo -n "Starting pwcheck for imap" umask 0;/usr/cyrus/bin/pwcheck & umask 022 fi J'ai mis le mien dans /etc/rc.d/rc.local et cela marche bien. +o Etape 12: Lorsque vous editez /etc/inetd.conf, assurez vous d'include les TCP Wrappers dans la ligne, comme suit: imap stream tcp nowait cyrus /usr/sbin/tcpd /usr/cyrus/bin/imapd imap Et n'oubliez pas de kill -HUP inetd apres avoir termine cet ajout: # ps ax | grep inetd 61 ? S 0:00 /usr/sbin/inetd # kill -HUP 61 77.. CCoonnffiigguurraattiioonn ddee sseennddmmaaiill Telechargez le source de sendmail si vous ne l'avez pas deja. Outre utiliser IMAP, vous pouvez faire des choses amusantes comme configurer l'anti-spam. Voici mon fichier mc. Il delivrera le mail a IMAP sauf s'il y a une entree de l'utilisateur dans le fichier /etc/sendmail.cN. Cela permet aux comptes systemes comme root de garder leur courrier dans le spool; Cependant, les comptes utilisateurs utilisent IMAP par defaut. Ne pas faire un simple copier/coller de ce code car sendmail n'appreciera pas les espaces utilises a la place des tabulations: divert(-1) # # (C) Copyright 1995 by Carnegie Mellon University # # All Rights Reserved # # Permission to use, copy, modify, and distribute this software and its # documentation for any purpose and without fee is hereby granted, # provided that the above copyright notice appear in all copies and that # both that copyright notice and this permission notice appear in # supporting documentation, and that the name of CMU not be # used in advertising or publicity pertaining to distribution of the # software without specific, written prior permission. # # CMU DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING # ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL # CMU BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR # ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, # WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, # ARISING OUT OF OR IN CONNECTION WITH THE USE OR P ERFORMANCE OF THIS # SOFTWARE. # # Contributed to Berkeley by John Gardiner Myers . # # This sample mc file is for a site that uses the Cyrus IMAP server # exclusively for local mail. # divert(0)dnl VERSIONID(`@(#)cyrusproto.mc 8.3 (Carnegie Mellon) @(#)cyrusproto.mc 8.3') OSTYPE(linux) define(`confBIND_OPTS',`-DNSRCH -DEFNAMES') FEATURE(nouucp) FEATURE(nocanonify) FEATURE(always_add_domain) MAILER(smtp) MAILER(local) MAILER(cyrus) define(`confLOCAL_MAILER',`cyrus') LOCAL_RULE_0 R$=N $: $#local $: $1 R$=N $: $#local $: $1 Rbb + $+ $#cyrusbb $: $1 LOCAL_CONFIG FN /etc/sendmail.cN # end of mc file Arpes avoir configure le fichier /etc/sendmail.cf, creer le fichier /etc/sendmail.cN et ajouter les comptes utilisateurs qui ne souhaitent pas utiliser IMAP: root majordom stan mothra Apres avoir installe Sendmail 8.8.8 j'ai aussi installe mail.local comme programme de livraison du courrier local pour ces autres comptes. Il y a une astuce pour configurer mail.local. Aller dans le repertoire de mail.local, dans le source de sendmail et faire: cp Makefile Makefile.orig cp Makefile.dist Makefile make cp mail.local /bin/mail.local chmod 4555 /bin/mail.local Apres cela, redemarrer sendmail. Ne pas oublier de terminer les instructions de l'installation de Cyrus. 88.. CCoonnffiigguurreerr lleess bbooiitteess aauuxx lleettttrreess Assurez vous de suivre les tests du serveur IMAP. Si tout semble correct, continuez et creez des boites au lettres. 99.. MMiissee eenn ggaarrddee Aucune garantie, pas de remboursement, utilisation a vos propres risques. 1100.. SSoouurrcceess Les logiciels requis +o La page d'accueil de Cyrus est +o Vous pouvez telecharger la derniere version a: +o La page d'accueil de Tcl est : +o Vous pouvez telecharger le dernier source Tcl a: +o La page d'accueil de Sendmail est : +o Vous pouvez telecharger la derniere version a: .