Ceci est une ancienne révision du document !


Serveur de Mail

Pour réaliser un serveur de mail, il est nécessaire de réaliser plusieurs fonctions distinctes :

  • MTA (Mail Transfert Agent) : Agent qui a pour rôle d'envoyer et recevoir les mails
  • Mise à disposition des mails : Par défaut le MTA stoque les mails reçus en local, pour y accéder il faut ensuite ajouter un démon POP3 ou IMAP4.
  • Webmail : Si vous souhaitez consulter les mails sur une interface web

Cette page explique la réalisation de ces fonctions avec les softs suivants :

  • MTA : Postfix
  • IMAP4 : Courier
  • Client en ligne de commande : Mutt

Pour le webmail, voir directement Webmail

Remarque sur le stockage des mails : j'ai opté pour le format Maildir qui stocke chaque mail dans un fichier séparé. Ce format est supporté directement par Postfix et Courier. Il est adapté à des besoins modestes.

Utilisé pour le projet Projet Bender.

Exim 4

Installation

Pour installer exim sous Debian, il faut installer :

  • exim4

Configuration

  • Changer /etc/mailname
  • dpkg-reconfigure exim4-config
  • optimiser ext3

The main disadvantage is that searching can be slightly slower, and access to very large mailboxes (thousands of messages) can get slow with filesystems which don't have directory indexes.

Old versions of ext2 and ext3 on Linux don't support directory indexing (to speed up access), but newer versions of ext3 do, although you may have to manually enable it. You can check if the indexing is already enabled with tune2fs:

tune2fs -l /dev/hda3 | grep features

If you see dir_index, you're all set. If dir_index is missing, add it using:

umount /dev/hda3 tune2fs -O dir_index /dev/hda3 e2fsck -fD /dev/hda3 mount /dev/hda3

Postfix

Installation

Pour installer postfix il faut tout d'abord supprimer exim4 puis installer le paquet :

  • postfix

A noter que postfix installe automatiquement openssl.

Configuration

La configuration de postfix se situe dans /etc/postfix/main.cf

Pour modifier le format et utiliser Maildir, il faut remplacer :

mailbox_command = procmail -a "$EXTENSION"

par :

home_mailbox = Maildir/

Il faut ensuite ajouter l'ensemble des alias du serveur dans mydestination :

mydestination = bouthors.fr, matthieu.bouthors.org, bender.matthieu.bouthors.org, localhost.matthieu.bouthors.org, localhost, alf.homelinux.com, alf.ath.cx, mat.homeftp.org

Et indiquer les réseaux qui peuvent envoyer des emails à tout le monde :

mynetworks = 127.0.0.0/8, 192.168.0.0/16

Il est possible de forcer l'ip utilisée pour sortir :

smtp_bind_address=192.168.10.2

Si vous utilisez un relais du FAI pour envoyer les mails indiquer :

relayhost = smtp.neuf.fr

Enfin, il faut configurer le nom du serveur

myhostname = smtp.bouthors.fr

Exemple de configuration complète :

# See /usr/share/postfix/main.cf.dist for a commented, more complete version


# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = smtp.bouthors.fr
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = bouthors.fr, matthieu.bouthors.org, bender.matthieu.bouthors.org, localhost.matthieu.bouthors.org, localhost, alf.homelinux.com, alf.ath.cx, mat.homeftp.org
relayhost = smtp.neuf.fr
mynetworks = 127.0.0.0/8, 192.168.0.0/16
#mailbox_command = procmail -a "$EXTENSION"
home_mailbox= Maildir/
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
smtp_bind_address=192.168.10.2

Gérer les alias

Le fichier /etc/aliases contient les alias email, pour rediriger les mails de root sur un utilisateur il suffit d'ajouter :

root: utilisateur

Courier

Courier est un serveur POP3/IMAP populaire. Il supporte le format Maildir par défaut.

Installation

L'installation se réalise par l'ajout des paquets suivants :

  • courier-imap
  • courier-imap-ssl

Configuration

Aucune configuration n'est nécessaire pour Courier.

Mutt

Mutt est un client mail très populaire sous Linux, il est installé par défaut. Sa configuration est dans /etc/Muttrc

Configuration

Pour utiliser le format Maildir, il faut ajouter les éléments suivants au debut de /etc/Muttrc :

set mbox_type=Maildir
set folder="~/Maildir"
set mask="!^\\.[^.]"
set mbox="~/Maildir"
set record="+.Sent"
set postponed="+.Drafts"
set spoolfile="~/Maildir"
mailboxes `echo -n "+ "; find ~/Maildir -type d -name ".*" -printf "+'%f' "`
macro index c "<change-folder>?<toggle-mailboxes>" "open a different folder"
macro pager c "<change-folder>?<toggle-mailboxes>" "open a different folder"
macro index C "<copy-message>?<toggle-mailboxes>" "copy a message to a mailbox"
macro index M "<save-message>?<toggle-mailboxes>" "move a message to a mailbox"
macro compose A "<attach-message>?<toggle-mailboxes>" "attach message(s) to this message"

Pour plus d'info voir directement http://www.elho.net/mutt/maildir/

Backup

Fichiers à sauver :

  • /etc/aliases
  • /etc/postfix/main.cf
  • /etc/Muttrc
  • /var/spool/postfix/

Links

linux/serveur_mail.1247078318.txt.gz · Dernière modification: 2009/07/08 20:38 par matthieu
Recent changes RSS feed Debian Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki