frogdev site francophone sur Gentoo
Vous êtes ici : Serveur Postfix
Dernière modification : February 16 2007 18:39:14.

Configurer Postfix
1.1 Installer Postfix
# emerge postfix
La configuration de Postfix se fait dans le fichier /etc/postfix/main.cf. Voici un fichier d'exemple documenté:

#default_destination_concurrency_limit = 20

# DEBUGGING CONTROL
#
# The debug_peer_level parameter specifies the increment in verbose
# logging level when an SMTP client or server host name or address
# matches a pattern in the debug_peer_list parameter.
#
debug_peer_level = 2

# The debug_peer_list parameter specifies an optional list of domain
# or network patterns, /file/name patterns or type:name tables. When
# an SMTP client or server host name or address matches a pattern,
# increase the verbose logging level by the amount specified in the
# debug_peer_level parameter.
#
#debug_peer_list = 127.0.0.1
#debug_peer_list = some.domain

# The debugger_command specifies the external command that is executed
# when a Postfix daemon program is run with the -D option.
#
# Use "command .. &sleep 5" so that the debugger can attach before
# the process marches on. If you use an X-based debugger, be sure to
# set up your XAUTHORITY environment variable before starting Postfix.
#
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5

# If you don't have X installed on the Postfix machine, try:
# debugger_command =
# PATH=/bin:/usr/bin:/usr/local/bin; export PATH; (echo cont;
# echo where) | gdb $daemon_directory/$process_name $process_id 2>&1
# >$config_directory/$process_name.$process_id.log &sleep 5

# INSTALL-TIME CONFIGURATION INFORMATION
#
# The following parameters are used when installing a new Postfix version.
#
# sendmail_path: The full pathname of the Postfix sendmail command.
# This is the Sendmail-compatible mail posting interface.
#
sendmail_path = /usr/sbin/sendmail

# newaliases_path: The full pathname of the Postfix newaliases command.
# This is the Sendmail-compatible command to build alias databases.
#
newaliases_path = /usr/bin/newaliases

# mailq_path: The full pathname of the Postfix mailq command. This
# is the Sendmail-compatible mail queue listing command.
#
mailq_path = /usr/bin/mailq

# setgid_group: The group for mail submission and queue management
# commands. This must be a group name with a numerical group ID that
# is not shared with other accounts, not even with the Postfix account.
#
setgid_group = postdrop

# html_directory: The location of the Postfix HTML documentation.
#
html_directory = no

# manpage_directory: The location of the Postfix on-line manual pages.
#
manpage_directory = /usr/share/man

# sample_directory: The location of the Postfix sample configuration files.
# This parameter is obsolete as of Postfix 2.1.
#
sample_directory = /etc/postfix

# readme_directory: The location of the Postfix README files.
#
readme_directory = /usr/share/doc/postfix-2.1.3/readme
default_destination_concurrency_limit = 2
alias_database = hash:/etc/mail/aliases
local_destination_concurrency_limit = 2
alias_maps = hash:/etc/mail/aliases
home_mailbox = .maildir/
mynetworks = 127.0.0.0/8 192.168.0.0/24
mydomain = frogdev.dyndns.org
myhostname = tuxgentoo.$mydomain
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, $mydomain
relay_domains = $mydestination, free.fr


1.2 Les alias
Les alias permettent de faire des correspondances entre des adresses mail et des comptes locaux, d'autres adresses mail ou encore des commandes à exécuter. Ils sont définis dans le fichier /etc/mail/aliases.
La syntaxe de ce fichier est très simple :

# aliases
# Fichier d'alias mail
# NE PAS OUBLIER d'exécuter "newaliases" après chaque modification
# Fait suivre le mail reçu à l'adresse <bouleetbil@nom_de_domaine>
# au compte local "test" :
bouleetbil: test
# Fait suivre le mail reçu à l'adresse <toto@nom_de_domaine>
# à l'adresse <titi@yahoo.fr> :
toto: titi@yahoo.fr
# Fait suivre le mail reçu à l'adresse <machin@nom_de_domaine>
# aux comptes "user1" et "user2" et à l'adresse <bidulle@exemple.org> :
machin: user1,user2,bidulle@exemple.org
# A la réception d'un mail à l'adresse <bruit@nom_de_domaine>,
# exécute la commande "/usr/lib/ecartis/ecartis -s bruit" :
bruit: "|/usr/lib/ecartis/ecartis -s bruit"


Normalement, on définit aussi dans ce fichier à quel compte local (ou à quelle adresse) le serveur de mail doit faire suivre le mail destiné à l'utilisateur root. En effet, comme il n'y a pas besoin d'avoir tous les pouvois pour lire le mail du root, il serait absurde (et même dangereux) de lire les mails du root en tant que root. Il est préférable de faire suivre le mail du root vers un autre compte ou une autre adresse.

