Outils pour utilisateurs

Outils du site


infrastructure:serveur_mail:partie_1:debian_jessie_postfix_dovecot

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
infrastructure:serveur_mail:partie_1:debian_jessie_postfix_dovecot [2015/10/13 12:19] – [Configuration de postfix] ghussoninfrastructure:serveur_mail:partie_1:debian_jessie_postfix_dovecot [2017/01/08 17:10] (Version actuelle) – [At the end...] ghusson
Ligne 1: Ligne 1:
-===== Prérequis ===== +===== Requisits ===== 
-==== Remarques préalables ==== +==== Firsts remarks ==== 
-Les répertoires des mails seront de la forme : /data/vmail/domainname/username/+  - By initial choice, user mail directories are composed like this : /data/vmail/domainname/username/ 
 +  - You must have a valid FQDN with the corresponding reverse DNS. 
 +  - You must have SSL/TLS certificates. 
 +  - Postfix configuration here is not suited to high traffic servers (ISP), for this target, see : hash_queue_depth and http://www.postfix.org/TUNING_README.html 
 ==== Variables ==== ==== Variables ====
-RQ : renseigner les utilisateurs et leurs mots de passes assossiés+RQ : change the usernames and their passwords, the mail domain and the server hostname
 <code bash> <code bash>
-pour postfixadmin, a renseigner dans keepass+for postfixadmin
 export PFADBNAME="db_pfadmin" export PFADBNAME="db_pfadmin"
 export PFADBUSER="pfadmin" export PFADBUSER="pfadmin"
Ligne 23: Ligne 27:
 </code> </code>
  
-==== Commencer sainement ==== +==== Begin safely ==== 
-Listes APT à jour et serveur à jour, installation de resolvconf :+Server update and resolvconf installation :
 <code bash> <code bash>
 apt-get update apt-get update
Ligne 31: Ligne 35:
 </code> </code>
  
-==== Interfaces réseau :====+==== Network interfaces :====
 <code bash>vi /etc/network/interfaces</code> <code bash>vi /etc/network/interfaces</code>
-Vérifier/ajouter : "dns-nameservers 127.0.0.1 <DNS_R_1> <DNS_R_2>"+Verify/add : "dns-nameservers 127.0.0.1 <DNS_R_1> <DNS_R_2>"
  
 <code bash>vi /etc/hosts</code> <code bash>vi /etc/hosts</code>
Ligne 41: Ligne 45:
 </file> </file>
  
-==== cache DNS ====+==== DNS cache ====
 <code bash> <code bash>
 apt-get install bind9 apt-get install bind9
Ligne 50: Ligne 54:
 </code> </code>
  
-SI PAS D'IPV6 (RQ bug en cours : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=767798)+IF NO IPV6 (RQ bug on jessie : https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=767798)
 <code bash> <code bash>
 cp -a /etc/default/bind9 /etc/default/bind9_ cp -a /etc/default/bind9 /etc/default/bind9_
Ligne 61: Ligne 65:
 </code> </code>
  
- +==== Network restart ====
-==== FQDN ==== +
-il faut un FQDN valide avec le DNS et le reverse correctement renseignés. +
- +
-==== Redémarrage réseau ====+
 <code bash> <code bash>
 /etc/init.d/networking stop ; /etc/init.d/networking start /etc/init.d/networking stop ; /etc/init.d/networking start
 </code> </code>
-Rq : si le FQDN a changéredémarrer complètement la machine.+Rq : if the FQDN was changedrestart the server.
  
  
-==== Installation de mysql-server ====+==== mysql-server installation ====
 <code bash> <code bash>
 apt-get install mysql-server apt-get install mysql-server
-Nouveau mot de passe du superutilisateur de MySQL : renseigner le mot de passe root mysql (mysql/root) et le mettre dans le fichier keepass+New mysql superuser password : enter and keep safely somwhere (ex : keepass)
 apt-get install dbconfig-common apt-get install dbconfig-common
 </code> </code>
  
