== Migration d'Exim vers Postfix == === Les raisons === Afin de maîtriser au mieux et d'être efficace dans la mise en place puis la maintenance de nos serveurs de courriels, nous devons nous focaliser sur la technologie la plus approprié pour nos besoins. Il s'avère que Postfix répond parfaitement à nos besoin, qu'il est également l'une des solutions les plus répandue dans le monde du logiciel libre, et que la plupart de nos Tech le maîtrisent déjà, ce qui n'est pas le cas de Exim. L'ARI a donc décidé de déployer Postfix plutôt que tout autre système. === Bilan de l'existant === ||'''Implantation'''||'''Version d'Exim'''||'''Domaines gérés'''||'''Spécificités ou autres remarques'''|| ||'''Dakar'''|| Debian 6 standard || sn.auf.org, refer.sn, ??? || Installation standard sans aucune bidouille (??? = à vérifier) il assure le relais pour tous les hôtes de la région|| || '''Niamey''' || Debian 6 standard || ne.auf.org, refer.ne || || || '''Ouagadougou''' || Debian 6 standard || bf.auf.org, refer.bf, bf.refer.org || A préciser || || '''Cotonou''' || Debian 6 standard || bj.auf.org, bj.refer.org || Quelques bidouilles au niveau des relays hosts, du filtre anti-spams || || '''Abidjan''' || Debian 6 standard || ci.auf.org, ci.refer.org || Installation standard || || '''Lomé''' || Debian 6 standard || tg.auf.org, tg.refer.org || Installation standard || || '''Nouakchott''' || Debian 6 standard || mr.auf.org, mr.refer.org || Installation standard || || '''Bamako'''|| Debian 7 standard || ml.auf.org,ml.refer.org|| Installation standard || || '''Conakry'''|| Debian 6 standard || gn.refer.org,gn.auf.org|| Installation standard || === Recherches sur le Net pour une migration en douceur === La migration en douceur implique une migration sans douleur, c'est à dire une migration sans interruption longue des services de messagerie et sans aucune perte des données existantes. Nos différentes recherches sur le net nous ont permis de comprendre qu'en général la migration est triviale, néanmoins elle nécessite quelques mise à jour et adaptation de quelques fichiers de configuration. ==== On parle sur le Web de cette migration ==== /* Via le moteur Google, On rencontre beaucoup plus de documentation sur la migration inverse, c'est à dire de Postfix vers Exim, cependant l'on constate beaucoup plus d'éloge pour Postfix que pour Exim ;) (peut être une des raisons de ...), bon allez trève de verbiage. [Je considère ce paragraphe inutile ici. -- ProgFou] */ ''' Lien 1: http://forums.ixus.net/viewtopic.php?f=27&t=17247 (En Anglais) ''' ''' Lien 2: http://serverfault.com/questions/240162/migrating-from-vexim-to-postfix (En Anglais).''' ''' Lien 3: http://trac.okfn.org/ticket/1339 (En Anglais). ''' === exim -> postfix avec concervation de la file d'attente (pour un système en production) === * Méthode 1 : Radicale Prendre soin d'informer les usagers de différentes perturbations qui seront observées par l'arrêt du service de messagerie, pour environs 3 heures tout au plus. Pour l'ensemble des serveurs de la région, il y a un rela qui est assuré pour les utilisateurs différents du personnel par le Serveur de Dakar. Par conséquent on peut sans soucis flinguer arrêter Exim et les services connexes, sauvegarder les dossiers principaux d'exim, pour les mails des utilisateurs, ils sont dans leur /home/$user/Maildir, par conséquent il ne seront pas affectés par l'arrêt ou la suppression d'Exim. Puis installer et configurer Potfix avec mysql (bd de auf-django) et tous les outils connexes, adapter la configuration de dovecot, spamassassin ... pour remplacer Exim par Postfix. Au démarrage du service les mails des utilisateurs en attente sur le serveur du BAO seront retransmis en local. === Installation Complète Postfix === ==== Détail de la configuration du fichier « /etc/postfix/main.cf » ==== '''Définition du nom du serveur et du domaine : ''' {{{ myhostname = mail.tg.auf.org mydomain = mondomaine.com }}} '''Lire les requêtes depuis toutes les interfaces réseau : ''' {{{ inet_interface = all }}} '''Quel domaine afficher dans le courrier sortant : ''' {{{ myorigin = $mydomain }}} '''De quels domaines recevoir le courrier : ''' {{{ mydestination = $myhostname localhost.$mydomain $mydomain }}} '''De quels clients relayer le courrier : ''' {{{ mynetworks = 192.168.0/8, 10.2.2/8, 10.2.3/8, 127.0.0.0/8 }}} '''Gestion des aliases et de la re-direction des mails : ''' {{{alias_maps = hash:/etc/postfix/aliases}}} '''Adresse du relais SMTP pour les courrier non traités par le serveur : ''' {{{relayhost = smtp.togotel.net.tg}}} '''Ré-écriture de l’adresse de l’expéditeur (ligne à ajouter -> facultatif) : ''' {{{sender_canonical_maps = hash:/etc/postfix/canonical}}} /!\ '''ATTENTION :''' A chaque modification de ce fichier ou des tables ci-dessous, il faut recharger la configuration : {{{ /etc/rc.d/init.d/postfix reload }}} {i} ''' En toute chose se conformer aux bonnes pratiques du SI de l'Agence bien conçu par les Gourous ;) [[Postfix | Par ICI ]] * Methode 2 : Soft Il faudra également prendre soin d'informer les usager des éventuelles perturbations qui pourraient affecter le service de messagerie du centre. Cette méthode consiste a installer postfix en amont d'Exim, donc sans supprimer Exim pour le moment. Pour ce faire il faudra installer Postfix Manuellement, via le Package source. les étapes : 1.#1 Prévenir les usagers des éventuelles perturbations 1.#2 Vérifié la version de Postfix disponible dans le dépôt de la version de votre Debian, mais ne pas l'installer via APT, ça désinstallera Exim. 1.#3 Installer Postfix manuellement depuis le Pacakage source en tenant compte de la version disponible dans le dépôt, dans le répertoire '''/opt/postfix''' par exemple, l'installation pouvant se faire depuis un .tar.gz ou un .bin. 1.#4 [[http://wiki.auf.org/wikiteki/Postfix/InstallManuelle|Processus d'installation manuelle de Postfix]] 1.#5 Après installation ne pas configurer le démarrage par défaut de Postfix; s'assure qu'il n'utilise pas le '''/usr/sbin/sendmail''' à la place d'Exim; s'assurer qu'il utilise le répertoire de données par défaut à savoir '''/var/spool/postfix''' même s'il est installé dans /opt/postfix quitte à créer un lien symbolique pour le faire. == Transfert des paramètres d'Exim vers Postfx == || '''Fichier d'Exim dont les paramètres sont à transcrire''' || ''' Paramètres concernés côté Exim ''' || '''Fichiers de Postfix où seront transcrits les paramètres''' || ''' Paramètres concernés côté Postfix''' || ||<|2> ''''' /etc/exim4/update-exim4.conf.conf ''''' || primary_hostname = tg.refer.org||<|2> /etc/postfix.bkp/main.cf || myhostname = mail-lome.tg.refer.org || || qualify_domain = tg.refer.org || mydomain = tg.refer.org || || ''''' /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs ''''' || - || -|| -|| || ''''' /etc/exim4/conf.d/main/04_exim4-config_mailman ''''' || - || - || -|| || ''''' /etc/mailconfig/mail_domains ''''' || - || - || -|| || ''''' /etc/mailconfig/mail_domains.forward ''''' || - || - || -||