Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
utilisateurs:mcpeter:postfix_dovecot_mysql_postfixadmin [Le 11/10/2012, 05:57] – suite brouillon McPeterutilisateurs:mcpeter:postfix_dovecot_mysql_postfixadmin [Le 20/07/2018, 01:06] (Version actuelle) – suppression brouillon McPeter
Ligne 1: Ligne 1:
-{{tag>serveur mail postfix postfixadmin dovecot brouillon}} 
-Installation d'une solution mail complète. 
  
----- 
- 
-====== Installation d'une solution mail complète : Postfix, Dovecot, MySQL, Postfixadmin ====== 
- 
-Cette page propose un pas-à-pas pour mettre en place rapidement un serveur de messagerie en faisant appel à l'ensemble: 
-  * [[:Postfix]] qui servira de [[wpfr>Mail_Transfer_Agent|MTA]] 
-  * [[:Dovecot]] qui servira de serveur [[wpfr>Internet_Message_Access_Protocol|IMAP]] et/ou [[wpfr>Post_Office_Protocol|POP3]] 
-  * [[:MySql]] pour enregistrer les comptes mails virtuels 
-  * [[http://sourceforge.net/projects/postfixadmin/|Postfixadmin]] pour gérer les domaines et comptes mails. 
- 
-=====Près requis===== 
- 
-  * Une solution [[:lamp|LAMP]] fonctionnelle.\\ 
-  * Un certificat SSL (auto-signé ou autre) valide. 
-<note>Rappel simple :<code> 
-sudo apt-get install ssl-cert 
-sudo make-ssl-cert generate-default-snakeoil --force-overwrite</code></note> 
- 
- 
-====Installation des paquets=== 
- 
-   - [[:tutoriel:comment_installer_un_paquet|Installez]] la première série de paquets utiles à savoir: 
-    * **[[apt>bsd-mailx,dovecot-core,dovecot-imapd,dovecot-pop3d,postfix]]** pour la partie MTA, IMAP, POP3 
-    * **[[apt>amavisd-new,clamav,clamav-daemon,spamassassin]]** pour [[:antivirus|Antivirus]] et AntiSpam 
-    * **[[apt>php5-imap]]** pour la gestion par postfixadmin\\ La première ligne permet d'utiliser apt-get ou aptitude au choix. Mais on aurait pût passer par **[[apt>tasksel]]** et de là installer directement l'essemble **[[apt>mail-server^]]**.\\ <code>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</code> 
-   - On relance [[:services|service]] [[:apache]]\\ <code>sudo service apache2 restart</code> 
-   - On installe la seconde série de paquets utiles à savoir : 
-    * **[[apt>libnet-dns-perl,pyzor,razor]]** pour requêtes DNS et AntiSpam 
-    * **[[apt>arj,bzip2,cabextract,cpio,file,gzip,nomarch,pax,unzip,zip]]** pour décompresser des [[:archivage|archives]] directement dans roundcube\\ <code>sudo apt-get install libnet-dns-perl pyzor razor 
-sudo apt-get install arj bzip2 cabextract cpio file gzip nomarch pax unzip zip 
-</code> 
- 
-====Création de l'administrateur mail dans MySQL==== 
- 
-<code>sudo mysql -u root -p</code> 
-On créé la base de données (postfixadmin) et l'utilisateur (postfixadmin) 
-<code>create database postfixadmin; 
-grant all on postfixadmin.* to 'mail'@'localhost' identified by 'mot_de_passe_administrateur_mail'; 
-</code> 
- 
- 
-=====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. 
- 
-<code>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</code> 
- 
-====Configuration==== 
- 
-Dans le fichier **/etc/postfixadmin/config.inc.php**, modifier/vérifier les variables comme suit : 
- 
-<file php> 
-$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'; 
-</file> 
- 
-Dans le fichier **/etc/postfixadmin/dbconfig.inc.php**, insérer les accès MySQL précédemment créé (1.2). 
- 
-<file php> 
-$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'; 
-</file> 
- 
-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)**) 
- <note important>Attention un fois cet administarteur créé, le script vous retourne votre mot de passe "hasé". **NOTEZ LE BIEN !!**\\ Il sera utilisé dans votre configuration finale.</note> 
- 
-Insertion du mot de passe "hashé", éditer **/etc/postfixadmin/config.inc.php** et modifier la variable : 
-<file php>$CONF['setup_password'] = '… votre mot de passe hashé …';</file> 
- 
-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 ajouter : 
- 
-<file><Files "setup.php"> 
-deny from all 
-</Files></file> 
- 
-Se rendre sur la page http://localhost/postfixadmin, et créer le premier domaine. Ajouter une boite mail à ce domaine.\\ 
-À ce stade, Postfixadmin est opérationnel. 
- 
- 
-=====Répertoire des e-mails===== 
- 
-Ici les utilisateurs sont virtuels, et donc indépendant  de la création/gestion classique Unix. Un seul utilisateur (Unix) aura les droits sur ce dossiers et permettra de gérer les liaisons entre Dovecot et Postfix.\\ 
-J'utilise personnellement l'utilisateur **vmail** et le groupe **mail**. Et mon répertoire se situe dans **/home/vmail** //(ces valeurs sont à votre convenance)//.\\ 
- 
-Création du groupe **mail** et de l'utilisateur **vmail**  
-<code>sudo groupadd mail 
-sudo useradd -r -u 150 -g mail -d /home/vmail -s /sbin/nologin -c "Propriétaire des répertoires e-mail virtuel" vmail</code> 
-Création du répertoire 
-<code>sudo mkdir /home/vmail 
-sudo chmod 770 /home/vmail</code> 
-Application des droits. 
-<code>sudo chown vmail:mail /home/vmail</code> 
- 
- 
-=====Dovecot===== 
- 
-Dovecot gère les connexions POP3 et IMAP, permet de gérer les mails locaux et récupère les courriers en provenance de Postfix.\\ 
-Il gère également l'authentification SMTP.\\ 
- 
-====Configuration==== 
- 
-On attaque la partie la plus "fatiguante".\\ 
-Éditer ou créer le fichier **/etc/dovecot/conf.d/auth-sql.conf.ext** avec le contenu suivant : 
- 
-<file># Look up user passwords from a SQL database as 
-# defined in /etc/dovecot/dovecot-sql.conf.ext 
-passdb { 
-  driver = sql 
-  args = /etc/dovecot/dovecot-sql.conf.ext 
-} 
-# Look up user information from a SQL database as 
-# defined in /etc/dovecot/dovecot-sql.conf.ext 
-userdb { 
-  driver = sql 
-  args = /etc/dovecot/dovecot-sql.conf.ext 
-}</file> 
- 
-Éditer le fichier **/etc/dovecot/dovecot-sql.conf.ext** et modifier comme suit : 
- 
-<file># Database driver: mysql, pgsql, sqlite 
-driver = mysql</file> 
- 
-Ici remplacer //mot_de_passe_postfixadmin// par celui entrée à la section 1.2 
-<file># Examples: 
-#   connect = host=192.168.1.1 dbname=users 
-#   connect = host=sql.example.com dbname=virtual user=virtual password=blarg 
-#   connect = /etc/dovecot/authdb.sqlite 
-# 
-connect = host=localhost dbname=postfixadmin user=postfixadmin password=mot_de_passe_postfixadmin</file> 
- 
-<file># Default password scheme. 
-# 
-# List of supported schemes is in 
-# http://wiki2.dovecot.org/Authentication/PasswordSchemes 
-# 
-default_pass_scheme = MD5-CRYPT</file> 
- 
-Attention à l'UID et le GUID. Pour vérifier ces informations : 
- 
-<code>grep vmail /etc/passwd 
-vmail:x:150:1001:Virtual maildir handler:/home/vmail:/sbin/nologin</code> 
- 
-<file># Define the query to obtain a user password. 
-password_query = \ 
-  SELECT username as user, password, '/home/vmail/%d/%n' as userdb_home, \ 
-  'maildir:/home/vmail/%d/%n' as userdb_mail, 150 as userdb_uid, 1001 as userdb_gid \ 
-  FROM mailbox WHERE username = '%u' AND active = '1'</file> 
-   
-<file># Define the query to obtain user information. 
-user_query = \ 
-  SELECT '/home/vmail/%d/%n' as home, 'maildir:/home/vmail/%d/%n' as mail, \ 
-  150 AS uid, 1001 AS gid, concat('dirsize:storage=', quota) AS quota \ 
-  FROM mailbox WHERE username = '%u' AND active = '1'</file> 
- 
-Éditer le fichier **/etc/dovecot/conf.d/10-auth.conf** et modifier comme suit : 
- 
- 
-=====Amavis, ClamAV SpamAssassin===== 
- 
-====Configuration Amavis==== 
- 
-====Configuration ClamAV==== 
- 
-====Configuration SpamAssassin==== 
- 
- 
-=====Postfix===== 
- 
-====Configuration==== 
- 
- 
-=====Relancer tous les services===== 
- 
- 
- 
- 
-=====Postfixadmin===== 
- 
-====Configuration==== 
- 
-=====Postfixadmin===== 
- 
-====Configuration==== 
- 
-=====Postfixadmin===== 
- 
-====Configuration==== 
- 
-=====Liens===== 
- 
-http://sourceforge.net/projects/postfixadmin/ (projet de PostfixAdmin - eng)