-===== Installation postfixadmin / postfix / dovecot ===== +===== postfixadmin / postfix / dovecot installation ===== 
-==== Configuration des BDD ==== +==== DBs configuration ==== 
-Création des bases et users pour postfixadmin+DBs and users creation for postfixadmin
 <code bash> <code bash>
 echo "create database $PFADBNAME;" > /opt/create_db_pfa echo "create database $PFADBNAME;" > /opt/create_db_pfa
Ligne 94: Ligne 94:
 </code> </code>
  
-Préconfiguration dbconfig pour postfix :+dbconfig preconfiguration for postfixadmin :
 <code bash> <code bash>
 cat << 'EOF' > /etc/dbconfig-common/postfixadmin.conf cat << 'EOF' > /etc/dbconfig-common/postfixadmin.conf
Ligne 118: Ligne 118:
 </code> </code>
  
-==== Installation de postfixadmin ====+==== postfixadmin installation ====
 <code bash> <code bash>
 apt-get install postfixadmin apt-get install postfixadmin
-Serveur web à reconfigurer automatiquement : apache2 +auto reconfigure : apache2 
-#Faut-il configurer la base de données de postfixadmin avec dbconfig-common ? oui +reconfigure postfixadmin with dbconfig-common ? yes 
-#Type de serveur de bases de données à utiliser avec postfixadmin : mysql +DB server to use with postfixadmin : mysql 
-Mot de passe de l'administrateur de la base de données entrer le mot de passe root mysql (superutilisateur) +DB admin password enter mysql superadmin password 
-#Action souhaitée pour le fichier de configuration modifié postfixadmin.conf : Installer la version du responsable du paquet +choose to install the package maintainer configuration file 
 </code> </code>
  
-==== Installation de postfix ====+==== postfix installation ====
 <code bash> <code bash>
 if [ -e /var/log/exim4/paniclog ]; then rm /var/log/exim4/paniclog; fi if [ -e /var/log/exim4/paniclog ]; then rm /var/log/exim4/paniclog; fi
 apt-get install postfix postfix-mysql dovecot-common apt-get install postfix postfix-mysql dovecot-common
-Configuration type du serveur de messagerie Site Internet +mail server conf type : internet site 
-Nom de courrier : entrer le FQDN publique du serveur+mailserver name : entrer the public FQDN of the mailserver
 apt-get remove --purge exim4 exim4-base exim4-config exim4-daemon-heavy exim4-daemon-light exim4-config-2 exim4-localscanapi-1.0 exim4-localscanapi-1.1 apt-get remove --purge exim4 exim4-base exim4-config exim4-daemon-heavy exim4-daemon-light exim4-config-2 exim4-localscanapi-1.0 exim4-localscanapi-1.1
 rm -rf /etc/exim4 rm -rf /etc/exim4
 </code> </code>
  
-==== Installation de dovecot ====+==== dovecot installation ====
 <code bash> <code bash>
 apt-get install dovecot-mysql dovecot-sieve dovecot-imapd dovecot-lmtpd dovecot-managesieved  apt-get install dovecot-mysql dovecot-sieve dovecot-imapd dovecot-lmtpd dovecot-managesieved 
 </code> </code>
  
-==== Configuration initiale de apache ==== +==== Apache initial configuration ==== 
-voir howto correspondant : XXX+see corresponding howto
  
-==== Configuration postfixadmin ====+==== postfixadmin configuration ====
 <code bash> <code bash>
 cp -a /etc/apache2/conf-available/postfixadmin.conf /etc/apache2/conf-available/postfixadmin.conf_ cp -a /etc/apache2/conf-available/postfixadmin.conf /etc/apache2/conf-available/postfixadmin.conf_
Ligne 155: Ligne 155:
 /etc/init.d/apache2 stop /etc/init.d/apache2 stop
 /etc/init.d/apache2 start /etc/init.d/apache2 start
