Dernière mise-à-jour : 2020/01/30 03:27
La messagerie utilise les protocols suivants :
Lors de l'utilisation du protocol, c'est l'expéditeur qui initie le transfert tandis qu'avec les protocols POP et IMAP c'est le destinataire qui initie la collecte.
Un serveur SMTP est aussi appelé un MTA (Mail Transfer Agent) tandis que les serveurs POP et IMAP sont souvents appelés des Pull Mail Servers. Enfin les clients de messagerie sont des MUA (Mail User Agent).
Dans un système Linux, le mail est stocké pour chaque utilisateur soit dans le répertoire /var/spool/mail, soit dans un répertoire dans le répertoire personnel de chaque utilisateur.
Les quatre MTA les plus utilisés sous Linux sont :
Postfix est considéré d'être un des MTA le plus facilement configuré par 250 directives. Ses fichiers sont facilement lisibles par l'être humain ce qui n'est pas le cas de sendmail.
Les deux Pull Mail Servers les plus utilisés sous Linux sont :
Fetchmail remplit un rôle spécifique et n'est utilisé que quand le serveur n'est pas connecté en permanance à Internet.
Les quatre MUA les plus utilisés sous Linux sont :
Deux utilitaires simples permettent la lecture des spools de mail locaux en ligne de commande aussi bien que l'envoie des messages :
La commande nail diffère de la commande mail par le fait qu'elle peut gérer des fichiers attachés.
La commande mail est souvent un lien symbolique ver la commande mailx :
[root@centos6 ~]# ls -l /bin/mail lrwxrwxrwx. 1 root root 5 Oct 25 2013 /bin/mail -> mailx
Les options de la commande mailx sont :
[root@centos6 ~]# mailx --help mail: illegal option -- - Usage: mail -eiIUdEFntBDNHRV~ -T FILE -u USER -h hops -r address -s SUBJECT -a FILE -q FILE -f FILE -A ACCOUNT -b USERS -c USERS -S OPTION users
La syntaxe de la commande mailx dans le cas d'un envoie est :
mailx [-s objet ] [-c ccadresse ] [-b bccadresse ] adresse_destinataire
Lors de la lecture du spool de mail local, la syntaxe est la suivante :
mailx [-f [ spool de mail local ] | -u nom_utilisateur ]
Par exemple :
[root@centos6 ~]# mail -s "test message" -c trainee root This is a test message [^D] EOT
[root@centos6 ~]# su - trainee [trainee@centos6 ~]$ mail Heirloom Mail version 12.4 7/29/08. Type ? for help. "/var/spool/mail/trainee": 2 messages 2 new >N 1 root Thu Nov 5 11:50 19/655 "[example] message" N 2 root Thu Nov 5 11:50 19/657 "test message" & 2 Message 2: From root@centos6.fenestros.loc Thu Nov 5 11:50:57 2015 Return-Path: <root@centos6.fenestros.loc> X-Original-To: trainee Delivered-To: trainee@centos6.fenestros.loc Date: Thu, 05 Nov 2015 11:50:57 +0100 To: root@centos6.fenestros.loc Subject: test message Cc: trainee@centos6.fenestros.loc User-Agent: Heirloom mailx 12.4 7/29/08 Content-Type: text/plain; charset=us-ascii From: root@centos6.fenestros.loc (root) Status: R This is a test message & q Held 2 messages in /var/spool/mail/trainee
Il est aussi possible d'injecter le contenu d'un fichier sur l'entrée standard de la commande mailx afin de l'utiliser comme le contenu du message :
[trainee@centos6 ~]$ echo fenestros > mail.txt [trainee@centos6 ~]$ mail -s "test message back" < mail.txt root [trainee@centos6 ~]$ su - Password: fenestros [root@centos6 ~]# mail Heirloom Mail version 12.4 7/29/08. Type ? for help. "/var/spool/mail/root": 2 messages 2 unread >U 1 root Thu Nov 5 11:50 20/661 "test message" U 2 trainee Thu Nov 5 11:55 19/633 "test message back" &
Commencez par installer une machine virtuelle vierge de CentOS 6.
Comme vous allez utiliser le nom de domaine mail.linuxelearning.info pour votre serveur postfix, modifiez votre fichier /etc/hosts ainsi :
[root@centos6 ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.0.2.15 mail.linuxelearning.info
[root@centos6 ~]# vi /etc/sysconfig/network
NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=mail.linuxelearning.info
[root@centos6 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR="08:00:27:9B:55:B1" UUID="8de9b113-7c02-42c1-b447-5a860cf431fe" DEVICE="eth0" NM_CONTROLLED="no" ONBOOT=yes TYPE=Ethernet BOOTPROTO=static IPV6INIT=no NETMASK=255.255.255.0 IPADDR=10.0.2.15 GATEWAY=10.0.2.2 USERCTL=yes
N'oubliez pas de modifier les valeurs des directives HWADDR et UUID en fonction de votre configuration.
Tuez votre session graphique et reconnectez-vous.
[root@mail ~]# service NetworkManager stop [root@mail ~]# service network start [root@mail ~]# service iptables stop [root@mail ~]# chkconfig --del NetworkManager [root@mail ~]# chkconfig --del iptables
[root@mail ~]# setenforce permissive [root@mail ~]# vi /etc/selinux/config
# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=permissive # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted
[root@mail ~]# vi /etc/resolv.conf
nameserver 8.8.8.8 nameserver 8.8.4.4
Changez les adresses IP des nameservers selon votre installation.
Pour installer le serveur de messagerie postfix utilisez yum. Choisissez le MDA (Mail Delivery Agent) Dovecot ou Cyrus-Imapd :
[root@mail ~]# yum install postfix procmail cyrus-imapd Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile * atomic: atomic.mirror.uber.com.au * base: centos.mirror.crcrepairs.com * epel: ftp.fau.de * extras: centos.mirror.crcrepairs.com * rpmforge: apt.sw.be * updates: centos.crazyfrogs.org ox-backend | 1.3 kB 00:00 ox-frontend | 1.3 kB 00:00 ox-usm | 1.2 kB 00:00 Setting up Install Process Package 2:postfix-2.6.6-6.el6_5.i686 already installed and latest version Resolving Dependencies --> Running transaction check ---> Package cyrus-imapd.i686 0:2.3.16-6.el6_2.5 will be installed --> Processing Dependency: cyrus-imapd-utils = 2.3.16-6.el6_2.5 for package: cyrus-imapd-2.3.16-6.el6_2.5.i686 ---> Package procmail.i686 0:3.22-25.1.el6 will be installed --> Running transaction check ---> Package cyrus-imapd-utils.i686 0:2.3.16-6.el6_2.5 will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================================================== Package Arch Version Repository Size ======================================================================================================================================================================== Installing: cyrus-imapd i686 2.3.16-6.el6_2.5 base 11 M procmail i686 3.22-25.1.el6 base 159 k Installing for dependencies: cyrus-imapd-utils i686 2.3.16-6.el6_2.5 base 255 k Transaction Summary ======================================================================================================================================================================== Install 3 Package(s) Total download size: 12 M Installed size: 43 M Is this ok [y/N]:
Utilisez les commandes suivantes pour voir les directives actives dans le fichiers /etc/postfix/main.cf :
[root@mail ~]# cd /tmp ; grep -E -v '^(#|$)' /etc/postfix/main.cf > main.cf [root@mail tmp]# cat main.cf
A l'installation de postfix, le fichier principal de configuration main.cf comporte les directives actives suivantes :
queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix data_directory = /var/lib/postfix mail_owner = postfix inet_interfaces = localhost inet_protocols = all mydestination = $myhostname, localhost.$mydomain, localhost unknown_local_recipient_reject_code = 550 alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop html_directory = no manpage_directory = /usr/share/man sample_directory = /usr/share/doc/postfix-2.6.6/samples readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES
Ce fichier comporte des directives au formats suivants :
Copiez votre fichier main.cf en main.old
[root@mail tmp]# cd ~ [root@mail ~]# cp /etc/postfix/main.cf /etc/postfix/main.old
Modifiez main.cf ainsi :
myhostname = mail.linuxelearning.info mydomain= linuxelearning.info myorigin = $mydomain mynetworks = 10.0.2.0/24, 127.0.0.0/8 mail_spool_directory = /var/spool/mail mailbox_command = /usr/bin/procmail -Y -a $DOMAIN smtpd_banner = $myhostname ESMTP $mail_name ($mail_version) delay_warning_time = 4h recipient_delimiter = + owner_request_special = no relayhost = smtp.bbox.fr mail_owner = postfix inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain #unknown_local_recipient_reject_code = 550 unknown_local_recipient_reject_code = 450 alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin xxgdb $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop manpage_directory = /usr/share/man sample_directory = /usr/share/doc/postfix-2.6.6/samples readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix
Les directives dans l'exemple ci-dessus sont :
Directive | Description |
---|---|
myhostname | Le nom de machine Internet de ce système de messagerie. |
mydomain | Le nom de domaine Internet du système de messagerie. |
myorigin | Le domaine par défaut utilisé pour les messages postés localement. |
mynetworks | La liste des clients SMTP “internes” qui ont plus de privilèges que les “étrangers”. |
mail_spool_directory | Le répertoire où les boîtes-aux-lettres locales sont stockées. |
mailbox_command | Commande externe optionnelle que l'agent de livraison local doit utiliser pour la livraison des messages. |
smtpd_banner | Texte qui suit le code de statut 220 dans la bannière d'accueil. |
delay_warning_time | Temps au delà duquel l'expéditeur reçoit les en-têtes d'un message toujours en file d'attente. |
recipient_delimiter | Le délimiteur système de l'extension de adresse de destination. |
owner_request_special | Applique un traitement particulier aux parties locales des adresses de listes de propriétaires ou de requêtes. |
relayhost | La machine par défaut où livrer le courrier extérieur. |
mail_owner | Le compte du système qui possède la file d'attente et la plupart des processus démons de Postfix. |
inet_interfaces | Les adresses réseau par lesquelles le système de messagerie reçoit les messages. |
mydestination | Liste des domaines livrés par le transporteur de messages. |
unknown_local_recipient_reject_code | Code numérique de réponse du serveur SMTP de Postfix lorsque le destinataire n'est pas trouvé. |
alias_maps | La base de données des alias utilisée pour la livraison locale. |
alias_database | La base de données des alias pour la livraison locale. |
debugger_command | La commande externe à exécuter lorsqu'un programme démon de Postfix est invoké avec l'option -D. |
sendmail_path | Indique l'emplacement de la commande sendmail de Postfix. |
newaliases_path | Indique l'emplacement de la commande newaliases. |
mailq_path | Indique où est installée la commande Postfix mailq. Cette commande peut être utilisée pour afficher la file d'attente. |
setgid_group | Le groupe propriétaire des commandes set-gid de Postfix et des répertoires en écriture pour le groupe. |
manpage_directory | Emplacement des pages de manuel de Postfix. |
sample_directory | Emplacement des exemples de fichiers de configuration de Postfix. |
readme_directory | Emplacement des fichiers README de Postfix. |
queue_directory | Emplacement du répertoire racine de la file d'attente de Postfix. |
command_directory | Emplacement des commandes administratives de Postfix. |
daemon_directory | Emplacement des démons Postfix. |
Pour plus d'informations concernant les directives, consultez cette page.
La directive relayhost = smtp.bbox.fr n'est necéssaire que pour contourner le blocage du port 25 du FAI utilisé pour éloborer ce cours. Elle n'est pas neceéssaire dans un environnement de production.
Les options les plus importantes de la commande sendmail de postfix sont :
-Am (ignored) -Ac (ignored) Postfix sendmail uses the same configuration file regardless of whether or not a message is an initial submission. -B body_type The message body MIME type: 7BIT or 8BITMIME. -bd Go into daemon mode. This mode of operation is implemented by executing the "postfix start" command. -bh (ignored) -bH (ignored) Postfix has no persistent host status database. -bi Initialize alias database. See the newaliases command above. -bm Read mail from standard input and arrange for delivery. This is the default mode of operation. -bp List the mail queue. See the mailq command above. -bs Stand-alone SMTP server mode. Read SMTP commands from standard input, and write responses to standard output. In stand-alone SMTP server mode, mail relaying and other access controls are disabled by default. To enable them, run the process as the mail_owner user. This mode of operation is implemented by running the smtpd(8) daemon. -bv Do not collect or deliver a message. Instead, send an email report after verifying each recipient address. This is useful for testing address rewriting and routing configurations. This feature is available in Postfix version 2.1 and later.
Testez votre fichier de configuration avec la commande postfix :
[root@mail ~]# postfix check [root@mail ~]#
Consultez le manuel de la commande postfix pour connaître ses options et ses arguments.
Modifiez maintenant les droits sur le répertoire /var/spool/mail:
[root@mail ~]# chmod 1777 /var/spool/mail
Le service postfix est activé dans les niveaux d'exécution 2,3,4 et 5 :
[root@mail ~]# chkconfig --list postfix postfix 0:arrêt 1:arrêt 2:marche 3:marche 4:marche 5:marche 6:arrêt
Re-démarrez le serveur postfix :
[root@mail ~]# service postfix restart Arrêt de postfix : [ OK ] Démarrage de postfix : [ OK ]
Installez maintenant telnet :
[root@centos6 ~]# yum install telnet Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile * atomic: atomic.mirror.uber.com.au * base: centos.mirror.crcrepairs.com * epel: ftp.fau.de * extras: centos.mirror.crcrepairs.com * rpmforge: apt.sw.be * updates: centos.crazyfrogs.org ox-backend | 1.3 kB 00:00 ox-frontend | 1.3 kB 00:00 ox-usm | 1.2 kB 00:00 Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package telnet.i686 1:0.17-47.el6_3.1 will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================================================== Package Arch Version Repository Size ======================================================================================================================================================================== Installing: telnet i686 1:0.17-47.el6_3.1 base 57 k Transaction Summary ======================================================================================================================================================================== Install 1 Package(s) Total download size: 57 k Installed size: 102 k Is this ok [y/N]:
Testez maintenant le serveur smtp de postfix en envoyant un message de root à trainee :
[root@centos6 ~]# telnet localhost 25 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 220 mail.linuxelearning.info ESMTP Postfix (2.6.6) HELO me 250 mail.linuxelearning.info MAIL from: root@linuxelearning.info 250 2.1.0 Ok RCPT to: trainee@linuxelearning.info 250 2.1.5 Ok DATA 354 End data with <CR><LF>.<CR><LF> Subject : Test email Ceci est un test . 250 2.0.0 Ok: queued as 7CADC451CA QUIT 221 2.0.0 Bye Connection closed by foreign host.
Notez :
Passez en revue la totalité des liens ci-dessus. Lisez chaque article/page attentivement.
Consultez maintenant le fichier /var/log/maillog. Vous devez constater que votre message a été livré à trainee :
[root@centos6 ~]# tail /var/log/maillog Apr 29 15:35:13 centos postfix/master[11705]: terminating on signal 15 Apr 29 15:35:14 centos postfix/postfix-script[11800]: starting the Postfix mail system Apr 29 15:35:14 centos postfix/master[11801]: daemon started -- version 2.6.6, configuration /etc/postfix Apr 29 15:35:16 centos postfix/smtpd[11807]: connect from localhost[127.0.0.1] Apr 29 15:35:52 centos postfix/smtpd[11807]: AE2C81369: client=localhost[127.0.0.1] Apr 29 15:36:26 centos postfix/cleanup[11810]: AE2C81369: message-id=<20140429133552.AE2C81369@mail.linuxelearning.info> Apr 29 15:36:26 centos postfix/qmgr[11804]: AE2C81369: from=<root@linuxelearning.info>, size=396, nrcpt=1 (queue active) Apr 29 15:36:26 centos postfix/local[11812]: AE2C81369: to=<trainee@linuxelearning.info>, relay=local, delay=45, delays=45/0.07/0/0.01, dsn=2.0.0, status=sent (delivered to command: /usr/bin/procmail -Y -a $DOMAIN) Apr 29 15:36:26 centos postfix/qmgr[11804]: AE2C81369: removed Apr 29 15:36:34 centos postfix/smtpd[11807]: disconnect from localhost[127.0.0.1]
Envoyez un message en utilisant telnet à hugh.norris@hugh-norris.info avec comme Subject: votre prénom :
[root@mail ~]# telnet localhost 25 Trying ::1... telnet: connect to address ::1: Connection refused Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 220 mail.linuxelearning.info ESMTP Postfix (2.6.6) HELO me 250 mail.linuxelearning.info MAIL from: root@linuxelearning.info 250 2.1.0 Ok RCPT to: hugh.norris@hugh-norris.info 250 2.1.5 Ok DATA 354 End data with <CR><LF>.<CR><LF> Subject : root Message de Test . 250 2.0.0 Ok: queued as AF03C70A3 QUIT 221 2.0.0 Bye Connection closed by foreign host.
Consultez maintenant la fin du fichier /var/log/maillog. Vous devez constater que votre message est parti. Par exemple :
... May 1 10:54:17 mail postfix/smtpd[5899]: connect from localhost[127.0.0.1] May 1 10:54:50 mail postfix/smtpd[5899]: AF03C70A3: client=localhost[127.0.0.1] May 1 10:55:04 mail postfix/cleanup[5903]: AF03C70A3: message-id=<20140501085450.AF03C70A3@mail.linuxelearning.info> May 1 10:55:04 mail postfix/qmgr[5061]: AF03C70A3: from=<root@linuxelearning.info>, size=390, nrcpt=1 (queue active) May 1 10:55:04 mail postfix/smtp[5904]: AF03C70A3: to=<hugh.norris@hugh-norris.info>, relay=smtp.bbox.fr[194.158.122.55]:25, delay=31, delays=31/0.01/0.16/0.05, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 4EF645A) May 1 10:55:04 mail postfix/qmgr[5061]: AF03C70A3: removed May 1 10:55:08 mail postfix/smtpd[5899]: disconnect from localhost[127.0.0.1]
Important : Il est possible a tout moment de visualiser le contenu du spool de mail en utilisant la commande mailq qui est équivalente à la commande sendmail bp.
Les deux lignes suivantes, issues du fichier /etc/postfix/main.cf indiquent l'emplacement des fichiers relatifs aux aliases :
... alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases ...
Voici le contenu du fichier /etc/aliases :
# # Aliases in this file will NOT be expanded in the header from # Mail, but WILL be visible over networks or from /bin/mail. # # >>>>>>>>>> The program "newaliases" must be run after # >> NOTE >> this file is updated for any changes to # >>>>>>>>>> show through to sendmail. # # Basic system aliases -- these MUST be present. mailer-daemon: postmaster postmaster: root # General redirections for pseudo accounts. bin: root daemon: root adm: root lp: root sync: root shutdown: root halt: root mail: root news: root uucp: root operator: root games: root gopher: root ftp: root nobody: root radiusd: root nut: root dbus: root vcsa: root canna: root wnn: root rpm: root nscd: root pcap: root apache: root webalizer: root dovecot: root fax: root quagga: root radvd: root pvm: root amanda: root privoxy: root ident: root named: root xfs: root gdm: root mailnull: root postgres: root sshd: root smmsp: root postfix: root netdump: root ldap: root squid: root ntp: root mysql: root desktop: root rpcuser: root rpc: root nfsnobody: root ingres: root system: root toor: root manager: root dumper: root abuse: root newsadm: news newsadmin: news usenet: news ftpadm: ftp ftpadmin: ftp ftp-adm: ftp ftp-admin: ftp www: webmaster webmaster: root noc: root security: root hostmaster: root info: postmaster marketing: postmaster sales: postmaster support: postmaster # trap decode to catch security attacks decode: root # Person who should get root's mail #root: marc
Il est important de spécifier un utilisateur existant qui recevra le mail de root et ceci pour des raisons légales liées à la boîte de mail postmaster, l'administrateur du serveur vu de l'extérieur.
Il est aussi possible de créer des aliases pour harmoniser les adresses email de l'organisation. Si, par exemple, l'adresse email doit être au format prénom.nom mais que les noms de comptes du système linux sont au format prénom, il convient de rajouter au fichier une ligne pour chaque personne au format suivant :
... prénom.nom: prénom ...
Modifiez donc votre fichier ainsi :
# # Aliases in this file will NOT be expanded in the header from # Mail, but WILL be visible over networks or from /bin/mail. # # >>>>>>>>>> The program "newaliases" must be run after # >> NOTE >> this file is updated for any changes to # >>>>>>>>>> show through to sendmail. # # Basic system aliases -- these MUST be present. mailer-daemon: postmaster postmaster: root # General redirections for pseudo accounts. bin: root daemon: root adm: root lp: root sync: root shutdown: root halt: root mail: root news: root uucp: root operator: root games: root gopher: root ftp: root nobody: root radiusd: root nut: root dbus: root vcsa: root canna: root wnn: root rpm: root nscd: root pcap: root apache: root webalizer: root dovecot: root fax: root quagga: root radvd: root pvm: root amanda: root privoxy: root ident: root named: root xfs: root gdm: root mailnull: root postgres: root sshd: root smmsp: root postfix: root netdump: root ldap: root squid: root ntp: root mysql: root desktop: root rpcuser: root rpc: root nfsnobody: root ingres: root system: root toor: root manager: root dumper: root abuse: root newsadm: news newsadmin: news usenet: news ftpadm: ftp ftpadmin: ftp ftp-adm: ftp ftp-admin: ftp www: webmaster webmaster: root noc: root security: root hostmaster: root info: postmaster marketing: postmaster sales: postmaster support: postmaster # trap decode to catch security attacks decode: root # Person who should get root's mail root: trainee # Employee Accounts mickey.mouse: trainee
Afin de prendre en compte la nouvelle liste d'alias, il faut utiliser la commande newaliases :
[root@mail ~]# newaliases
et demander à postfix de relire ses fichiers de configuration :
[root@mail ~]# service postfix reload Rechargement de postfix : [ OK ]
En utilisant telnet, envoyez un message de trainee à mickey.mouse. Ce message arrivera dans la bôite de réception de trainee grâce à l'alias créé ci dessus :
[root@mail ~]# telnet localhost 25 Trying ::1... telnet: connect to address ::1: Connection refused Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 220 mail.linuxelearning.info ESMTP Postfix (2.6.6) HELO me 250 mail.linuxelearning.info MAIL from: trainee@linuxelearning.info 250 2.1.0 Ok RCPT to: mickey.mouse@linuxelearning.info 250 2.1.5 Ok DATA 354 End data with <CR><LF>.<CR><LF> Subject : test Message de test . 250 2.0.0 Ok: queued as 7680970A3 QUIT 221 2.0.0 Bye Connection closed by foreign host.
Consultez maintenant le journal /var/log/maillog. Vous apercevrez des lignes similaires à :
[root@mail ~]# tail /var/log/maillog May 1 10:59:19 mail postfix/master[5058]: terminating on signal 15 May 1 10:59:19 mail postfix/postfix-script[6009]: starting the Postfix mail system May 1 10:59:19 mail postfix/master[6010]: daemon started -- version 2.6.6, configuration /etc/postfix May 1 11:00:34 mail postfix/smtpd[6020]: connect from localhost[127.0.0.1] May 1 11:00:59 mail postfix/smtpd[6020]: 7680970A3: client=localhost[127.0.0.1] May 1 11:01:11 mail postfix/cleanup[6024]: 7680970A3: message-id=<20140501090059.7680970A3@mail.linuxelearning.info> May 1 11:01:11 mail postfix/qmgr[6013]: 7680970A3: from=<trainee@linuxelearning.info>, size=397, nrcpt=1 (queue active) May 1 11:01:11 mail postfix/local[6037]: 7680970A3: to=<trainee@linuxelearning.info>, orig_to=<mickey.mouse@linuxelearning.info>, relay=local, delay=21, delays=21/0.05/0/0.03, dsn=2.0.0, status=sent (delivered to command: /usr/bin/procmail -Y -a $DOMAIN) May 1 11:01:11 mail postfix/qmgr[6013]: 7680970A3: removed May 1 11:01:15 mail postfix/smtpd[6020]: disconnect from localhost[127.0.0.1]
Notez la présence de la ligne suivante :
May 1 11:01:11 mail postfix/local[6037]: 7680970A3: to=trainee@linuxelearning.info, orig_to=mickey.mouse@linuxelearning.info, relay=local, delay=21, delays=21/0.05/0/0.03, dsn=2.0.0, status=sent (delivered to command: /usr/bin/procmail -Y -a $DOMAIN)
Cette ligne démontre que l'alias fonctionne.
Important : Un utilisateur peut transférer son email vers un autre utilisateur du système ou bien vers une adresse email valide en inscrivant le nom ou l'adresse dans le fichier ~.forward.
<html>
Copyright © 2004-2017 Hugh Norris.<br><br> <a rel=“license” href=“http://creativecommons.org/licenses/by-nc-nd/3.0/fr/”><img alt=“Licence Creative Commons” style=“border-width:0” src=“http://i.creativecommons.org/l/by-nc-nd/3.0/fr/88x31.png” /></a><br />Ce(tte) oeuvre est mise à disposition selon les termes de la <a rel=“license” href=“http://creativecommons.org/licenses/by-nc-nd/3.0/fr/”>Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Pas de Modification 3.0 France</a>.
</html>