Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !


Il serait intéressant de traduire ce tutorial, qui semble être une bonne référence en la matière. En attendant, vous pouvez toujours le consulter depuis cette page : http://flurdy.com/docs/postfix/


Postfix

C'est un MTA, blablabla,

Installation de Postfix :

 sudo apt-get install postfix 

Pendant l'installation, choisir "Serveur Internet"

Configuration de postfix :

La configuration de Postfix se fait dans le fichier /etc/postfix/main.cf

 sudo nano /etc/postfix/main.cf 

Pour plus d'informations concernant les paramêtres du fichier main.cf, je vous encourage à lire la traduction de la documentation Postfix à cette adresse http://postfix.traduc.org

Exemple de fichier main.cf

# 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 (Ubuntu)
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 = votreserveur.votredomaine.org
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = votredomaine.org, localhost.localdomain, localhost.localdomain, localhost
relayhost = 
#relayhost = ip.smtp.devotre.fai si votre FAI refuse la connexion au port SMTP 25 directement

# Plage d'adresse IP ou adresse IP autorisées à se connecter à Postfix
mynetworks = 127.0.0.0/8, 192.168.0.0/24
mailbox_size_limit = 0
recipient_delimiter = +

# Vous pouvez spécifier l'adresse de la carte réseau utilisé par postfix si vous en utilisez plusieurs pour différents services
inet_interfaces = all

##Restrictions
# Filtrage au moment ou le client se présente avec la commande HELO
smtpd_helo_restrictions = permit_mynetworks, warn_if_reject reject_non_fqdn_hostname, reject_invalid_hostname, permit
# Filtrage de l'expéditeur au moment du MAIL FROM
smtpd_sender_restrictions = permit_mynetworks, warn_if_reject reject_non_fqdn_sender, reject_unknown_sender_domain, reject_unauth_pipelining, permit
# Filtrage du client au moment de la connexion 
smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org, reject_rbl_client relays.ordb.org, reject_rbl_client blackholes.easynet.nl, reject_rbl_cli$
# Filtrage des adresses de destinataire au moment du RCPT TO
smtpd_recipient_restrictions = reject_unauth_pipelining, permit_mynetworks, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unauth_dest$

# Delais pour prévenir l'expéditeur si le destinataire est injoignable
delay_warning_time = 4h
# will it be a permanent error or temporary
unknown_local_recipient_reject_code = 450
# how long to keep message on queue before return as failed.
# some have 3 days, I have 16 days as I am backup server for some people
# whom go on holiday with their server switched off.
maximal_queue_lifetime = 7d
# max and min time in seconds between retries if connection failed
minimal_backoff_time = 1000s
maximal_backoff_time = 8000s
# how long to wait when servers connect before receiving rest of data
smtp_helo_timeout = 60s
# Nombre de destinataires max par mail
smtpd_recipient_limit = 16
# how many error before back off.
smtpd_soft_error_limit = 3
# how many max errors before blocking it.
smtpd_hard_error_limit = 12
# require proper helo at connections
# smtpd_helo_required = yes
# waste spammers time before rejecting them
smtpd_delay_reject = yes
disable_vrfy_command = yes

# Utilisation du format maildir (plutôt que mbox) pour la livraison des messsages locaux
# ici la livraison se fera dans ~/login/Maildir
home_mailbox = Maildir/

# Permet d'avoir plus d'informations sur les problêmes rencontrés par postfix et reportés à postmaster
notify_classes = resource, software, protocol

Il faut redémarrer Postfix pour prendre en compte les changements :

 sudo /etc/init.d/postfix restart 

A ce stade, postfix est utilisable pour envoyer des mails. Vous pouvez configurer votre logiciel de messagerie pour vous en convaincre avec comme réglages pour l'envoi du courier l'adresse IP où se trouve votre serveur postfix SMTP. Envoyez un mail à un utilisateur existant sur le systême sur lequel tourne Postfix. Ce mail est de la forme login@votredomaine.org. Pour vérifier que le mail est bien parvenu à destination, aller voir dans ~/login/Maildir/new/ de la machine qui fait tourner postfix.

Pour vérifier que tout se passe bien au moment de l'envoi de mail, je vous conseille la commande :

 tail -f /var/log/mail.log 

Bien entendu, il serais plus agréable de recevoir les mails directement dans votre logiciel de messagerie, mais pour cela il faut mettre en place un serveur IMAP ou POP. Il est également possible de trier/filtrer le courier avec Procmail, de filtrer le spam avec Spamassassin, de proteger vos utilisateurs des virus avec ClamAV, et de proposer a vos utilisateurs de se connecter à leur boite mail par l'intermédiaire d'un webmail comme Squirrelmail.

Amélioration de la sécurité de votre serveur grâce à l'authentification SMTP avec Cyrus SASL.

  • serveur/postfix.1166616562.txt.gz
  • Dernière modification: Le 18/04/2011, 14:55
  • (modification externe)