Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| utilisateurs:benjy4537:brouillons:postfix_relecture [Le 07/07/2011, 14:21] – [Configuration de Dovecot :] benjy4537 | utilisateurs:benjy4537:brouillons:postfix_relecture [Le 11/09/2022, 13:13] (Version actuelle) – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====== Installation | + | ===== Installation |
| - | ===== Présentation | + | ==== Présentation |
| - | === Postfix === | + | Pour une installation par défaut des serveurs mail d'Ubuntu |
| - | {{ : | + | |
| - | [[http:// | + | |
| - | === Dovecot === | + | Mais il existe un paquet qui installe les serveurs comme un MDA (mail delivery agent), **dovecot-postfix**. Il installe |
| - | {{ : | + | |
| - | [[http:// | + | |
| + | < | ||
| - | ===== Prérequis ===== | + | Nous aurons aussi besoin des paquets : **mysql-client** et **mysql-serveur** en version 5.1, **sasl**, **ntp**, **apache2**, |
| - | Niveau confirmé. | + | <note important> |
| - | Temps d'application : 1heure à 5heure. | + | |
| + | ==== Installation de la configuration ==== | ||
| - | Ce tutoriel | + | Paquets principaux [[:tutoriel: |
| - | <note important> | ||
| - | ===== Configuration du DNS ===== | ||
| - | Tout d' | ||
| - | / | ||
| - | < | ||
| - | exemple.domain.tld | ||
| - | </ | ||
| - | |||
| - | /ect/host/ : | ||
| - | < | ||
| - | 127.0.0.1 exemple.domain.tld localhost.localdomain localhost exemple | ||
| - | </ | ||
| - | |||
| - | Maintenant éditons le fichier / | ||
| - | |||
| - | < | ||
| - | nameserver 127.0.0.1 | ||
| - | search domain.tld | ||
| - | </ | ||
| - | |||
| - | ===== Instalation de Postfix : SMTP, TLS ===== | ||
| - | |||
| - | Donc nous avons besoin dans un premier temps de mysql client et serveur 5.1, sasl, ntp, apache2, et enfin php5 pour mysql. | ||
| - | |||
| - | Il faut impérativement la version 5.1 de mysql afin de partionner les groupe d' | ||
| - | |||
| - | Paquets principaux [[: | ||
| - | |||
| - | Si c'est la 1ère fois que vous installez MySQL, définissez un mot de passe pour le root | ||
| - | |||
| - | mysqladmin -u root password ' | ||
| - | |||
| - | Si jamais le mot de passe root ne peut être changé voici une petite procédure pour pouvoir le faire:\\ | ||
| - | |||
| - | < | ||
| - | / | ||
| - | rm -Rf / | ||
| - | mysql_install_db | ||
| - | / | ||
| - | mysqladmin -u root password ' | ||
| - | </ | ||
| - | |||
| - | Donc bien evidement il faut un utilisateur pour Postfix sous Mysql. | ||
| - | |||
| - | < | ||
| - | $ mysql -u root -p | ||
| - | #Entrer le mot de passe de Mysql. | ||
| - | mysql> GRANT ALL PRIVILEGES ON postfix.* TO " | ||
| - | mysql> FLUSH PRIVILEGES; | ||
| - | mysql> quit | ||
| - | </ | ||
| - | Nous allons la table postfix : | ||
| - | < | ||
| - | mysql -u root -p | ||
| - | #Entrer le mot de passe de Mysql. | ||
| - | mysql> CREATE DATABASE postfix; | ||
| - | mysql> quit | ||
| - | </ | ||
| - | |||
| - | Maintenant nous allons installer les bases de données en SQL, tout en y insérant le nom de domaine avec sed. | ||
| - | |||
| - | < | ||
| - | cd ~ | ||
| - | wget http:// | ||
| - | sed -i ' | ||
| - | mysql -u root -p < postfix.sql | ||
| - | </ | ||
| - | |||
| - | |||
| - | ===== Paramétrage de Postfix | ||
| - | |||
| - | On remplace tout le / | ||
| - | |||
| - | < | ||
| - | smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) | ||
| - | biff = no | ||
| - | append_dot_mydomain = no | ||
| - | myhostname = exemple.domain.tld | ||
| - | alias_maps = hash:/ | ||
| - | alias_database = hash:/ | ||
| - | myorigin = $mydomain | ||
| - | mydestination = $myhostname, | ||
| - | mynetworks = 127.0.0.0/8 | ||
| - | recipient_delimiter = + | ||
| - | home_mailbox = Maildir/ | ||
| - | notify_classes = 2bounce, bounce, delay, policy, protocol, resource, software | ||
| - | smtpd_helo_required = yes | ||
| - | strict_rfc821_envelopes = yes | ||
| - | relay_domains = proxy: | ||
| - | relay_recipient_maps = proxy: | ||
| - | virtual_alias_maps = proxy: | ||
| - | virtual_gid_maps = static: | ||
| - | virtual_mailbox_base = / | ||
| - | virtual_mailbox_domains = proxy: | ||
| - | virtual_mailbox_maps = proxy: | ||
| - | virtual_minimum_uid = 20001 | ||
| - | virtual_uid_maps = static: | ||
| - | transport_maps = proxy: | ||
| - | proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $smtpd_recipient_restrictions $smtpd_sender_login_maps $has_our_domain_as_sender | ||
| - | message_size_limit = 50240000 | ||
| - | smtpd_recipient_restrictions = | ||
| - | permit_mynetworks, | ||
| - | reject_unauth_destination, | ||
| - | permit | ||
| - | smtpd_data_restrictions = | ||
| - | reject_unauth_pipelining, | ||
| - | permit | ||
| - | </ | ||
| - | |||
| - | FIXME | ||
| - | * myhostname : c'est le nom de votre serveur mail, configuré dans les entrées MX, par défaut mail.domaine.net | ||
| - | * mydestination : ceci est la concordance des domaines, remplacez Final-Fantasy par votre nom de machine, et FF-IRC.net par votre domaine | ||
| - | * mynetworks : permet de donner l' | ||
| - | * home_mailbox = Maildir/ : Ceci est important ! Nous choisissons le format Maildir en accord avec le serveur IMAP ! Vous ne pourrez pas recevoir vos mails par IMAP si cette ligne n'est pas ajoutée au fichier de configuration de Postfix ! | ||
| - | |||
| - | Le smtp de postfix est chrooter, il faut donc le retirer afin d' | ||
| - | |||
| - | On modifie le / | ||
| - | < | ||
| - | # | ||
| - | # Postfix master process configuration file. For details on the format | ||
| - | # of the file, see the master(5) manual page (command: "man 5 master" | ||
| - | # | ||
| - | # ========================================================================== | ||
| - | # service type private unpriv | ||
| - | # | ||
| - | # ========================================================================== | ||
| - | smtp | ||
| - | #smtp inet n | ||
| - | # | ||
| - | # | ||
| - | # | ||
| - | #submission inet n | ||
| - | 587 inet n | ||
| - | -o smtpd_tls_security_level=encrypt | ||
| - | -o smtpd_sasl_auth_enable=yes | ||
| - | -o smtpd_etrn_restrictions=reject | ||
| - | -o smtpd_client_restrictions=permit_sasl_authenticated, | ||
| - | # | ||
| - | # -o smtpd_tls_wrappermode=yes | ||
| - | # -o smtpd_sasl_auth_enable=yes | ||
| - | # -o smtpd_client_restrictions=permit_sasl_authenticated, | ||
| - | #628 inet n | ||
| - | pickup | ||
| - | -o receive_override_options=no_header_body_checks | ||
| - | -o content_filter= | ||
| - | cleanup | ||
| - | qmgr fifo n | ||
| - | #qmgr | ||
| - | tlsmgr | ||
| - | rewrite | ||
| - | bounce | ||
| - | defer | ||
| - | trace | ||
| - | verify | ||
| - | flush | ||
| - | proxymap | ||
| - | proxywrite unix - | ||
| - | smtp unix - | ||
| - | # When relaying mail as backup MX, disable fallback_relay to avoid MX loops | ||
| - | relay | ||
| - | -o fallback_relay= | ||
| - | # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 | ||
| - | showq | ||
| - | error | ||
| - | retry | ||
| - | discard | ||
| - | local | ||
| - | virtual | ||
| - | lmtp unix - | ||
| - | anvil | ||
| - | scache | ||
| - | # | ||
| - | # # | ||
| - | # Interfaces to non-Postfix software. Be sure to examine the manual | ||
| - | # pages of the non-Postfix software to find out what options it wants. | ||
| - | # | ||
| - | # Many of the following services use the Postfix pipe(8) delivery | ||
| - | # agent. | ||
| - | # and other message envelope options. | ||
| - | # # | ||
| - | # | ||
| - | # maildrop. See the Postfix MAILDROP_README file for details. | ||
| - | # Also specify in main.cf: maildrop_destination_recipient_limit=1 | ||
| - | # | ||
| - | # | ||
| - | # flags=DRhu user=vmail argv=/ | ||
| - | # | ||
| - | # See the Postfix UUCP_README file for configuration details. | ||
| - | # | ||
| - | uucp unix - | ||
| - | flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) | ||
| - | # | ||
| - | # Other external delivery methods. | ||
| - | # | ||
| - | # | ||
| - | # flags=F user=ftn argv=/ | ||
| - | # | ||
| - | #flags=Fq. user=bsmtp argv=/ | ||
| - | # | ||
| - | #flags=R user=scalemail argv=/ | ||
| - | # | ||
| - | #flags=FR user=list argv=/ | ||
| - | # ${nexthop} ${user} | ||
| - | </ | ||
| - | |||
| - | On crée un dossier nommé vmail. Ce dossier regroupera les boîtes mail des utilisateurs. | ||
| - | |||
| - | < | ||
| - | groupadd -g 20001 vmail | ||
| - | useradd -g vmail -u 20001 vmail -d / | ||
| - | </ | ||
| - | |||
| - | Bien sure il faut installer une sécuriter : | ||
| - | |||
| - | < | ||
| - | chown -R vmail: / | ||
| - | chmod 770 / | ||
| - | </ | ||
| - | |||
| - | On crée les fichiers d’appel des tables par Postfix : (la commande sed permet de specifier votre password d’accès à la base, dans l’exemple ici c’est toto). | ||
| - | < | ||
| - | cd / | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | sed -i ' | ||
| - | </ | ||
| - | Pour le bon fonctionnement et la sécurité il faut exécuter ces deux lignes de commandes | ||
| - | |||
| - | chmod 640 mysql_* | ||
| - | chgrp postfix mysql_* | ||
| - | |||
| - | On crée des liens pour le bon fonctionnement de l' | ||
| - | |||
| - | mkdir -p / | ||
| - | chown mysql / | ||
| - | ln -s / | ||
| - | |||
| - | mkdir -p / | ||
| - | ln -s / | ||
| - | chown -R daemon: | ||
| - | chmod 755 / | ||
| - | |||
| ==== Certification d' | ==== Certification d' | ||
| < | < | ||
| Ligne 405: | Ligne 151: | ||
| tls_random_source = dev:/ | tls_random_source = dev:/ | ||
| </ | </ | ||
| - | ===== Dovecot : SASL, LDA, IMAP et SIEVE ===== | ||
| - | ==== Installation ==== | ||
| - | Malheureusement il n' | ||
| - | === Les dépendances nécessaire à la compilation === | ||
| - | Dans un premier temps il faut [[: | ||
| - | **[[apt> | ||
| - | === Compilation === | ||
| - | <note important> | ||
| - | Pour la sécuriter de votre systeme on ne le compilera pas en super utilisateur. Le meilleur moyen que je connaisse c'est de configurer les fichiers sources a l' | ||
| - | </ | ||
| - | Téléchargement des fichier sources : | ||
| - | < | ||
| - | cd ~ | ||
| - | mkdir dovecot | ||
| - | cd dovecot | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | tar xvzf dovecot-2.0.13.tar.gz | ||
| - | tar xvzf dovecot-2.0-pigeonhole-0.2.3.tar.gz | ||
| - | </ | ||
| - | Configuration, | ||
| - | < | ||
| - | cd dovecot-2.0.13 | ||
| - | ./configure --prefix=/ | ||
| - | make | ||
| - | sudo make install | ||
| - | </ | ||
| - | < | ||
| - | cd ../ | ||
| - | ./configure --with-dovecot=/ | ||
| - | make | ||
| - | sudo make install | ||
| - | </ | ||
| - | ==== Configuration de Dovecot : ==== | ||
| - | Nous avons besoin d'un groupes d' | ||
| - | < | ||
| - | adduser --system --group --home / | ||
| - | adduser --system --home / | ||
| - | </ | ||
| - | On copie les fichiers de configuration nécessaires : | ||
| - | < | ||
| - | cd / | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | wget http:// | ||
| - | chown vmail: | ||
| - | chmod 600 dovecot-sql.conf | ||
| - | chmod 640 dovecot-dict-quota-sql.conf | ||
| - | </ | ||
| - | Dans le fichier __/ | ||
| - | < | ||
| - | ssl_cert = </ | ||
| - | ssl_key = </ | ||
| - | </ | ||
| - | On indique le mot de passe de la table postfix au fichier de configuration : | ||
| - | < | ||
| - | sed -i ' | ||
| - | </ | ||
| - | ===Configuration du MDA === | ||
| - | < | ||
| - | Le service de livraison Virtual de Postfix ne convient pas totalement pour notre usage. | ||
| - | En effet nous allons avoir besoin de capacité de filtrage sur le MDA ainsi que la possibilité de gérer les quotas, ce que ne sait pas faire Virtual.</ | ||
| - | Nous allons utiliser Dovecot LDA (Local Delivery Agent, le MDA de dovecot) qui s’occupera de la livraison des mails. Pour cela il faut donc configurer postfix pour qu’il utilise Dovecot comme MDA : | ||
| - | On ajoute ceci au fichier __/ | ||
| - | < | ||
| - | dovecot_destination_recipient_limit = 1 | ||
| - | virtual_transport = dovecot | ||
| - | </ | ||
| - | et on ajoute un transport dovecot au __/ | ||
| - | < | ||
| - | dovecot unix - | ||
| - | flags=DRhu user=vmail: argv=/ | ||
| - | </ | ||
| - | < | ||
| - | |||
| - | il faut maintenant créer un fichier __/ | ||
| - | |||
| - | < | ||
| - | cd / | ||
| - | wget http:// | ||
| - | chmod 755 / | ||
| - | insserv -v / | ||
| - | </ | ||
| - | |||
| - | On peux maintenant lancer Dovecot : | ||
| - | |||
| - | < | ||
| - | / | ||
| - | </ | ||
| - | |||
| - | Ainsi que Postfix : | ||
| - | |||
| - | < | ||
| - | / | ||
| - | </ | ||
| - | On vérifie dans les logs que tout a démarré correctement. | ||
| - | Pour l' | ||
| - | ===== Installation PostfixAdmin ===== | ||
| - | ==== La gestion des Quotas ==== | ||
| - | **Voila le serveur est configuré !** | ||
| - | Maintenant si vous souhaitez une sécurisation optimale vous pouvez continuer le lecture de la documentation de spamassassin, | ||
| - | ===== Utilisation ===== | ||
| - | ===== Désinstallation ===== | ||