Il faut également faire des alias pour les adresses postmaster et abuse, qui sont deux adresses standard pour pouvoir joindre les administrateurs du serveur de mail d'un domaine. Par exemple, si vous utilisez un compte local admin pour lire les logs et les mails d'administration, ajoutez les lignes suivantes au fichier d'alias :

root: admin
postmaster: admin
abuse: admin


Ensuite, exécutez la commande suivante pour qu'il regénère la base de donnée d'alias (ne pas oublier d'exécuter cette commande après chaque modification du fichier aliases) :
# newaliases

1.3 Les adresses virtuelles
Quand le domaine de l'adresse mail n'est pas celui de la machine, on passe par un mécanisme d'adresses virtuelles pour faire correspondre ces adresses mail à des comptes locaux, à d'autres adresses mail ou encore à des commandes à exécuter.
Le nom du fichier contenant les correspondances pour les adresses virtuelles est définit dans le fichier de configuration de Postfix /etc/postfix/main.cf par le paramètre virtual_maps :
virtual_maps = hash:/etc/postfix/virtual
La syntaxe du fichier est semblable à celle du fichier d'alias, mais sans la séparation par les deux-points :

# /etc/postfix/virtual
# Fichier de correspondance pour les adresses virtuelles
# NE PAS OUBLIER d'exécuter "postmap /etc/postfix/virtual"
# après chaque modification
# Fait correspondre une adresse virtuelle à un compte local
postmaster@exemple.org admin
bouleetbil@exemple.org bouleetbil
# Fait correspondre une adresse virtuelle à une autre adresse mail
toto@exemple.org titi@yahoo.fr
# Fait correspondre une adresse virtuelle à une commande à exécuter
bruit@exemple.org "|/usr/lib/ecartis/ecartis -s bruit"
Ensuite, exécutez la commande suivante pour qu'il tienne compte des modifications :
# postmap /etc/postfix/virtual

1.4 Les commandes de base d'administration
Voici une liste de commandes de base d'administration de Postfix :
Liste la queue de mails en attente d'envoi :
# mailq
Cette commande est équivalente à la commande postqueue -p.
Force Postfix à réessayer d'envoyer les mails en attente d'envoi immédiatement :
# postqueue -f
Supprime un mail de la queue des mails en attente d'envoi :
# postsuper -d mail_ID
où mail_ID est l'identifiant du mail dans la queue (il apparaît à gauche dans la sortie de la commande mailq).
Activer postfix au démarrage de l'ordinateur:
# rc-update add postfix default

Pensez à copier le « /etc/resolv.conf » sur « /var/spool/postfix/etc/resolv.conf

1.5 Ajouter des serveurs POP et/ou IMAP
Attention, les protocoles POP et IMAP font transiter les mots de passe en clair sur le réseau.

1.5.1 Installer un serveur POP3 / IMAP
#emerge courier-imap courier-authlib

Pour ne pas utiliser le support Mysql d'identification mais pam, chaque utilisateur du systeme possede une boite aux lettres. Il faut modifier le fichier /etc/courier/authlib/authdaemonrc

authmodulelist="authshadow authpam"
authmodulelistorig="authshadow authpam"


Pour créer les boites aux lettres des utilisateurs:
$ maildirmake ~/.maildir/

Pour activer les services :
# /etc/init.d/courier-imapd start
# /etc/init.d/courier-pop3d start

Astuces:
Pour que votre serveur Mail soit visible de l'extérieur il faut définir une Zone MX chez votre registar.
Pour dyndns par exemple j'ai:
Hostname: frogdev.dyndns.org
IP Address: 82.236.233.24
Wildcard: N
Mail Exchanger: frogdev.dyndns.org
Backup MX: N


Voir les commentairesAjouter un commentaire

Imprimer cette page Imprimer cette page

Liste de diffusion

Valider 


Espace téléchargement

Téléchargement
Livres (pdf)
Howto



Promouvoir et soutenir le logiciel libre
Go Frugalware, Go

Get Firefox

Gentoo

Logo Apache

Logo Mysql

Logo PHP



nobrevet

Read and comment at the BadVista.org blog

L'Association Francophone des Utilisateurs de Linux et des logiciels libres (AFUL)

Logo greenpeace


grenouille

Me contacter / Mes expériences GNU/Linux

- [ Basé sur Itseasy | Thème : Frogdev ] -
Les informations ne sont données qu'à titre indicatif.
© frogdev site francophone sur Gentoo, Licence FDL 2008

[ Page générée en 0.0446 secondes | Compression gZip active ]
Poids XHTML : 24.45 ko (28.44 ko non compressé) - CSS : 5.92 ko
Eléments chargés : 9.61 ko