Ceci est une ancienne révision du document !
Installation d'une solution mail complète.
Installation d'une solution mail complète : Postfix, Dovecot, MySQL, Postfixadmin
Près requis
- Une solution LAMP fonctionnelle.
- Un certificat SSL (auto-signé ou autre) valide.
sudo apt-get install ssl-cert sudo make-ssl-cert generate-default-snakeoil --force-overwrite
Installation des paquets
On installe la série des paquets utiles.
La première ligne permet d'utiliser apt-get ou aptitude au choix. Mais on aurait pût passer par tasksel et de là installer directement l'essemble mail-server^.
sudo apt-get install bsd-mailx dovecot-core dovecot-imapd dovecot-pop3d postfix sudo apt-get install amavisd-new clamav clamav-daemon spamassassin sudo apt-get install php5-imap
On relance apache
sudo service apache2 restart
On installe une autre série de paquets utiles
sudo apt-get install libnet-dns-perl pyzor razor sudo apt-get install arj bzip2 cabextract cpio file gzip nomarch pax unzip zip
Création de l'administrateur mail dans MySQL
sudo mysql -u root -p
On créé la base de données (postfixadmin) et l'utilisateur (postfixadmin)
create database postfixadmin; grant all on postfixadmin.* to 'mail'@'localhost' identified by 'mot_de_passe_administrateur_mail';
Postfixadmin
Postfixadmin permet de gérer graphiquement les domaines et les boites e-mail rattachées. Il permet de créer des administrateurs par domaine qui peuvent eux-mêmes créer des boites ainsi que des alias. Le tout se pilotant au travers d'un navigateur web.
Un paquet tout prêt est disponible et évite plusieurs étapes de configuration/mise en place. On va donc le télécharger et l'installer.
wget http://downloads.sourceforge.net/project/postfixadmin/postfixadmin/postfixadmin-2.3.5/postfixadmin_2.3.5-1_all.deb sudo dpkg -i postfixadmin_2.3.5-1_all.deb
Configuration
Dans le fichier /etc/postfixadmin/config.inc.php, modifiez/vérifiez les variables comme suit :
$CONF['configured'] = true; $CONF['postfix_admin_url'] = '/postfixadmin'; # à laisser tel quel pour le multi-domaine $CONF['admin_email'] = 'me@example.com'; # l'adresse mail de l'administrateur général $CONF['smtp_server'] = 'localhost'; $CONF['smtp_port'] = '25'; $CONF['encrypt'] = 'md5crypt'; $CONF['domain_path'] = 'YES'; $CONF['domain_in_mailbox'] = 'NO';
Dans le fichier /etc/postfixadmin/dbconfig.inc.php, insérez vos accès MySQL précédemment créé (1.2).
$dbuser='postfixadmin'; $dbpass='mot_de_passe_administrateur_mail'; $basepath=''; $dbname='postfixadmin'; $dbserver=''; # utilisera la valeur par défaut : localhost $dbport=''; # utilisera le port MySQL par défaut $dbtype='mysql';
Lancer la configuration via : http://localhost/postfixadmin/setup.php
Créer un administrateur Postfixadmin (conseil : différenciez le de l'administrateur mail (nom/mot de passe))
Il sera utilisé dans votre configuration finale.
Il faut ensuite protéger cette page (vous pourrez créer d'autres administrateurs via l'interface de postfixadmin).
Éditer /etc/apache2/conf.d/postfixadmin, et ajoutez :
<Files "setup.php"> deny from all </Files>
Insertion du mot de passe "hashé", éditer /etc/postfixadmin/config.inc.php et modifier la variable :
$CONF['setup_password'] = '… votre mot de passe hashé …';
Liens
http://sourceforge.net/projects/postfixadmin/ (projet de PostfixAdmin - eng)