-verifier le fonctionnement de l'url : http://fqdn/admin_pfa+verify that the webserver is responding : http://fqdn/admin_pfa
  
 vi /etc/postfixadmin/config.inc.php vi /etc/postfixadmin/config.inc.php
-changer les champs suivants :+change these fields :
 XXX XXX
 #$CONF['postfix_admin_url'] = '/postfixadmin'; #$CONF['postfix_admin_url'] = '/postfixadmin';
 $CONF['postfix_admin_url'] = '/admin_pfa'; $CONF['postfix_admin_url'] = '/admin_pfa';
 +$CONF['default_language'] = 'fr';
 $CONF['admin_email'] = 'postmaster@<domain_changeme>'; $CONF['admin_email'] = 'postmaster@<domain_changeme>';
 $CONF['default_aliases'] = array ( $CONF['default_aliases'] = array (
Ligne 178: Ligne 179:
 </code> </code>
  
-**A faire à la main :** 
-  * RQ : si on veut utiliser des scripts de hook, il faut configurer un sudo dessus : "wwwrun  ALL = (courier) NOPASSWD: /usr/local/bin/postfixadmin-mailbox-postcreation.sh" 
-  * Se rendre sur l'interface web : http://fqdn/admin_pfa/setup.php. 
-  * Générer un nouveau password d'admin, l'enregistrer dans keepass (setup_password) et cliquer sur "generate passwork hash". 
-  * L'interface propose de modifier ce mot de passe dans le fichier de configuration : /etc/postfixadmin/config.inc.php : modifier la ligne : $CONF['setup_password'] = 'changeme'; 
-  * l'interface propose de créer un nouveau superadmin, le créer et renseigner le keepass (superadmin). 
-  * Vérifier l'installation en se rendant sur : http://fqdn/admin_pfa/ 
  
 +** Todo by hand :**
 +  * RQ : if you need to use hook scripts, you have to configure a sudoer : "wwwrun  ALL = (courier) NOPASSWD: /usr/local/bin/postfixadmin-mailbox-postcreation.sh"
 +  * go to postfixadmin web interface : http://fqdn/admin_pfa/setup.php
 +  * generate a new admin password, and keep it safely somewhere, click on "generate passwork hash"
 +  * the web interface proposes to modify the conf file : /etc/postfixadmin/config.inc.php - modify line : $CONF['setup_password'] = 'changeme';
 +  * the web interface proposes to create a new superadmin, do it and keep safely password somewhere
 +  * verify the installation by going to : http://fqdn/admin_pfa/
  
-==== Configuration de postfix ====+==== postfix configuration ====
 <code> <code>
 service postfix stop service postfix stop
 </code> </code>
-=== Les mapping virtuels avec mysql ===+=== virtual mappings with mysql===
 <code> <code>
-backup initial+# initial backup
 cd /etc/postfix cd /etc/postfix
 mkdir origin mkdir origin
 cp -ar ./* origin  cp -ar ./* origin 
  
-configuration liee a postfixadmin via mysql +# postfixadmin compatible mysql queries for postfix 
-# RQ : on a besoin des variables exportees lors de la conf mysql+# RQ : we need exported variables we created before for mysql configuration
 mkdir /etc/postfix/sql mkdir /etc/postfix/sql
 export PFXSQLCONFDIR=/etc/postfix/sql export PFXSQLCONFDIR=/etc/postfix/sql
Ligne 271: Ligne 272:
 hosts = localhost hosts = localhost
 dbname = $PFARODBNAME dbname = $PFARODBNAME
-query = SELECT SELECT goto FROM `aliasWHERE address='%s' AND active = '1'+query = SELECT goto FROM alias WHERE address='%s' AND active="1"
 " > $PFXSQLCONFDIR/mysql_virtual_sasl-sender-check.cf " > $PFXSQLCONFDIR/mysql_virtual_sasl-sender-check.cf
  
Ligne 279: Ligne 280:
 </code> </code>
  
-=== Supprimer l'IP du poste émetteur d'un mail ===+=== Remove mail sender IP ===
 <code bash> <code bash>
 cat << '__EOF__' >> /etc/postfix/postfix_header-checks.cf cat << '__EOF__' >> /etc/postfix/postfix_header-checks.cf
Ligne 289: Ligne 290:
 </code> </code>
  
-=== Messages d'erreur en français ===+=== Custom error messages - french ===
 <code bash> <code bash>
 cat << '__EOF__' >> /etc/postfix/bounce.cf.fr cat << '__EOF__' >> /etc/postfix/bounce.cf.fr
Ligne 401: Ligne 402:
 </code> </code>
  
-Nettoyer l'environnement de lancement sécurisé de postfix :+Cleanup the safe run postfix environment :
 <code bash> <code bash>
 rm /var/lib/postfix/* rm /var/lib/postfix/*
 </code> </code>
  
-=== Fichier main.cf ===+=== main.cf file ===
  
  
Ligne 584: Ligne 585:
  
  
-=== Fichier master.cf ===+=== master.cf file ===
 <code bash>vi /etc/postfix/master.cf</code> <code bash>vi /etc/postfix/master.cf</code>
-Ajouter :+add :
 <code> <code>
 submission inet n - n - - smtpd submission inet n - n - - smtpd
Ligne 602: Ligne 603:
  
  
-==== Configuration de dovecot ====+==== dovecot configuration ====
 === mysql / postfixadmin === === mysql / postfixadmin ===
 <code bash> <code bash>
Ligne 643: Ligne 644:
 </code> </code>
  
-**A faire à la main :** 
-  * Editer /etc/postfix/main.cf pour changer certificats 
-  * Editer /etc/dovecot/conf.d/10-ssl.conf pour changer certificats 
-  * Editer /etc/dovecot/conf.d/15-lda.conf et /etc/dovecot/conf.d/20-lmtp.conf pour changer adresse postmaster 
  
 +===== At the end... =====
 +
 +**Do by hand :**
 +  * Edit /etc/postfix/main.cf and change certificates files paths
 +  * Edit /etc/dovecot/conf.d/10-ssl.conf and change certificates files paths
 +  * Edit /etc/dovecot/conf.d/15-lda.conf and /etc/dovecot/conf.d/20-lmtp.conf in order to change postmaster address
  
-<code bash> 
 # (re)start services # (re)start services
 +<code bash>
 tail -f /var/log/syslog & tail -f /var/log/syslog &
 service dovecot stop service dovecot stop
Ligne 658: Ligne 661:
 </code> </code>
  
 +Add www-data alias
 +<code bash>
 +echo "www-data: root" >> /etc/aliases
 +echo "root: admin_<MAIL_SERVER_FQDN>@<DEFAULT_MAIL_DOMAIN>" >> /etc/aliases
 +newaliases
 +</code>
  
-Vérification finale que tout s’enchaîne bien : +Final verification (all the chain)
 <code bash> <code bash>
 # stop mail services # stop mail services
Ligne 668: Ligne 677:
  
  
-===== Non traité : ==== +===== Not included for the moment : ==== 
-  *quota : table quota2 dans postfixadmin + option +  * quota : table quota2 dans postfixadmin + option 
-  *vacation +  * group mailbox 
-  *mailbox commune (parage IMAP) +  * lucene/solr 
-  *SIEVE en listen ? revoir config sieve 90-sieve-extprograms.conf 90-sieve.conf 20-managesieve.conf +  * logging mysql
-  *lucene/solr +
-  *logging mysql+
  
  
infrastructure/serveur_mail/partie_1/debian_jessie_postfix_dovecot.1444738767.txt.gz · Dernière modification : 2015/10/13 12:19 de ghusson