2664 lines
101 KiB
XML
2664 lines
101 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!--
|
|
The FreeBSD Documentation Project
|
|
The FreeBSD French Documentation Project
|
|
|
|
$FreeBSD$
|
|
Original revision: 1.116
|
|
-->
|
|
|
|
<chapter id="mail">
|
|
<chapterinfo>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Bill</firstname>
|
|
<surname>Lloyd</surname>
|
|
<contrib>Contribution originale de </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Jim</firstname>
|
|
<surname>Mock</surname>
|
|
<contrib>Réécrit par </contrib>
|
|
<!-- 2 Dec 1999 -->
|
|
</author>
|
|
</authorgroup>
|
|
</chapterinfo>
|
|
|
|
<title>Courrier électronique</title>
|
|
&trans.a.fonvieille;
|
|
|
|
<sect1 id="mail-synopsis">
|
|
<title>Synopsis</title>
|
|
<indexterm><primary>email</primary></indexterm>
|
|
<indexterm><primary>courrier électronique</primary></indexterm>
|
|
|
|
<para>Le “courrier électronique”, plus connu sous le nom d'email,
|
|
est une des formes de communication les plus utilisées
|
|
aujourd'hui. Ce chapitre fournit une introduction sur comment
|
|
faire fonctionner un serveur de courrier électronique sous
|
|
FreeBSD, et comment envoyer et recevoir du courrier électronique sous &os;. Cependant, cela n'est pas un document de
|
|
référence, en fait de nombreux
|
|
éléments importants ont été omis.
|
|
Pour une couverture plus complète du sujet, le lecteur doit
|
|
se référer aux nombreux ouvrages excellents
|
|
listés dans l'<xref linkend="bibliography"/>.</para>
|
|
|
|
<para>Après la lecture de ce chapitre, vous
|
|
connaîtrez:</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Quels composants logiciel sont impliqués dans
|
|
l'envoi et la réception du courrier
|
|
électronique.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Où se trouvent sous FreeBSD les fichiers de
|
|
configuration de base de
|
|
<application>sendmail</application>.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>La différence entre boîtes aux lettres
|
|
distantes et boîtes aux lettres locale.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comment empêcher les personnes à l'origine
|
|
de courriers non sollicités (spam) d'utiliser votre
|
|
serveur de courrier comme relais.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comment installer et configurer un agent de transfert de
|
|
courrier alternatif sur votre système, en remplacement
|
|
de <application>sendmail</application>.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comment dépanner les problèmes
|
|
courants des serveurs de courrier
|
|
électronique.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comment utiliser le protocole SMTP avec UUCP.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comment utiliser le courrier électronique avec
|
|
une connexion temporaire.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comment configurer l'authentification SMTP pour une
|
|
sécurité accrue.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comment installer et utiliser un client de messagerie,
|
|
comme <application>mutt</application> pour envoyer et lire
|
|
du courrier électronique.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comme récupérer votre courrier
|
|
électronique à partir d'un serveur
|
|
<acronym>POP</acronym> ou <acronym>IMAP</acronym>
|
|
distant.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Comment appliquer automatiquement des règles de
|
|
filtrage au courrier entrant.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>Avant de lire ce chapitre, vous devrez:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>Configurer correctement votre connexion réseau
|
|
(<xref linkend="advanced-networking"/>).</para>
|
|
</listitem>
|
|
<listitem><para>Configurer correctement les informations DNS
|
|
pour votre serveur de courrier (<xref
|
|
linkend="advanced-networking"/>).</para>
|
|
</listitem>
|
|
<listitem><para>Savoir comment installer des logiciels tiers
|
|
(<xref linkend="ports"/>).</para></listitem>
|
|
</itemizedlist>
|
|
</sect1>
|
|
|
|
<sect1 id="mail-using">
|
|
<title>Utilisation du courrier électronique</title>
|
|
<indexterm><primary>POP</primary></indexterm>
|
|
<indexterm><primary>IMAP</primary></indexterm>
|
|
<indexterm><primary>DNS</primary></indexterm>
|
|
|
|
<para>Il y a cinq éléments majeurs impliqués
|
|
dans un échange de courrier. Ce sont:
|
|
<link linkend="mail-mua">le programme utilisateur</link>,
|
|
<link linkend="mail-mta">le “daemon” serveur de
|
|
courrier</link>, <link linkend="mail-dns">le serveur DNS</link>,
|
|
<link linkend="mail-receive">une boîte aux lettres distante ou locale</link>, et
|
|
bien sûr le <link linkend="mail-host">le serveur
|
|
de courrier lui-même </link>.</para>
|
|
|
|
<sect2 id="mail-mua">
|
|
<title>Le programme utilisateur</title>
|
|
|
|
<para>Cela inclut des programmes en ligne de commande comme
|
|
<application>mutt</application>, <application>pine</application>,
|
|
<application>elm</application>, et
|
|
<application>mail</application>, et des programmes graphiques
|
|
comme <application>balsa</application>,
|
|
<application>xfmail</application> pour juste en nommer
|
|
quelques-uns, ou quelque chose de plus
|
|
<quote>sophisticated</quote> comme un navigateur WWW. Ces
|
|
programmes transmettent simplement toutes les transactions
|
|
concernant le courrier électronique au <link
|
|
linkend="mail-host">serveur de courrier local</link>, soit en
|
|
invoquant un des <link
|
|
linkend="mail-mta">“daemons” serveurs</link>
|
|
(Agents de transfert de courrier) disponibles, soit via
|
|
<acronym>TCP</acronym>.</para>
|
|
</sect2>
|
|
|
|
<sect2 id="mail-mta">
|
|
<title>Le “daemon” serveur de courrier</title>
|
|
<indexterm>
|
|
<primary>daemons serveurs de courrier</primary>
|
|
<secondary><application>sendmail</application></secondary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary>daemons serveurs de courrier</primary>
|
|
<secondary><application>postfix</application></secondary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary>daemons serveurs de courrier</primary>
|
|
<secondary><application>qmail</application></secondary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary>daemons serveurs de courrier</primary>
|
|
<secondary><application>exim</application></secondary>
|
|
</indexterm>
|
|
|
|
<para>&os; est fourni par défaut avec
|
|
<application>sendmail</application>, mais supporte
|
|
également de nombreux autres “daemons”
|
|
serveurs de courrier, parmi lesquels:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><application>exim</application>;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para><application>postfix</application>;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para><application>qmail</application>.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>Le serveur a généralement deux
|
|
fonctions—il est responsable de la réception du
|
|
courrier comme celle de son envoi. Il n'est cependant
|
|
<emphasis>pas</emphasis> responsable de la
|
|
récupération du courrier électronique en
|
|
utilisant des protocoles comme <acronym>POP</acronym> ou
|
|
<acronym>IMAP</acronym> pour lire votre courrier, il ne vous
|
|
permet pas non plus la connexion à des boîtes aux
|
|
lettres locales de type <filename>mbox</filename> ou maildir.
|
|
Vous avez besoin d'un <link
|
|
linkend="mail-receive">“daemon”</link>
|
|
supplémentaire pour cela.</para>
|
|
|
|
<warning>
|
|
<para>Les anciennes version de
|
|
<application>sendmail</application> ont de sérieux
|
|
problèmes de sécurité qui peuvent avoir
|
|
pour conséquence l'obtention d'un accès local
|
|
et/ou à distance à votre machine pour une
|
|
personne malveillante. Vérifiez que vous utilisez
|
|
une version à jour pour éviter de tels
|
|
problèmes. Vous avez cependant toujours la
|
|
possibilité d'installer un autre
|
|
<acronym>MTA</acronym> à partir du <link
|
|
linkend="ports">catalogue des logiciels portés de
|
|
&os;</link>.</para>
|
|
</warning>
|
|
</sect2>
|
|
|
|
<sect2 id="mail-dns">
|
|
<title>Courrier électronique et DNS</title>
|
|
|
|
<para>Le système de noms de domaines (DNS) et son
|
|
“daemon” <command>named</command> jouent un rôle
|
|
important dans la transmission du courrier électronique.
|
|
Afin de délivrer du courrier de votre site à un autre,
|
|
le serveur recherchera le site distant dans la base de données DNS
|
|
pour déterminer la machine qui recevra le courrier
|
|
électronique pour le destinataire. Ce processus
|
|
intervient également quand un courrier
|
|
électronique est envoyé à partir d'une
|
|
machine distante vers votre serveur de courrier.</para>
|
|
|
|
<indexterm>
|
|
<primary>enregistrement MX</primary>
|
|
</indexterm>
|
|
|
|
<para>Le <acronym>DNS</acronym> gère la correspondance
|
|
entre nom de machine et adresse IP, et le stockage des
|
|
informations spécifiques à la distribution du
|
|
courrier électronique, connues sous le nom
|
|
d'enregistrements MX. L'enregistrement MX (“Mail
|
|
eXchanger”) définit la machine, ou les machines,
|
|
qui recevra le courrier pour un domaine particulier. Si vous
|
|
n'avez pas d'enregistrement MX pour votre machine ou votre
|
|
domaine, le courrier sera directement envoyé à
|
|
votre machine à condition que vous ayez un
|
|
enregistrement A faisant correspondre à votre nom de
|
|
machine votre adresse IP.</para>
|
|
|
|
<para>Vous pouvez obtenir les enregistrements MX pour n'importe
|
|
quel domaine en utilisant la commande &man.host.1; est
|
|
présentée ci-dessous:</para>
|
|
|
|
<screen>&prompt.user; <userinput>host -t mx FreeBSD.org</userinput>
|
|
FreeBSD.org mail is handled (pri=10) by mx1.FreeBSD.org</screen>
|
|
</sect2>
|
|
|
|
<sect2 id="mail-receive">
|
|
<title>Réception de courrier</title>
|
|
<indexterm>
|
|
<primary>courrier électronique</primary>
|
|
<secondary>réception</secondary>
|
|
</indexterm>
|
|
|
|
<para>La réception du courrier pour votre domaine se fait par le
|
|
serveur de courrier. Il collectera le courrier qui est
|
|
envoyé à destination de votre domaine et le
|
|
stockera soit sous le format <filename>mbox</filename> (la
|
|
méthode par défaut de stockage du courrier
|
|
électronique) ou le format Maildir, en fonction de
|
|
votre configuration. Une fois le courrier stocké, il
|
|
peut être lu localement en utilisant des applications
|
|
comme &man.mail.1; ou <application>mutt</application>, ou lu
|
|
à distance et récupéré en
|
|
utilisant des protocoles tels que <acronym>POP</acronym> ou
|
|
<acronym>IMAP</acronym>. Cela signifie que si vous
|
|
désirez uniquement lire votre courrier
|
|
électroniquement en local, vous n'avez pas besoin
|
|
d'installer un serveur <acronym>POP</acronym> ou
|
|
<acronym>IMAP</acronym>.</para>
|
|
|
|
<sect3 id="pop-and-imap">
|
|
<title>Accès aux boîtes aux lettres distantes en
|
|
utilisant <acronym>POP</acronym> et
|
|
<acronym>IMAP</acronym></title>
|
|
|
|
<indexterm><primary>POP</primary></indexterm>
|
|
<indexterm><primary>IMAP</primary></indexterm>
|
|
|
|
<para>Pour accéder à des boîtes aux
|
|
lettres distantes, vous devez avoir un accès à
|
|
un serveur <acronym>POP</acronym> ou
|
|
<acronym>IMAP</acronym>. Ces protocoles permettent aux
|
|
utilisateurs de se connecter aisément à leurs
|
|
boîtes aux lettres à partir de machines
|
|
distantes. Bien que <acronym>POP</acronym> et
|
|
<acronym>IMAP</acronym> permettent, tous les deux,
|
|
l'accès aux boîtes aux lettres pour les
|
|
utilisateurs, <acronym>IMAP</acronym> offre de nombreux
|
|
avantages, parmi lesquels:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><acronym>IMAP</acronym> peut stocker les messages
|
|
sur un serveur distant et les
|
|
récupérer.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para><acronym>IMAP</acronym> supporte les mises à
|
|
jour concourantes.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para><acronym>IMAP</acronym> peut être
|
|
extrêmement utile pour les connexions lentes car il
|
|
permet aux utilisateurs de récupérer la
|
|
structure des messages sans les télécharger.
|
|
Il peut également effectuer des tâches comme
|
|
la recherche sur le serveur pour réduire les
|
|
transferts de données entre clients et
|
|
serveurs.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>Pour installer un serveur <acronym>POP</acronym> ou
|
|
<acronym>IMAP</acronym>, les étapes suivantes doivent
|
|
être suivies:</para>
|
|
|
|
<procedure>
|
|
<step>
|
|
<para>Choisissez un serveur <acronym>IMAP</acronym> ou
|
|
<acronym>POP</acronym> correspondant à vos
|
|
besoins. Les serveurs <acronym>POP</acronym> et
|
|
<acronym>IMAP</acronym> suivants sont connus et sont de
|
|
bons exemples:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><application>qpopper</application>;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para><application>teapop</application>;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para><application>imap-uw</application>;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para><application>courier-imap</application>;</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Installez le “daemon”
|
|
<acronym>POP</acronym> ou <acronym>IMAP</acronym> de votre
|
|
choix à partir du catalogue des logiciels
|
|
portés.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Si cela est nécessaire, modifiez le fichier
|
|
<filename>/etc/inetd.conf</filename> pour charger le
|
|
serveur <acronym>POP</acronym> ou
|
|
<acronym>IMAP</acronym>.</para>
|
|
</step>
|
|
</procedure>
|
|
|
|
<warning>
|
|
<para>Il doit être noté que
|
|
<acronym>POP</acronym> et <acronym>IMAP</acronym>
|
|
transmettent les données, y compris les noms
|
|
d'utilisateurs et mot de passe d'authentification en clair.
|
|
Cela signifie que si vous désirez sécuriser la
|
|
transmission des données avec ces protocoles, vous
|
|
devriez considérer l'utilisation de de tunnels
|
|
&man.ssh.1;. L'utilisation de tels tunnels est
|
|
décrite dans la <xref
|
|
linkend="security-ssh-tunneling"/>.</para>
|
|
</warning>
|
|
</sect3>
|
|
|
|
<sect3 id="local">
|
|
<title>Accès aux boîtes aux lettres
|
|
locales</title>
|
|
|
|
<para>Les boîtes aux lettres peuvent être
|
|
accessibles localement en utilisant un client de messagerie
|
|
sur le serveur où se trouve la boîte. Cela
|
|
peut être fait en employant des applications telles
|
|
que <application>mutt</application> ou &man.mail.1;.</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2 id="mail-host">
|
|
<title>Le serveur de courrier</title>
|
|
<indexterm><primary>serveur de courrier</primary></indexterm>
|
|
|
|
<para>Le serveur de courrier est le nom donné au
|
|
serveur qui est responsable de la transmission et la
|
|
réception du courrier pour votre machine, et
|
|
probablement votre réseau.</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="sendmail">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Christopher</firstname>
|
|
<surname>Shumway</surname>
|
|
<contrib>Contribution de </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
<title>Configuration de <application>sendmail</application></title>
|
|
|
|
<indexterm>
|
|
<primary><application>sendmail</application></primary>
|
|
</indexterm>
|
|
|
|
<para>&man.sendmail.8; est l'agent de transfert de courrier (Mail
|
|
Transfert Agent—MTA) par défaut sous FreeBSD. Le rôle
|
|
de <application>sendmail</application> est d'accepter le
|
|
courrier en provenance des agents de courrier utilisateur (Mail
|
|
User Agents—MUA) et de délivrer le courrier aux programmes de
|
|
gestion du courrier définis dans son fichier de configuration.
|
|
<application>sendmail</application> peut également accepter
|
|
les connexions réseau et délivrer le courrier dans des
|
|
boîtes aux lettres locales ou le transmettre à un autre
|
|
programme.</para>
|
|
|
|
<para><application>sendmail</application> utilise les fichiers de
|
|
configuration suivants:</para>
|
|
|
|
<indexterm>
|
|
<primary><filename>/etc/mail/access</filename></primary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary><filename>/etc/mail/aliases</filename></primary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary><filename>/etc/mail/local-host-names</filename></primary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary><filename>/etc/mail/mailer.conf</filename></primary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary><filename>/etc/mail/mailertable</filename></primary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary><filename>/etc/mail/sendmail.cf</filename></primary>
|
|
</indexterm>
|
|
<indexterm>
|
|
<primary><filename>/etc/mail/virtusertable</filename></primary>
|
|
</indexterm>
|
|
<informaltable>
|
|
<tgroup cols="2">
|
|
<thead>
|
|
<row>
|
|
<entry>Fichier</entry>
|
|
<entry>Fonction</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>
|
|
<filename>/etc/mail/access</filename>
|
|
</entry>
|
|
<entry>Fichier de la base de données d'accès
|
|
de <application>sendmail</application></entry>
|
|
</row>
|
|
<row>
|
|
<entry>
|
|
<filename>/etc/mail/aliases</filename>
|
|
</entry>
|
|
<entry>Alias de boîte aux lettres</entry>
|
|
</row>
|
|
<row>
|
|
<entry>
|
|
<filename>/etc/mail/local-host-names</filename>
|
|
</entry>
|
|
<entry>Liste des machines pour lesquelles
|
|
<application>sendmail</application> accepte du
|
|
courrier</entry>
|
|
</row>
|
|
<row>
|
|
<entry>
|
|
<filename>/etc/mail/mailer.conf</filename>
|
|
</entry>
|
|
<entry>Configuration du programme de gestion du
|
|
courrier</entry>
|
|
</row>
|
|
<row>
|
|
<entry>
|
|
<filename>/etc/mail/mailertable</filename>
|
|
</entry>
|
|
<entry>Table de livraison du courrier</entry>
|
|
</row>
|
|
<row>
|
|
<entry>
|
|
<filename>/etc/mail/sendmail.cf</filename>
|
|
</entry>
|
|
<entry>Fichier de configuration principal
|
|
de <application>sendmail</application></entry>
|
|
</row>
|
|
<row>
|
|
<entry>
|
|
<filename>/etc/mail/virtusertable</filename>
|
|
</entry>
|
|
<entry>Table des domaines et utilisateurs virtuels</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
|
|
<sect2>
|
|
<title><filename>/etc/mail/access</filename></title>
|
|
|
|
<para>La base de données d'accès définit
|
|
quelle(s) machine(s) ou adresses IP ont accès au serveur de
|
|
courrier local et quel type d'accès ils ont.
|
|
Les machines peuvent être listées avec <option>OK</option>,
|
|
<option>REJECT</option>, <option>RELAY</option> ou simplement
|
|
transférées à la routine de gestion des erreurs
|
|
<application>sendmail</application> avec une erreur donnée.
|
|
Les machines qui sont listées avec <option>OK</option>, qui est le
|
|
comportement par défaut, sont autorisées à envoyer du
|
|
courrier à cette machine dès que la destination finale
|
|
du courrier est la machine locale. Les machines listées avec
|
|
<option>REJECT</option> se verront rejeter pour toute connexion
|
|
au serveur. Les machines présentes avec l'option
|
|
<option>RELAY</option> sont autorisées à envoyer du
|
|
courrier à n'importe quelle destination par
|
|
l'intermédiaire de ce serveur de courrier.</para>
|
|
|
|
<example>
|
|
<title>Configuration de la base de données d'accès
|
|
de <application>sendmail</application></title>
|
|
|
|
<programlisting>cyberspammer.com 550 We don't accept mail from spammers
|
|
FREE.STEALTH.MAILER@ 550 We don't accept mail from spammers
|
|
another.source.of.spam REJECT
|
|
okay.cyberspammer.com OK
|
|
128.32 RELAY</programlisting>
|
|
</example>
|
|
|
|
<para>Dans cet exemple nous avons cinq entrées.
|
|
Les émetteurs de courrier qui correspondent à la partie
|
|
gauche de la table sont affectés par l'action donnée
|
|
sur la partie droite de la table. Les deux premiers
|
|
exemples donnent un code d'erreur à la routine de gestion
|
|
d'erreur de <application>sendmail</application>.
|
|
Le message est affiché sur la machine distante quand un courrier
|
|
électronique correspond à la partie gauche de la table.
|
|
L'entrée suivante rejette le courrier en provenance
|
|
d'une machine précise de l'Internet,
|
|
<hostid>another.source.of.spam</hostid>. L'entrée suivante
|
|
accepte les connexions à partir de la machine
|
|
<hostid role="fqdn">okay.cyberspammer.com</hostid>, qui est plus précis
|
|
que le <hostid role="domainname">cyberspammer.com</hostid> de la ligne
|
|
précédente. Les correspondances plus spécifiques
|
|
priment sur les moins précises. La dernière
|
|
entrée autorise le relais du courrier électronique en
|
|
provenance de machines avec une adresse IP qui commence par
|
|
<hostid>128.32</hostid>. Ces machines seront en mesure
|
|
d'envoyer du courrier destiné à d'autres
|
|
serveurs de courrier par l'intermédiaire de ce serveur de
|
|
courrier.</para>
|
|
|
|
<para>Quand ce fichier est mis à jour, vous devez exécuter
|
|
la commande <command>make</command> dans
|
|
<filename>/etc/mail/</filename> pour mettre à jour la base
|
|
de données.</para>
|
|
|
|
</sect2>
|
|
<sect2>
|
|
<title><filename>/etc/mail/aliases</filename></title>
|
|
|
|
<para>La base de données d'alias contient une liste
|
|
de boîtes aux lettres virtuelles dont le contenu sera transmis
|
|
à d'autres utilisateurs, fichiers, programmes ou d'autres
|
|
alias. Voici quelques exemples qui peuvent être
|
|
utilisés dans <filename>/etc/mail/aliases</filename>:</para>
|
|
|
|
<example>
|
|
<title>Exemple de base de données d'alias</title>
|
|
<programlisting>root: localuser
|
|
ftp-bugs: joe,eric,paul
|
|
bit.bucket: /dev/null
|
|
procmail: "|/usr/local/bin/procmail"</programlisting>
|
|
</example>
|
|
|
|
<para>Le format du fichier est simple; le nom de la boîte
|
|
aux lettres à gauche et la cible sur la droite.
|
|
Le premier exemple transfère la boîte aux lettres
|
|
<username>root</username> vers la boîte aux lettres
|
|
<username>localuser</username>, qui est ensuite recherchée
|
|
dans la base de données d'alias. Si aucune correspondance n'est
|
|
trouvée alors le message est délivré à
|
|
l'utilisateur locale
|
|
<username>localuser</username>. L'exemple suivant montre une
|
|
liste de correspondance. Un courrier envoyé à la
|
|
boîte aux lettres <username>ftp-bugs</username> sera
|
|
délivré aux trois boites locales <username>joe</username>,
|
|
<username>eric</username>, et <username>paul</username>. Notez
|
|
qu'une boîte aux lettres distante comme <literal>user@exemple.com</literal>/procmail
|
|
pourra
|
|
être spécifiée. L'exemple suivant montre comment
|
|
transférer le courrier dans un fichier, dans notre cas
|
|
<filename>/dev/null</filename>. Le dernier exemple montre
|
|
l'envoi du courrier à un programme, dans le cas présent
|
|
le message est écrit sur l'entrée standard de
|
|
<filename>/usr/local/bin/procmail</filename> par
|
|
l'intermédiaire d'un tube &unix;.</para>
|
|
|
|
<para>Quand ce fichier est mis à jour, vous devez
|
|
exécuter la commande <command>make</command> dans
|
|
<filename>/etc/mail/</filename> pour mettre à jour
|
|
la base de données.</para>
|
|
</sect2>
|
|
<sect2>
|
|
<title><filename>/etc/mail/local-host-names</filename></title>
|
|
|
|
<para>C'est la liste des machines pour lesquelles &man.sendmail.8;
|
|
accepte du courrier comme s'il était destiné
|
|
à la machine locale.
|
|
Placez-y tous les domaines ou machines pour lesquels
|
|
<application>sendmail</application> doit recevoir du courrier.
|
|
Par exemple, si le serveur de courrier devait accepter du
|
|
courrier pour le domaine <hostid
|
|
role="domainname">exemple.com</hostid> et la machine
|
|
<hostid role="domainname">mail.exemple.com</hostid>, sont
|
|
<filename>local-host-names</filename> ressemblera à quelque
|
|
chose comme ceci:</para>
|
|
|
|
<programlisting>exemple.com
|
|
mail.exemple.com</programlisting>
|
|
|
|
<para>Quand ce fichier est mis à jour, &man.sendmail.8; doit
|
|
être relancé pour lire les changements.</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title><filename>/etc/mail/sendmail.cf</filename></title>
|
|
|
|
<para>Fichier principal de configuration de
|
|
<application>sendmail</application>,
|
|
<filename>sendmail.cf</filename> contrôle le comportement
|
|
général de <application>sendmail</application>,
|
|
y compris tout depuis la réécriture des adresses
|
|
de courrier jusqu'à l'envoi de message de rejet aux
|
|
serveurs de courrier distants. Naturellement, avec tant de
|
|
différentes activités, ce fichier de configuration
|
|
est relativement complexe et son étude détaillée
|
|
n'est pas le but de cette section. Heureusement, ce fichier a
|
|
rarement besoin d'être modifié pour les serveurs de courrier
|
|
standards.</para>
|
|
|
|
<para>Le fichier de configuration principal de
|
|
<application>sendmail</application> peut être
|
|
créé à partir de macros &man.m4.1; qui
|
|
définissent les fonctions
|
|
et le comportement de <application>sendmail</application>.
|
|
Veuillez consulter
|
|
<filename>/usr/src/contrib/sendmail/cf/README</filename> pour
|
|
plus de détails.</para>
|
|
|
|
<para>Quand des modifications à ce fichier sont apportées,
|
|
<application>sendmail</application> doit être
|
|
redémarré pour que les changements prennent effet.</para>
|
|
|
|
</sect2>
|
|
<sect2>
|
|
<title><filename>/etc/mail/virtusertable</filename></title>
|
|
|
|
<para>La table <filename>virtusertable</filename> fait
|
|
correspondre les adresses de courrier électronique pour des
|
|
domaines virtuels et les boîtes aux lettres avec des
|
|
boîtes aux lettres réelles. Ces boîtes aux lettres
|
|
peuvent être locales, distantes, des alias définis dans
|
|
<filename>/etc/mail/aliases</filename> ou des fichiers.</para>
|
|
|
|
<example>
|
|
<title>Exemple de correspondance de domaine virtuel de
|
|
courrier</title>
|
|
|
|
<programlisting>root@exemple.com root
|
|
postmaster@exemple.com postmaster@noc.exemple.net
|
|
@exemple.com joe</programlisting>
|
|
</example>
|
|
|
|
<para>Dans l'exemple ci-dessus, nous avons une correspondance pour
|
|
un domaine <hostid role="domainname">exemple.com</hostid>. Ce fichier est traité
|
|
jusqu'à trouver la première correspondance.
|
|
Le premier élément fait correspondre <literal>root@exemple.com</literal>
|
|
à la boîte aux lettres root locale. L'entrée
|
|
suivante fait correspondre <literal>postmaster@exemple.com</literal> à la
|
|
boîte aux lettres postmaster sur la machine <hostid role="fqdn">noc.exemple.net</hostid>.
|
|
Et enfin, si un courrier en provenance de <hostid role="domainname">exemple.com</hostid> n'a pas
|
|
trouvé de correspondance, il correspondra à la
|
|
dernière ligne, qui régira tous les autres messages
|
|
adressés à
|
|
quelqu'un du domaine <hostid role="domainname">exemple.com</hostid>.
|
|
La correspondance sera la boîte aux lettres locale
|
|
<username>joe</username>.</para>
|
|
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="mail-changingmta">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Andrew</firstname>
|
|
<surname>Boothman</surname>
|
|
<contrib>Ecrit par </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Gregory</firstname>
|
|
<surname>Neil Shapiro</surname>
|
|
<contrib>Information provenant de courriers électroniques
|
|
écrit par </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
<title>Changer votre agent de transfert de courrier</title>
|
|
<indexterm>
|
|
<primary>courrier électronique</primary>
|
|
<secondary>changer d'agent de transfert de courrier</secondary>
|
|
</indexterm>
|
|
|
|
<para>Comme mentionné précédemment,
|
|
FreeBSD est fournit avec <application>sendmail</application>
|
|
comme agent de transfert du courrier (MTA - Mail Transfert
|
|
Agent). Il est donc par défaut
|
|
en charge de votre courrier sortant et entrant.</para>
|
|
|
|
<para>Cependant, pour une variété de raison,
|
|
certains administrateurs système désirent
|
|
changer le MTA de leur système. Ces raisons vont de la
|
|
simple envie d'essayer un autre agent au besoin d'une fonction
|
|
ou ensemble spécifique qui dépend d'un autre gestionnaire de
|
|
courrier. Heureusement, quelle qu'en soit la raison, FreeBSD
|
|
rend le changement aisé.</para>
|
|
|
|
<sect2>
|
|
<title>Installer un nouveau MTA</title>
|
|
|
|
<para>Vous avez un vaste choix d'agent disponible. Un bon
|
|
point de départ est le <link linkend="ports">catalogue des
|
|
logiciels portés de FreeBSD</link> où vous pourrez
|
|
en trouver un grand nombre.
|
|
Bien évidemment vous êtes libres
|
|
d'utiliser n'importe quel agent de n'importe quelle origine,
|
|
dès que vous pouvez le faire fonctionner sous FreeBSD.</para>
|
|
|
|
<para>Commencez par installer votre nouvel agent. Une fois ce
|
|
dernier installé, il vous donne une chance de décider s'il
|
|
remplit vraiment vos besoins, et vous donne l'opportunité
|
|
de configurer votre nouveau logiciel avant de remplacer
|
|
<application>sendmail</application>. Quand vous faites cela,
|
|
vous devez être sûr que l'installation du nouveau
|
|
logiciel ne tentera pas de remplacer des binaires du système
|
|
comme <filename>/usr/bin/sendmail</filename>. Sinon, votre
|
|
nouveau logiciel sera mis en service avant d'avoir pu
|
|
le configurer.</para>
|
|
|
|
<para>Veuillez vous référer à la documentation de l'agent choisi
|
|
pour de l'information sur comment configurer le logiciel que
|
|
vous avez choisi.</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Désactiver <application>sendmail</application></title>
|
|
|
|
<para>La procédure utilisée pour lancer
|
|
<application>sendmail</application> a changé de façon
|
|
significative entre la 4.5-RELEASE et la 4.6-RELEASE.
|
|
Par conséquent, la procédure utilisée pour
|
|
la désactiver est légèrement
|
|
différente.</para>
|
|
|
|
<sect3>
|
|
<title>FreeBSD 4.5-STABLE d'avant le 2002/4/4 et plus ancienne
|
|
(y compris 4.5-RELEASE et précédentes)</title>
|
|
|
|
<para>Ajoutez:</para>
|
|
|
|
<programlisting>sendmail_enable="NO"</programlisting>
|
|
|
|
<para>dans <filename>/etc/rc.conf</filename>. Cela
|
|
désactivera le service de courrier entrant de
|
|
<application>sendmail</application> mais si
|
|
<filename>/etc/mail/mailer.conf</filename> (voir plus bas)
|
|
n'est pas modifié, <application>sendmail</application>
|
|
sera toujours utilisé pour envoyer du courrier
|
|
électronique.</para>
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>FreeBSD 4.5-STABLE d'après le 2002/4/4
|
|
(y compris 4.6-RELEASE et suivantes)</title>
|
|
|
|
<para>Afin de complètement désactiver
|
|
<application>sendmail</application> vous devez utiliser</para>
|
|
|
|
<programlisting>sendmail_enable="NONE"</programlisting>
|
|
|
|
<para>dans <filename>/etc/rc.conf.</filename></para>
|
|
|
|
<warning>
|
|
<para>Si vous désactivez le service d'envoi de courrier de
|
|
<application>sendmail</application> de cette manière, il
|
|
est important que vous le remplaciez par un système de
|
|
courrier alternatif fonctionnant parfaitement. Si vous
|
|
choisissez de ne pas le faire, des fonctions du système
|
|
comme &man.periodic.8; ne seront pas en mesure de délivrer
|
|
leur résultat par courrier électronique comme elles
|
|
s'attendent normalement à le faire. De nombreux
|
|
composants de votre système s'attendent à
|
|
avoir un système
|
|
compatible à <application>sendmail</application> en
|
|
fonctionnement. Si des applications continuent à utiliser
|
|
les binaires de <application>sendmail</application> pour
|
|
essayer d'envoyer du courrier électronique après la
|
|
désactivation, le courrier pourra aller dans une file
|
|
d'attente inactive, et pourra n'être jamais
|
|
livré.</para>
|
|
</warning>
|
|
|
|
<para>Si vous voulez uniquement désactiver le service de
|
|
réception de courrier de <application>sendmail</application>
|
|
vous devriez fixer</para>
|
|
|
|
<programlisting>sendmail_enable="NO"</programlisting>
|
|
|
|
<para>dans <filename>/etc/rc.conf</filename>. Plus
|
|
d'information sur les options de démarrage de
|
|
<application>sendmail</application> est disponible à partir
|
|
de la page de manuel de &man.rc.sendmail.8;.</para>
|
|
</sect3>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Lancement de votre nouvel agent au démarrage</title>
|
|
|
|
<para>Vous pourrez avoir le choix entre deux méthodes pour
|
|
lancer votre nouvel agent au démarrage, encore une fois en
|
|
fonction de la version de FreeBSD dont vous disposez.</para>
|
|
|
|
<sect3>
|
|
<title>FreeBSD 4.5-STABLE d'avant le 2002/4/11
|
|
(y compris 4.5-RELEASE et précédentes)</title>
|
|
|
|
<para>Ajouter une procédure dans
|
|
<filename>/usr/local/etc/rc.d/</filename> qui
|
|
se termine en <filename>.sh</filename> et qui est
|
|
exécutable par <username>root</username>. La
|
|
procédure devrait accepter les paramètres
|
|
<literal>start</literal> et <literal>stop</literal>.
|
|
Au moment du démarrage les procédures
|
|
système exécuteront la commande</para>
|
|
|
|
<programlisting>/usr/local/etc/rc.d/supermailer.sh start</programlisting>
|
|
|
|
<para>que vous pouvez également utiliser pour démarrer le
|
|
serveur. Au moment de l'arrêt du système, les
|
|
procédures système utiliseront l'option
|
|
<literal>stop</literal> en exécutant la commande</para>
|
|
|
|
<programlisting>/usr/local/etc/rc.d/supermailer.sh stop</programlisting>
|
|
|
|
<para>que vous pouvez également utiliser manuellement pour
|
|
arrêter le serveur quand le système est en
|
|
fonctionnement.</para>
|
|
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>FreeBSD 4.5-STABLE d'après le 2002/4/11
|
|
(y compris 4.6-RELEASE et suivantes)</title>
|
|
|
|
<para>Avec les versions suivantes de FreeBSD, vous pouvez
|
|
utiliser la méthode ci-dessus ou fixer</para>
|
|
|
|
<programlisting>mta_start_script="nomfichier"</programlisting>
|
|
|
|
<para>dans <filename>/etc/rc.conf</filename>, où
|
|
<replaceable>nomfichier</replaceable> est le nom
|
|
d'une procédure que vous voulez exécuter
|
|
au démarrage pour lancer votre agent.</para>
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Remplacer <application>sendmail</application> comme
|
|
gestionnaire du courrier du système par
|
|
défaut</title>
|
|
|
|
<para>Le programme <application>sendmail</application> est tellement
|
|
omniprésent comme logiciel standard sur les
|
|
systèmes &unix; que certains programmes supposent qu'il est tout
|
|
simplement déjà installé et configuré.
|
|
Pour cette raison, de nombreux agents alternatifs fournissent
|
|
leur propre implémentation compatible avec l'interface en
|
|
ligne de commande de <application>sendmail</application>;
|
|
cela facilite leur utilisation comme remplaçant pour
|
|
<application>sendmail</application>.</para>
|
|
|
|
<para>Donc, si vous utilisez un programme alternatif, vous
|
|
devrez vérifier que le logiciel essayant d'exécuter
|
|
les binaires standards de <application>sendmail</application>
|
|
comme <filename>/usr/bin/sendmail</filename> exécute
|
|
réellement l'agent que vous avez choisi à la place.
|
|
Heureusement, FreeBSD fournit un système appelé
|
|
&man.mailwrapper.8; qui remplit ce travail pour vous.</para>
|
|
|
|
<para>Quand <application>sendmail</application> fonctionne tel
|
|
qu'il a été installé, vous
|
|
trouverez quelque chose comme ce qui suit dans
|
|
<filename>/etc/mail/mailer.conf</filename>:</para>
|
|
|
|
<programlisting>sendmail /usr/libexec/sendmail/sendmail
|
|
send-mail /usr/libexec/sendmail/sendmail
|
|
mailq /usr/libexec/sendmail/sendmail
|
|
newaliases /usr/libexec/sendmail/sendmail
|
|
hoststat /usr/libexec/sendmail/sendmail
|
|
purgestat /usr/libexec/sendmail/sendmail</programlisting>
|
|
|
|
<para>Cela signifie que lorsque l'une des commandes courantes
|
|
(comme <filename>sendmail</filename> lui-même) est
|
|
lancée, le système invoque en fait une copie de
|
|
“mailwrapper” appelée
|
|
<filename>sendmail</filename>, qui lit
|
|
<filename>mailer.conf</filename> et
|
|
exécute <filename>/usr/libexec/sendmail/sendmail</filename>
|
|
à la place. Ce système rend aisé le changement
|
|
des binaires qui sont réellement exécutés
|
|
quand les fonctions de <filename>sendmail</filename> par
|
|
défaut sont invoquées.</para>
|
|
|
|
<para>Donc si vous avez voulu que
|
|
<filename>/usr/local/supermailer/bin/sendmail-compat</filename>
|
|
soit lancé en place de <application>sendmail</application>,
|
|
vous pourrez modifier <filename>/etc/mail/mailer.conf</filename>
|
|
de cette façon:</para>
|
|
|
|
<programlisting>sendmail /usr/local/supermailer/bin/sendmail-compat
|
|
send-mail /usr/local/supermailer/bin/sendmail-compat
|
|
mailq /usr/local/supermailer/bin/mailq-compat
|
|
newaliases /usr/local/supermailer/bin/newaliases-compat
|
|
hoststat /usr/local/supermailer/bin/hoststat-compat
|
|
purgestat /usr/local/supermailer/bin/purgestat-compat</programlisting>
|
|
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title>Pour en terminer</title>
|
|
|
|
<para>Une fois que vous avez tout configuré de la façon
|
|
dont vous le désirez, vous devriez soit tuer les processus de
|
|
<application>sendmail</application> dont vous n'avez plus
|
|
besoin et lancer les processus appartenant à votre
|
|
nouveau logiciel, ou tout simplement redémarrer. Le
|
|
redémarrage vous donnera l'opportunité de vous assurer
|
|
que vous avez correctement configuré votre système
|
|
pour le lancement automatique de votre nouvel agent au
|
|
démarrage.</para>
|
|
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="mail-trouble">
|
|
<title>Dépannage</title>
|
|
<indexterm>
|
|
<primary>courrier électronique</primary>
|
|
<secondary>dépannage</secondary>
|
|
</indexterm>
|
|
|
|
<qandaset>
|
|
<qandaentry>
|
|
<question>
|
|
<para>Pourquoi faut-il que j'utilise le FQDN (“Fully
|
|
Qualified Domain Name” - nom complet de machine) pour
|
|
les machines de mon site?</para>
|
|
</question>
|
|
|
|
<answer>
|
|
<para>Vous vous rendrez probablement compte que la machine est
|
|
en fait dans un domaine différent; par exemple, si vous
|
|
êtes dans le domaine <hostid role="fqdn">foo.bar.edu</hostid>
|
|
et que vous voulez atteindre la machine <hostid>mumble</hostid>
|
|
du domaine <hostid role="domainname">bar.edu</hostid>,
|
|
vous devrez utiliser son nom de machine complet,
|
|
<hostid role="fqdn">mumble.bar.edu</hostid>, au lieu de
|
|
juste <hostid>mumble</hostid>.</para>
|
|
|
|
<indexterm><primary>BIND</primary></indexterm>
|
|
<para>C'était traditionnellement autorisé par les
|
|
résolveurs <application>BIND</application> BSD.
|
|
Néanmoins, la version de <application>BIND</application>
|
|
qui est maintenant livrée avec FreeBSD ne sait pas
|
|
compléter les noms de machines abrégés autrement
|
|
qu'avec le nom de votre domaine. Donc le nom non
|
|
qualifié <hostid>mumble</hostid> doit correspondre
|
|
à <hostid role="fqdn">mumble.foo.bar.edu</hostid>,
|
|
sans quoi il sera recherché dans le domaine racine.</para>
|
|
|
|
<para>Cela diffère du comportement précédent,
|
|
où la recherche se prolongeait à
|
|
<hostid role="domainname">mumble.bar.edu</hostid>, puis
|
|
<hostid role="domainname">mumble.edu</hostid>.
|
|
Consultez la RFC 1535 pour savoir pourquoi cela était
|
|
considéré comme une mauvaise pratique, voire
|
|
même un trou de sécurité.</para>
|
|
|
|
<para>Comme solution, vous pouvez mettre la ligne:
|
|
|
|
<programlisting>search foo.bar.edu bar.edu</programlisting>
|
|
|
|
à la place de:
|
|
|
|
<programlisting>domain foo.bar.edu</programlisting>
|
|
|
|
dans votre fichier <filename>/etc/resolv.conf</filename>.
|
|
Cependant, assurez-vous que la recherche ne franchit pas la
|
|
“limite entre l'administration locale et
|
|
publique”, selon l'expression de la RFC 1535.</para>
|
|
</answer>
|
|
</qandaentry>
|
|
|
|
<qandaentry>
|
|
<question>
|
|
<indexterm>
|
|
<primary>MX record</primary>
|
|
</indexterm>
|
|
|
|
<para><application>sendmail</application> affiche le message
|
|
<errorname>mail loops back to myself</errorname></para>
|
|
</question>
|
|
|
|
<answer>
|
|
<para>La réponse donnée dans la FAQ de
|
|
<application>sendmail</application> est la suivante:</para>
|
|
|
|
<programlisting>J'obtiens les messages d'erreur suivant:
|
|
|
|
553 MX list for domain.net points back to relay.domain.net
|
|
554 <user@domain.net>... Local configuration error
|
|
|
|
Comment puis-je résoudre ce problème?
|
|
|
|
Vous avez demandé que le courrier pour un domaine (e.g., domain.net)
|
|
soit transmis à une machine donnée (dans ce cas précis, relay.domain.net)
|
|
en utilisant un enregistrement MX, mais la machine relais ne se
|
|
connaît pas elle-même comme domain.net. Ajoutez domain.net à
|
|
/etc/mail/local-host-names [connu sous le nom /etc/sendmail.cw dans les versionsantérieure à 8.10] (si vous utilisez FEATURE(use_cw_file))
|
|
ou ajoutez “Cw domain.net” à
|
|
/etc/mail/sendmail.cf.</programlisting>
|
|
|
|
<para>La FAQ de <application>sendmail</application> peut être trouvée
|
|
à l'adresse <ulink url="http://www.sendmail.org/faq/"></ulink> et
|
|
sa lecture est recommandée si vous voulez
|
|
“bidouiller” votre configuration du courrier
|
|
électronique.</para>
|
|
</answer>
|
|
</qandaentry>
|
|
|
|
<qandaentry>
|
|
<question>
|
|
<indexterm><primary>PPP</primary></indexterm>
|
|
|
|
<para>Comment puis-je faire tourner un serveur de courrier
|
|
électronique avec une connexion
|
|
téléphonique PPP</para>
|
|
</question>
|
|
|
|
<answer>
|
|
<para>Vous voulez connecter une machine FreeBSD du réseau
|
|
local à l'Internet. Cette machine servira de passerelle de
|
|
courrier électronique pour le réseau local.
|
|
La connexion PPP n'est pas dédiée.</para>
|
|
|
|
<indexterm><primary>UUCP</primary></indexterm>
|
|
<indexterm>
|
|
<primary>MX record</primary>
|
|
</indexterm>
|
|
|
|
<para>Il y a au moins deux façons de faire. L'une d'elle
|
|
est d'utiliser UUCP.</para>
|
|
|
|
<para>L'autre méthode étant d'obtenir un serveur Internet
|
|
constamment connecté pour qu'il vous fournisse les services
|
|
MX pour votre domaine. Par exemple, si le domaine de votre
|
|
compagnie est <hostid role="domainname">exemple.com</hostid> et votre
|
|
fournisseur d'accès a configuré
|
|
<hostid role="domainname">exemple.net</hostid> pour fournir un MX secondaire
|
|
pour votre domaine:</para>
|
|
|
|
<programlisting>exemple.com. MX 10 exemple.com.
|
|
MX 20 exemple.net.</programlisting>
|
|
|
|
<para>Une seule machine devrait être
|
|
spécifiée comme destinataire final (ajoutez
|
|
<literal>Cw exemple.com</literal> au fichier
|
|
<filename>/etc/mail/sendmail.cf</filename> de
|
|
<hostid role="domainname">exemple.com</hostid>).</para>
|
|
|
|
<para>Quand le <command>sendmail</command> expéditeur tente
|
|
de vous délivrer du courrier, il essaiera de se connecter
|
|
à votre serveur (<hostid role="domainname">exemple.com</hostid>)
|
|
via votre liaison par modem. Ce qui échouera très
|
|
probablement par dépassement de délai puisque
|
|
vous n'êtes pas en ligne. Le programme
|
|
<application>sendmail</application> enverra automatiquement
|
|
le courrier au site MX secondaire, i.e. votre fournisseur
|
|
d'accès (<hostid role="domainname">exemple.net</hostid>).
|
|
Le site MX secondaire essayera périodiquement de se
|
|
connecter à votre machine pour expédier le
|
|
courrier au site MX primaire (<hostid
|
|
role="domainname">exemple.com</hostid>).</para>
|
|
|
|
<para>Vous pourrez vouloir utiliser quelque chose comme ceci
|
|
comme procédure de connexion:</para>
|
|
|
|
<programlisting>#!/bin/sh
|
|
# Mettez-moi dans /usr/local/bin/pppmyisp
|
|
( sleep 60 ; /usr/sbin/sendmail -q ) &
|
|
/usr/sbin/ppp -direct pppmyisp</programlisting>
|
|
|
|
<para>Si vous avez l'intention de définir une
|
|
procédure de connexion particulière pour un
|
|
utilisateur, vous pourrez utiliser
|
|
<command>sendmail -qRexemple.com</command> à la place
|
|
de la procédure ci-dessus. Cela forcera le traitement
|
|
immédiat de tout le courrier dans votre file d'attente
|
|
pour <hostid role="domainname">exemple.com</hostid>.</para>
|
|
|
|
<para>On peut encore affiner la configuration comme
|
|
suit:</para>
|
|
|
|
<para>Message emprunté à la &a.isp;.</para>
|
|
|
|
<programlisting>> Nous fournissons un MX secondaire à un
|
|
client. Le client se connecte
|
|
> à notre service automatiquement plusieurs fois par jour pour acheminer
|
|
> le courrier sur son MX primaire (nous n'appelons pas son site lorsque
|
|
> du courrier pour ses domaines arrive). Notre sendmail envoie le courrier de la
|
|
> file d'attente toutes les demi-heures. Pour l'instant, il doit rester
|
|
> une demi-heure en ligne pour être sûr que tout le courrier soit
|
|
> arrivé au MX primaire.
|
|
>
|
|
> Y-a-t-il une commande qui permette de dire à sendmail d'envoyer
|
|
> sur-le-champ tout le courrier? L'utilisateur n'a évidemment pas
|
|
> les droits super-utilisateur sur la machine.
|
|
|
|
Dans la section “privacy flags” (indicateurs de
|
|
confidentialité) de sendmail.cf, il y a la définition Opgoaway,restrictqrun
|
|
|
|
Supprimer restrictqrun permet à d'autres utilisateurs que le
|
|
super-utilisateur de lancer le traitement de la file d'attente. Vous
|
|
pouvez aussi redéfinir les MXs. Nous sommes le premier MX pour les
|
|
utilisateurs de ce type, et nous avons défini:
|
|
|
|
# Si nous sommes le meilleur MX pour une machine, essayer directement
|
|
# au lieu d'émettre des messages d'erreur de configuration locale.
|
|
OwTrue
|
|
|
|
De cette façon, un site distant vous enverra directement le courrier,
|
|
sans essayer de se connecter chez votre client. Vous le lui
|
|
transmettez ensuite. Cela ne marche qu'avec les “machines”,
|
|
votre client doit nommer son serveur de courrier
|
|
“client.com” aussi bien que
|
|
“machine.client.com” dans le DNS. Mettez seulement un
|
|
enregistrement A pour “client.com”.</programlisting>
|
|
</answer>
|
|
</qandaentry>
|
|
|
|
<qandaentry>
|
|
<question>
|
|
<para>Pourquoi j'obtiens le message d'erreur
|
|
<errorname>Relaying Denied</errorname> à chaque
|
|
fois que j'envoie du courrier à partir d'autres
|
|
machines?</para>
|
|
</question>
|
|
|
|
<answer>
|
|
<para>Dans l'installation par défaut de FreeBSD,
|
|
<application>sendmail</application> est configuré pour
|
|
envoyer du courrier uniquement à partir de la machine
|
|
sur laquelle il tourne. Par exemple, si un serveur <acronym>POP</acronym>
|
|
est disponible, alors les utilisateurs pourront retirer leur
|
|
courrier depuis l'école, le travail, ou toute autre
|
|
machine distante mais ils ne seront toujours pas en mesure
|
|
d'envoyer du courrier électronique à partir de machines
|
|
extérieures. Généralement, quelques
|
|
instants après une tentative, un courrier
|
|
électronique sera envoyé par le
|
|
<application>MAILER-DAEMON</application> avec un message
|
|
<errorname>5.7 Relaying Denied</errorname>.</para>
|
|
|
|
<para>Il y a plusieurs façons d'y remédier.
|
|
La solution la plus directe est de mettre l'adresse
|
|
de votre fournisseur d'accès dans un fichier de domaine
|
|
à relayer <filename>/etc/mail/relay-domains</filename>.
|
|
Une façon rapide de le faire serait:</para>
|
|
|
|
<screen>&prompt.root; <userinput>echo "votre.fai.exemple.com" > /etc/mail/relay-domains</userinput></screen>
|
|
|
|
<para>Après avoir créé ou édité
|
|
ce fichier vous devez
|
|
redémarrer <application>sendmail</application>.
|
|
Cela fonctionne parfaitement si vous êtes
|
|
l'administrateur d'un serveur et vous ne désirez pas
|
|
envoyer de courrier localement, ou que vous désiriez
|
|
utiliser un système ou un client “clic-bouton”
|
|
sur une autre machine ou un autre FAI. C'est également
|
|
très utile si vous avez uniquement qu'un ou deux
|
|
comptes de courrier électronique configurés.
|
|
S'il y a un grand nombre d'adresses à ajouter, vous
|
|
pouvez tout simplement ouvrir ce fichier dans votre
|
|
éditeur de texte favori et ensuite ajouter les domaines,
|
|
un par ligne:</para>
|
|
|
|
<programlisting>votre.fai.exemple.com
|
|
autre.fai.exemple.net
|
|
utilisateurs-fai.exemple.org
|
|
www.exemple.org</programlisting>
|
|
|
|
<para>Désormais tout courrier envoyé vers votre
|
|
système, par n'importe quelle machine de cette liste
|
|
(en supposant que l'utilisateur possède un compte sur
|
|
votre système), sera accepté. C'est un bon
|
|
moyen d'autoriser aux utilisateurs d'envoyer du courrier
|
|
électronique à distance depuis votre système
|
|
sans autoriser l'utilisation de votre système pour l'envoi de
|
|
courrier électronique non sollicité (SPAM).</para>
|
|
|
|
</answer>
|
|
</qandaentry>
|
|
</qandaset>
|
|
</sect1>
|
|
|
|
<sect1 id="mail-advanced">
|
|
<title>Sujets avancés</title>
|
|
|
|
<para>LA fonction suivante couvre des sujets plus avancés
|
|
comme la configuration du courrier électronique pour
|
|
l'intégralité de votre domaine.</para>
|
|
|
|
<sect2 id="mail-config">
|
|
<title>Basic Configuration</title>
|
|
<indexterm>
|
|
<primary>courrier électronique</primary>
|
|
<secondary>configuration</secondary>
|
|
</indexterm>
|
|
|
|
<para>Sans aucune configuration, vous devrez être en
|
|
mesure d'envoyer du courrier électronique à des machines
|
|
extérieures à partir du moment où vous avez
|
|
configuré <filename>/etc/resolv.conf</filename> ou que
|
|
vous avez votre propre serveur de noms. Si vous désirez
|
|
que le courrier pour votre machine soit délivré au
|
|
serveur de courrier (e.g., <application>sendmail</application>) sur
|
|
votre propre machine FreeBSD, il y a deux méthodes:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Faites tourner votre propre serveur de noms et
|
|
possédez votre propre domaine. Par exemple <hostid
|
|
role="domainname">FreeBSD.org</hostid></para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Faire délivrer le courrier directement sur votre
|
|
machine. Cela est possible en délivrant directement le
|
|
courrier à la machine sur lequel pointe le DNS pour le
|
|
courrier qui vous est destiné. Par exemple <hostid
|
|
role="fqdn">exemple.FreeBSD.org</hostid>.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<indexterm><primary>SMTP</primary></indexterm>
|
|
<para>Indépendamment de la méthode que vous choisissez, afin
|
|
d'avoir le courrier délivré directement
|
|
à votre machine, elle doit avoir une adresse IP statique
|
|
permanente (et non pas une adresse dynamique, comme avec la
|
|
plupart des connexions PPP par modem). Si vous êtes
|
|
derrière un coupe-feu, il doit autoriser le trafic SMTP en
|
|
votre direction. Si vous voulez recevoir directement le
|
|
courrier sur votre machine, vous devez être sûrs
|
|
de l'une de ces deux choses:</para>
|
|
|
|
<itemizedlist>
|
|
<indexterm><primary>enregistrement MX</primary></indexterm>
|
|
<listitem>
|
|
<para>Assurez-vous que l'enregistrement MX (le nombre le
|
|
plus bas) de votre DNS pointe sur l'adresse IP de votre
|
|
machine.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Assurez-vous qu'il n'y a pas d'entrée MX pour votre
|
|
machine dans votre DNS.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>Une des deux conditions précédentes vous
|
|
permettra de recevoir directement le courrier pour votre
|
|
machine.</para>
|
|
|
|
<para>Essayez:</para>
|
|
|
|
<screen>&prompt.root; <userinput>hostname</userinput>
|
|
exemple.FreeBSD.org
|
|
&prompt.root; <userinput>host exemple.FreeBSD.org</userinput>
|
|
exemple.FreeBSD.org has address 204.216.27.XX</screen>
|
|
|
|
<para>Si c'est la réponse que vous obtenez, le courrier
|
|
adressé à
|
|
<email>votreindentifiant@exemple.FreeBSD.org</email>
|
|
arrivera sans problème (en supposant que
|
|
<application>sendmail</application> fonctionne correctement
|
|
sur <hostid role="fqdn">exemple.FreeBSD.org</hostid>).</para>
|
|
|
|
<para>Si au lieu de cela vous obtenez quelque chose de similaire
|
|
à ceci:</para>
|
|
|
|
<screen>&prompt.root; <userinput>host exemple.FreeBSD.org</userinput>
|
|
exemple.FreeBSD.org has address 204.216.27.XX
|
|
exemple.FreeBSD.org mail is handled (pri=10) by hub.FreeBSD.org</screen>
|
|
|
|
<para>Tout le courrier adressé à votre machine
|
|
(<hostid role="fqdn">exemple.FreeBSD.org</hostid>)
|
|
arrivera sur <hostid>hub</hostid> adressé au même
|
|
utilisateur au lieu d'être directement
|
|
envoyé à votre machine.</para>
|
|
|
|
<para>L'information précédente est
|
|
gérée par votre serveur DNS. L'enregistrement du
|
|
DNS qui contient l'information de routage de courrier est
|
|
l'entrée MX (<emphasis>M</emphasis>ail
|
|
e<emphasis>X</emphasis>change). S'il n'y pas d'enregistrement MX,
|
|
le courrier sera directement envoyé à la machine
|
|
en utilisant son adresse IP.</para>
|
|
|
|
<para>Voici ce que fut à un moment donné
|
|
l'entrée MX pour <hostid
|
|
role="fqdn">freefall.FreeBSD.org</hostid>:</para>
|
|
|
|
<programlisting>freefall MX 30 mail.crl.net
|
|
freefall MX 40 agora.rdrop.com
|
|
freefall MX 10 freefall.FreeBSD.org
|
|
freefall MX 20 who.cdrom.com</programlisting>
|
|
|
|
<para>Comme vous pouvez le voir, <hostid>freefall</hostid>
|
|
avait plusieurs entrées MX. L'entrée MX dont le
|
|
numéro est le plus bas est la machine qui reçoit
|
|
directement le courrier si elle est disponible; si elle n'est
|
|
pas accessible pour diverses raisons, les autres (parfois
|
|
appelées “MX de secours”) acceptent
|
|
temporairement les messages, et les transmettent à une
|
|
machine de numéro plus faible quand elle devient
|
|
disponible, et par la suite à la machine de numéro le
|
|
plus bas.</para>
|
|
|
|
<para>Les sites MX alternatifs devraient avoir une connexion
|
|
Internet séparée de la votre afin d'être
|
|
les plus utiles. Votre fournisseur d'accès ou tout autre
|
|
site amical ne devrait pas avoir de problème pour vous
|
|
fournir ce service.</para>
|
|
</sect2>
|
|
|
|
<sect2 id="mail-domain">
|
|
<title>Courrier pour votre domaine</title>
|
|
|
|
<para>Pour configurer un serveur de courrier vous devez faire
|
|
en sorte que tout le courrier à destination des diverses
|
|
stations de travail lui soit envoyé. Concrètement,
|
|
vous voulez “revendiquer” tout courrier pour
|
|
n'importe quelle machine de votre domaine (dans ce cas
|
|
<hostid role="fqdn">*.FreeBSD.org</hostid>) et le détourner
|
|
vers votre serveur de courrier de sorte que vos utilisateurs
|
|
puissent recevoir leur courrier sur le serveur de courrier
|
|
principal.</para>
|
|
|
|
<indexterm><primary>DNS</primary></indexterm>
|
|
<para>Pour rendre les choses plus aisées, un compte
|
|
utilisateur avec le même <emphasis>nom
|
|
d'utilisateur</emphasis> devrait exister sur les deux
|
|
machines. Utilisez &man.adduser.8; pour ce
|
|
faire.</para>
|
|
|
|
<para>Le serveur de courrier que vous utiliserez sera
|
|
défini comme “mail exchanger” pour chaque
|
|
station de travail du réseau. Cela est fait dans votre
|
|
configuration de DNS de cette manière:</para>
|
|
|
|
<programlisting>exemple.FreeBSD.org A 204.216.27.XX ; Station de travail
|
|
MX 10 hub.FreeBSD.org ; Serveur de courrier</programlisting>
|
|
|
|
<para>Cela redirigera le courrier pour votre station de travail
|
|
au serveur de courrier quelque soit la machine sur laquelle
|
|
pointe l'enregistrement A. Le courrier est envoyé sur la
|
|
machine MX.</para>
|
|
|
|
<para>Vous ne pouvez le faire vous-même que si vous
|
|
gérez un serveur de noms. Si ce n'est pas le cas, ou que vous
|
|
ne pouvez avoir votre propre serveur DNS, parlez-en à
|
|
votre fournisseur d'accès ou à celui qui fournit
|
|
votre DNS.</para>
|
|
|
|
<para>Si vous faites de l'hébergement virtuel du courrier
|
|
électronique, l'information suivante sera utile. Pour cet
|
|
exemple, nous supposerons que vous avez un client qui possède
|
|
son propre domaine, dans notre cas <hostid
|
|
role="domainname">client1.org</hostid>, et vous voulez
|
|
que tout le courrier pour <hostid
|
|
role="domainname">client1.org</hostid> arrive sur votre
|
|
serveur de courrier, <hostid role="fqdn">mail.mamachine.com</hostid>.
|
|
L'entrée dans votre DNS devrait ressembler à ceci:</para>
|
|
|
|
<programlisting>client1.org MX 10 mail.mamachine.com</programlisting>
|
|
|
|
<para>Vous n'avez <emphasis>pas</emphasis> besoin d'un
|
|
enregistrement A pour <hostid
|
|
role="domainname">client1.org</hostid> si vous ne voulez
|
|
gérer que le courrier pour ce domaine.</para>
|
|
|
|
<note>
|
|
<para>Soyez conscient que “pinger”
|
|
<hostid role="domainname">client1.org</hostid> ne
|
|
fonctionnera pas à moins qu'un enregistrement A existe pour
|
|
cette machine.</para>
|
|
</note>
|
|
|
|
<para>La dernière chose que vous devez faire est d'indiquer à
|
|
<application>sendmail</application> sur le serveur de courrier
|
|
quels sont les domaines et/ou machines pour lesquels il
|
|
devrait accepter du courrier. Il y a peu de façons
|
|
différentes de le faire. L'une des deux méthodes
|
|
suivantes devrait fonctionner:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Ajoutez les machines à votre fichier
|
|
<filename>/etc/mail/local-host-names</filename> si vous
|
|
utilisez la fonction <literal>FEATURE(use_cw_file)</literal>.
|
|
Si vous utilisez une version de
|
|
<application>sendmail</application> antérieure à
|
|
la version 8.10, le fichier sera
|
|
<filename>/etc/sendmail.cw</filename>.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>Ajoutez une ligne <literal>Cwyour.host.com</literal>
|
|
à votre fichier
|
|
<filename>/etc/sendmail.cf</filename> ou
|
|
<filename>/etc/mail/sendmail.cf</filename> si vous utilisez
|
|
<application>sendmail</application> 8.10 ou supérieur.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="SMTP-UUCP">
|
|
<title>SMTP avec UUCP</title>
|
|
|
|
<para>La configuration de <application>sendmail</application>
|
|
fournie avec &os; est conçue pour les sites directement
|
|
connectés à l'Internet. Les sites désirant
|
|
échanger leur courrier électronique par
|
|
l'intermédiaire d'UUCP doivent installer un autre fichier
|
|
de configuration pour
|
|
<application>sendmail</application>.</para>
|
|
|
|
<para>Modifier manuellement le fichier
|
|
<filename>/etc/mail/sendmail.cf</filename> est un sujet
|
|
réservé aux spécialistes. Dans version 8
|
|
de <application>sendmail</application> la
|
|
génération des fichiers de configuration se fait
|
|
par l'intermédiaire du processeur &man.m4.1;, où
|
|
la configuration se fait à un haut niveau d'abstraction.
|
|
Les fichiers de configuration &man.m4.1; se trouvent dans le
|
|
répertoire <filename
|
|
class="directory">/usr/src/usr.sbin/sendmail/cf</filename>.</para>
|
|
|
|
<para>Si vous n'avez pas installé toutes les sources du
|
|
système, l'ensemble des fichiers de configuration de
|
|
<application>sendmail</application> a été
|
|
regroupé dans une archive séparée des
|
|
autres sources. En supposant que vous avez monté votre
|
|
CDROM &os; contenant les sources, faites:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd /cdrom/src</userinput>
|
|
&prompt.root; <userinput>cat scontrib.?? | tar xzf - -C /usr/src/contrib/sendmail</userinput></screen>
|
|
|
|
<para>Cette extraction ne donne lieu qu'à une centaine de
|
|
kilo-octets. Le fichier <filename>README</filename> dans le
|
|
répertoire <filename class="directory">cf</filename>
|
|
pourra faire office d'une introduction à la configuration
|
|
&man.m4.1;.</para>
|
|
|
|
<para>La meilleure façon d'ajouter le support UUCP est
|
|
d'utiliser la fonctionnalité
|
|
<literal>mailertable</literal>. Cela créé une
|
|
base de données que <application>sendmail</application>
|
|
utilise pour décider de la manière dont il va
|
|
router le courrier électronique.</para>
|
|
|
|
<para>Tout d'abord, vous devez créer votre fichier
|
|
<filename>.mc</filename>. Le répertoire <filename
|
|
class="directory">/usr/src/usr.sbin/sendmail/cf/cf</filename>
|
|
contient quelques exemples. En supposant que vous avez
|
|
appelé votre fichier <filename>foo.mc</filename>, tout ce
|
|
dont vous avez besoin de faire pour le convertir en un fichier
|
|
<filename>sendmail.cf</filename> valide est:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd /usr/src/usr.sbin/sendmail/cf/cf</userinput>
|
|
&prompt.root; <userinput>make foo.cf</userinput>
|
|
&prompt.root; <userinput>cp foo.cf /etc/mail/sendmail.cf</userinput></screen>
|
|
|
|
<para>Un fichier <filename>.mc</filename> classique devrait
|
|
ressembler à ceci:</para>
|
|
|
|
<programlisting>VERSIONID(`<replaceable>Votre numéro de version</replaceable>') OSTYPE(bsd4.4)
|
|
|
|
FEATURE(accept_unresolvable_domains)
|
|
FEATURE(nocanonify)
|
|
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
|
|
|
|
define(`UUCP_RELAY', <replaceable>votre.relai.uucp</replaceable>)
|
|
define(`UUCP_MAX_SIZE', 200000)
|
|
define(`confDONT_PROBE_INTERFACES')
|
|
|
|
MAILER(local)
|
|
MAILER(smtp)
|
|
MAILER(uucp)
|
|
|
|
Cw <replaceable>alias.de.votre.nom.de.machine</replaceable>
|
|
Cw <replaceable>votrenomdenoeuduucp.UUCP</replaceable></programlisting>
|
|
|
|
<para>Les lignes contenant les directives
|
|
<literal>accept_unresolvable_domains</literal>,
|
|
<literal>nocanonify</literal>, et
|
|
<literal>confDONT_PROBE_INTERFACES</literal> empêcheront
|
|
l'utilisation du DNS lors de l'envoi du courrier
|
|
électronique. La directive <literal>UUCP_RELAY</literal>
|
|
est nécessaire pour le support de l'UUCP. Mettez juste
|
|
un nom de machine Internet capable de gérer des adresses
|
|
d'un pseudo-domaine .UUCP; la plupart du temps, vous mettrez le
|
|
nom du serveur de messagerie de votre fournisseur
|
|
d'accès.</para>
|
|
|
|
<para>Après avoir défini tout ceci, vous avez besoin
|
|
d'un fichier <filename>/etc/mail/mailertable</filename>. Si
|
|
vous n'avez qu'un seul lien avec l'extérieur qui est
|
|
utilisé pour votre courrier électronique, le
|
|
fichier suivant devrait suffire:</para>
|
|
|
|
<programlisting>#
|
|
# makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable
|
|
. uucp-dom:<replaceable>your.uucp.relay</replaceable></programlisting>
|
|
|
|
<para>Un exemple plus complexe ressemblerait à ceci:</para>
|
|
|
|
<programlisting>#
|
|
# makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable
|
|
#
|
|
horus.interface-business.de uucp-dom:horus
|
|
.interface-business.de uucp-dom:if-bus
|
|
interface-business.de uucp-dom:if-bus
|
|
.heep.sax.de smtp8:%1
|
|
horus.UUCP uucp-dom:horus
|
|
if-bus.UUCP uucp-dom:if-bus
|
|
. uucp-dom:</programlisting>
|
|
|
|
|
|
<para>Les trois premières lignes gèrent les cas
|
|
spécifiques où les courriers électroniques
|
|
pour l'extérieur ne devraient pas être
|
|
envoyés au serveur par défaut, mais plutôt
|
|
à des serveurs UUCP voisins afin de
|
|
“raccourcir” le chemin à parcourir. La ligne
|
|
suivante gère le courrier électronique
|
|
destiné au domaine Ethernet local et qui peut être
|
|
distribué en utilisant le protocole SMTP. Et enfin, les
|
|
voisins UUCP sont mentionnés dans la notation de
|
|
pseudo-domaine UUCP, pour permettre à un courrier du type
|
|
<literal><replaceable>voisin-uucp
|
|
</replaceable>!<replaceable>destinataire</replaceable></literal>
|
|
de passer outre les règles par défaut. La
|
|
dernière ligne doit toujours être un point, ce qui
|
|
correspond à tout le reste, avec la distribution UUCP
|
|
vers un voisin UUCP qui sert de passerelle universelle de
|
|
courrier électronique vers le reste du monde. Tous les
|
|
noms de noeuds placés après le mot clé
|
|
<literal>uucp-dom:</literal> doivent être des noms valides
|
|
de voisins UUCP, que vous pouvez vérifier en utilisant la
|
|
commande <literal>uuname</literal>.</para>
|
|
|
|
<para>Pour vous rappeler que ce fichier doit être converti
|
|
en un fichier de base de données DBM avant d'être
|
|
utilisable. La ligne de commande pour accomplir cette
|
|
conversion est rappelée dans les commentaires au
|
|
début du fichier <filename>mailertable</filename>. Vous
|
|
devez lancer cette commande à chaque fois que vous
|
|
modifiez votre fichier
|
|
<filename>mailertable</filename>.</para>
|
|
|
|
<para>Pour finir: si vous n'êtes pas certain du bon
|
|
fonctionnement de certaines configurations de routage du
|
|
courrier électronique, rappelez-vous de l'option
|
|
<option>-bt</option> de <application>sendmail</application>.
|
|
Cela lance <application>sendmail</application> dans le
|
|
<emphasis>mode test d'adresse</emphasis>; entrez simplement
|
|
<literal>3,0</literal>, suivi de l'adresse que vous
|
|
désirez tester. La dernière ligne vous indiquera
|
|
le type d'agent utilisé pour l'envoi, la machine de
|
|
destination à laquelle l'agent doit envoyer le message,
|
|
et l'adresse (peut-être traduite) à laquelle il
|
|
l'enverra. Pour quitter ce mode tapez <keycombo
|
|
action="simul"><keycap>Ctrl</keycap><keycap>D</keycap></keycombo>.</para>
|
|
|
|
<screen>&prompt.user; <userinput>sendmail -bt</userinput>
|
|
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
|
|
Enter <ruleset> <address>
|
|
<prompt>></prompt> <userinput>3,0 foo@example.com</userinput>
|
|
canonify input: foo @ example . com
|
|
...
|
|
parse returns: $# uucp-dom $@ <replaceable>your.uucp.relay</replaceable> $: foo < @ example . com . >
|
|
<prompt>></prompt> <userinput>^D</userinput></screen>
|
|
</sect1>
|
|
|
|
<sect1 id="outgoing-only">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Bill</firstname>
|
|
<surname>Moran</surname>
|
|
<contrib>Contribution de </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
|
|
<title>Configuration pour l'envoi seul</title>
|
|
|
|
<para>Il existe de nombreux cas où vous désirez
|
|
être capable d'uniquement envoyer du courrier
|
|
électronique par l'intermédiaire d'un relais.
|
|
Quelques exemples:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>Votre ordinateur est une machine de bureau, mais vous
|
|
voulez utilisez des programmes comme &man.send-pr.1;.
|
|
Pour cela vous devez utiliser le relais de courrier
|
|
électronique de votre FAI.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>L'ordinateur est un serveur qui ne gère pas le
|
|
courrier électronique localement, mais a besoin de
|
|
soumettre tout le courrier à un relais pour qu'il soit
|
|
transmis.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>N'importe quel <acronym>MTA</acronym> est capable d'assurer
|
|
cette fonction. Malheureusement, il peut être très
|
|
compliqué de configurer correctement un
|
|
<acronym>MTA</acronym> complet pour juste gérer le
|
|
courrier sortant. Des logiciels comme
|
|
<application>sendmail</application> et
|
|
<application>postfix</application> sont largement
|
|
surdimensionnés pour cette utilisation.</para>
|
|
|
|
<para>De plus, si vous utilisez un accès Internet
|
|
classique, votre contrat peut vous interdire de faire tourner un
|
|
“serveur de courrier électronique”.</para>
|
|
|
|
<para>La manière la plus simple pour répondre
|
|
à ce besoin est d'installer le logiciel porté
|
|
<filename role="package">mail/ssmtp</filename>. Exécutez
|
|
les commandes suivantes en tant que
|
|
<username>root</username>:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd /usr/ports/mail/ssmtp</userinput>
|
|
&prompt.root; <userinput>make install replace clean</userinput></screen>
|
|
|
|
<para>Une fois installé, <filename
|
|
role="package">mail/ssmtp</filename> peut être
|
|
configuré avec un fichier de quatre lignes,
|
|
<filename>/usr/local/etc/ssmtp/ssmtp.conf</filename>:</para>
|
|
|
|
<programlisting>root=yourrealemail@example.com
|
|
mailhub=mail.example.com
|
|
rewriteDomain=example.com
|
|
hostname=_HOSTNAME_</programlisting>
|
|
|
|
<para>Assurez-vous d'employer votre adresse électronique
|
|
réelle pour l'utilisateur <username>root</username>.
|
|
Utilisez le relais de courrier électronique sortant de
|
|
votre FAI à la place de <hostid
|
|
role="fqdn">mail.example.com</hostid> (certains FAIs appellent
|
|
cela le “serveur de courrier sortant” ou le
|
|
“serveur SMTP”).</para>
|
|
|
|
<para>Assurez-vous également d'avoir
|
|
désactivé <application>sendmail</application> en
|
|
fixant <literal>sendmail_enable="NONE"</literal> dans le fichier
|
|
<filename>/etc/rc.conf</filename>.</para>
|
|
|
|
<para><filename role="package">mail/ssmtp</filename> dispose
|
|
d'autres options. Consultez le fichier de configuration
|
|
d'exemple dans le répertoire <filename
|
|
class="directory">/usr/local/etc/ssmtp</filename> ou la page de
|
|
manuel de <application>ssmtp</application> pour quelques
|
|
exemples et plus d'informations.</para>
|
|
|
|
<para>Configurer <application>ssmtp</application> de cette
|
|
manière permettra à toute application tournant sur
|
|
votre ordinateur et ayant besoin d'envoyer un courrier
|
|
électronique de fonctionner correctement, tout en
|
|
n'outrepassant pas la politique de votre FAI ou en ne permettant
|
|
pas l'utilisation de votre ordinateur comme base arrière
|
|
pour “spammers”.</para>
|
|
</sect1>
|
|
|
|
<sect1 id="SMTP-dialup">
|
|
<title>Utiliser le courrier électronique avec une connexion
|
|
temporaire</title>
|
|
|
|
<para>Si vous disposez d'une adresse IP statique, vous ne devez
|
|
rien changer du paramétrage par défaut.
|
|
Définissez votre nom de machine pour qu'il corresponde
|
|
à celui qui vous a été assigné pour
|
|
l'Internet et <application>sendmail</application> s'occupera du
|
|
reste.</para>
|
|
|
|
<para>Si votre adresse IP vous est attribuée dynamiquement
|
|
et que vous utilisez une connexion PPP par modem pour
|
|
accèder à l'Internet, vous disposez probablement
|
|
d'une boite aux lettres chez votre fournisseur d'accès.
|
|
Supposons que le domaine de votre fournisseur d'accès
|
|
soit <hostid role="domainname">example.net</hostid>, que votre
|
|
nom d'utilisateur soit <username>user</username>, que vous
|
|
avez appelé votre machine <hostid
|
|
role="fqdn">bsd.home</hostid>, et que votre fournisseur vous ait
|
|
demandé d'utiliser la machine <hostid
|
|
role="fqdn">relay.example.net</hostid> comme serveur relai de
|
|
messagerie électronique.</para>
|
|
|
|
<para>Pour pouvoir rapatrier votre courrier depuis votre boite aux
|
|
lettres, vous devez installer un agent de rapatriement.
|
|
L'utilitaire <application>fetchmail</application> est un bon
|
|
choix car il supporte la plupart des protocoles de messagerie.
|
|
Ce programme est disponible sous forme de paquetage ou à
|
|
partir du catalogue des logiciels portés (<filename
|
|
role="package">mail/fetchmail</filename>). La plupart du temps,
|
|
votre fournisseur d'accès fournit l'accès aux
|
|
boites aux lettre à l'aide du protocole <acronym>POP</acronym>. Si vous utilisez PPP
|
|
en mode utilisateur, vous pouvez automatiquement
|
|
récupérer votre courrier quand une connexion
|
|
Internet est établie avec l'entrée suivante dans
|
|
le fichier <filename>/etc/ppp/ppp.linkup</filename>:</para>
|
|
|
|
<programlisting>MYADDR:
|
|
!bg su user -c fetchmail</programlisting>
|
|
|
|
<para>Si vous utilisez <application>sendmail</application> (comme
|
|
montré ci-dessous) pour distribuer le courrier aux
|
|
comptes non-locaux, vous voudrez probablement que
|
|
<application>sendmail</application> s'occupe de transmettre les
|
|
messages en attente dès que votre connexion Internet est
|
|
établie. Pour cela, ajoutez la commande suivante
|
|
après la commande <command>fetchmail</command> dans le
|
|
fichier <filename>/etc/ppp/ppp.linkup</filename>:</para>
|
|
|
|
<programlisting>!bg su user -c "sendmail -q"</programlisting>
|
|
|
|
<para>En supposant que vous avez un compte
|
|
<username>user</username> sur <hostid
|
|
role="fqdn">bsd.home</hostid>. Dans le répertoire de
|
|
l'utilisateur <username>user</username> sur <hostid
|
|
role="fqdn">bsd.home</hostid>, créez un fichier
|
|
<filename>.fetchmailrc</filename> contenant:</para>
|
|
|
|
<programlisting>poll example.net protocol pop3 fetchall pass MySecret</programlisting>
|
|
|
|
<para>Ce fichier ne devrait être lisible que par
|
|
l'utilisateur <username>user</username> car il contient le mot
|
|
de passe <literal>MySecret</literal>.</para>
|
|
|
|
<para>Afin de pouvoir envoyer du courrier avec l'entête
|
|
<literal>from:</literal> correcte, vous devez configurer
|
|
<application>sendmail</application> pour utiliser l'adresse
|
|
<literal>user@example.net</literal> plutôt que
|
|
<literal>user@bsd.home</literal>. Vous pouvez également
|
|
dire à <application>sendmail</application> d'envoyer le
|
|
courrier via le serveur <hostid
|
|
role="fqdn">relay.example.net</hostid>, permettant une
|
|
transmission du courrier plus rapide.</para>
|
|
|
|
<para>Le fichier <filename>.mc</filename> suivant devrait
|
|
suffire:</para>
|
|
|
|
<programlisting>VERSIONID(`bsd.home.mc version 1.0')
|
|
OSTYPE(bsd4.4)dnl
|
|
FEATURE(nouucp)dnl
|
|
MAILER(local)dnl
|
|
MAILER(smtp)dnl
|
|
Cwlocalhost
|
|
Cwbsd.home
|
|
MASQUERADE_AS(`example.net')dnl
|
|
FEATURE(allmasquerade)dnl
|
|
FEATURE(masquerade_envelope)dnl
|
|
FEATURE(nocanonify)dnl
|
|
FEATURE(nodns)dnl
|
|
define(`SMART_HOST', `relay.example.net')
|
|
Dmbsd.home
|
|
define(`confDOMAIN_NAME',`bsd.home')dnl
|
|
define(`confDELIVERY_MODE',`deferred')dnl</programlisting>
|
|
|
|
<para>Référez-vous à la section
|
|
précédente pour des détails sur la
|
|
conversion de ce fichier <filename>.mc</filename> en un fichier
|
|
<filename>sendmail.cf</filename>. N'oubliez pas
|
|
également de redémarrer
|
|
<application>sendmail</application> après la mise
|
|
à jour du fichier
|
|
<filename>sendmail.cf</filename>.</para>
|
|
</sect1>
|
|
|
|
<sect1 id="SMTP-Auth">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>James</firstname>
|
|
<surname>Gorham</surname>
|
|
<contrib>Ecrit par </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
|
|
<title>Authentification SMTP</title>
|
|
|
|
<para>Disposer de l'authentification <acronym>SMTP</acronym>
|
|
sur votre serveur de courrier présente un certain
|
|
nombre d'avantages. L'authentification <acronym>SMTP</acronym>
|
|
peut ajouter une autre couche de sécurité à
|
|
<application>sendmail</application>, et a l'avantage
|
|
de donner aux utilisateurs mobiles la possibilité
|
|
d'utiliser le même serveur de courrier sans avoir
|
|
besoin de reconfigurer les paramètres de leur client
|
|
courrier à chaque déplacement.</para>
|
|
|
|
<procedure>
|
|
<step>
|
|
<para>Installez <filename
|
|
role="package">security/cyrus-sasl</filename> à
|
|
partir du catalogue des logiciels portés. Vous
|
|
pouvez trouver ce logiciel porté dans
|
|
<filename role="package">security/cyrus-sasl</filename>.
|
|
<filename role="package">security/cyrus-sasl</filename>
|
|
dispose de nombreuses options de compilation possibles,
|
|
pour la méthode que nous allons utiliser ici,
|
|
assurez-vous de sélectionner l'option
|
|
<option>pwcheck</option>.</para>
|
|
</step>
|
|
|
|
|
|
<step>
|
|
<para>Après avoir installé
|
|
<filename role="package">security/cyrus-sasl</filename>,
|
|
éditez
|
|
<filename>/usr/local/lib/sasl/Sendmail.conf</filename>
|
|
(ou créez-le s'il n'existe pas) et ajoutez la ligne
|
|
suivante:</para>
|
|
|
|
<programlisting>pwcheck_method: passwd</programlisting>
|
|
|
|
<para>Cette méthode activera au niveau de
|
|
<application>sendmail</application> l'authentification par
|
|
l'intermédiaire de votre base de données
|
|
FreeBSD <filename>passwd</filename>. Cela nous épargne
|
|
le problème de la création d'un nouvel ensemble
|
|
de nom d'utilisateur et de mot de passe pour chaque
|
|
utilisateur ayant besoin de recourir à
|
|
l'authentification <acronym>SMTP</acronym>, et conserve le
|
|
même nom d'utilisateur et mot de passe pour le
|
|
courrier.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Maintenant éditez <filename>/etc/make.conf</filename>
|
|
et ajoutez les lignes suivantes:</para>
|
|
|
|
<programlisting>SENDMAIL_CFLAGS=-I/usr/local/include/sasl1 -DSASL
|
|
SENDMAIL_LDFLAGS=-L/usr/local/lib
|
|
SENDMAIL_LDADD=-lsasl</programlisting>
|
|
|
|
<para>Ces lignes passeront à
|
|
<application>sendmail</application> les bonnes options de
|
|
configuration au moment de la compilation pour lier
|
|
<filename role="package">cyrus-sasl</filename>.
|
|
Assurez-vous que <filename role="package">cyrus-sasl</filename>
|
|
a été installé avant de recompiler
|
|
<application>sendmail</application>.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Recompilez <application>sendmail</application> en
|
|
lançant les commandes suivantes:</para>
|
|
|
|
<screen>&prompt.root; <userinput>cd /usr/src/usr.sbin/sendmail</userinput>
|
|
&prompt.root; <userinput>make cleandir</userinput>
|
|
&prompt.root; <userinput>make obj</userinput>
|
|
&prompt.root; <userinput>make</userinput>
|
|
&prompt.root; <userinput>make install</userinput></screen>
|
|
|
|
<para>La compilation de <application>sendmail</application>
|
|
ne devrait pas présenter de problèmes si le
|
|
répertoire <filename>/usr/src</filename> n'a pas subi
|
|
d'énormes changements et si les bibliothèques
|
|
partagés nécessaires sont disponibles.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Une fois que <application>sendmail</application> a
|
|
été compilé et réinstallé,
|
|
éditez votre fichier <filename>/etc/mail/freebsd.mc</filename>
|
|
(ou tout autre fichier que vous utilisez comme fichier
|
|
<filename>.mc</filename>. De nombreux administrateurs
|
|
utilisent la sortie de &man.hostname.1; comme nom de fichier
|
|
<filename>.mc</filename> par unicité). Ajoutez-y les
|
|
lignes qui suivents:</para>
|
|
|
|
<programlisting>dnl set SASL options
|
|
TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
|
|
define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
|
|
define(`confDEF_AUTH_INFO', `/etc/mail/auth-info')dnl</programlisting>
|
|
|
|
<para>Ces options configurent les différentes méthodes
|
|
disponibles pour <application>sendmail</application>
|
|
pour l'authentification des utilisateurs. Si vous
|
|
désirez utiliser une méthode autre que
|
|
<application>pwcheck</application>, veuillez consulter
|
|
la documentation fournie.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Enfin, exécutez &man.make.1; quand vous êtes
|
|
dans <filename>/etc/mail</filename>. Cela prendra votre
|
|
nouveau fichier <filename>.mc</filename> et créera un
|
|
fichier <filename>.cf</filename> appelé
|
|
<filename>freebsd.cf</filename> (ou selon tout autre nom que
|
|
vous avez utilisé pour votre fichier
|
|
<filename>.mc</filename>). Ensuite utilisez la commande
|
|
<command>make install restart</command>, qui copiera le
|
|
fichier en <filename>sendmail.cf</filename>, et
|
|
redémarrera proprement
|
|
<application>sendmail</application>. Pour plus
|
|
d'informations sur ce processus, vous devriez vous
|
|
réferrer au fichier
|
|
<filename>/etc/mail/Makefile</filename>.</para>
|
|
</step>
|
|
</procedure>
|
|
|
|
<para>Si tout s'est bien passé, vous devriez être
|
|
en mesure d'entrer votre identifiant dans votre programme
|
|
de courrier et d'envoyer un message de test. Pour plus
|
|
d'investigation, fixez le <option>LogLevel</option> de
|
|
<application>sendmail</application> à 13 et scrutez
|
|
<filename>/var/log/maillog</filename> à la recherche
|
|
d'une erreur.</para>
|
|
|
|
<para>Vous pourrez rajouter les lignes suivantes au fichier
|
|
<filename>/etc/rc.conf</filename> afin de rendre ce service
|
|
disponible après chaque démarrage du
|
|
système:</para>
|
|
|
|
<programlisting>sasl_pwcheck_enable="YES"
|
|
sasl_pwcheck_program="/usr/local/sbin/pwcheck"</programlisting>
|
|
|
|
<para>Cela assurera l'initialisation de
|
|
<acronym>SMTP_AUTH</acronym>, l'authentification SMTP, au
|
|
démarrage du système.</para>
|
|
|
|
<para>Pour plus d'informations, veuillez consulter la page de la
|
|
documentation de <application>sendmail</application> concernant
|
|
<ulink url="http://www.sendmail.org/~ca/email/auth.html">
|
|
l'authentification <acronym>SMTP</acronym></ulink>.</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mail-agents">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Marc</firstname>
|
|
<surname>Silver</surname>
|
|
<contrib>Contribution de </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
<title>Clients de messagerie</title>
|
|
|
|
<indexterm>
|
|
<primary>Client de messagerie</primary>
|
|
</indexterm>
|
|
|
|
<para>Un client de messagerie (“Mail User
|
|
Agent”—<acronym>MUA</acronym>) est une application
|
|
qui est utilisée pour envoyer et recevoir du courrier
|
|
électronique. En outre, au fur et à mesure que le
|
|
système du courrier électronique
|
|
“évolue” et devient plus complexe, les
|
|
<acronym>MUA</acronym> deviennent de plus en plus puissants,
|
|
offrant aux utilisateurs plus de fonctionnalités et de
|
|
flexibilité. &os; offre le support pour de nombreux
|
|
clients de messagerie, ils peuvent tous être
|
|
aisément installés à partir du <link
|
|
linkend="ports">catalogue des logiciels portés de
|
|
&os;</link>. Les utilisateurs pourront choisir entre des
|
|
clients de messagerie graphiques comme
|
|
<application>evolution</application> ou
|
|
<application>balsa</application>, des clients en mode console
|
|
tels que <application>mutt</application>,
|
|
<application>pine</application> ou <command>mail</command>, ou
|
|
encore les interfaces Web utilisées par certaines
|
|
organisations importantes.</para>
|
|
|
|
<sect2 id="mail-command">
|
|
<title>mail</title>
|
|
|
|
<para>&man.mail.1; est le client de messagerie (“Mail User
|
|
Agent”—<acronym>MUA</acronym>) par défaut
|
|
de &os;. C'est un <acronym>MUA</acronym> en mode console qui
|
|
offre toutes les fonctionnalités de base
|
|
nécessaires pour envoyer et lire son courrier
|
|
électronique en mode texte, cependant il est
|
|
limité en ce qui concerne les possibilités de
|
|
pièces jointes et ne supporte que les boîtes aux
|
|
lettres locales.</para>
|
|
|
|
<para>Bien que <command>mail</command> ne supporte pas
|
|
l'intéraction avec les serveurs <acronym>POP</acronym>
|
|
ou <acronym>IMAP</acronym>, ces boîtes aux lettres
|
|
peuvent être téléchargées vers un
|
|
fichier <filename>mbox</filename> local en utilisant une
|
|
application telle que <application>fetchmail</application>,
|
|
qui sera abordée plus tard dans ce chapitre (<xref
|
|
linkend="mail-fetchmail"/>).</para>
|
|
|
|
<para>Afin d'envoyer et de recevoir du courrier
|
|
électronique, invoquez simplement la commande
|
|
<command>mail</command> comme le montre l'exemple
|
|
suivant:</para>
|
|
|
|
<screen>&prompt.user; <userinput>mail</userinput></screen>
|
|
|
|
<para>Le contenu de la boîte aux lettres de l'utilisateur
|
|
dans <filename class="directory">/var/mail</filename> est
|
|
automatiquement lu par l'utilitaire <command>mail</command>.
|
|
Si la boîte est vide, l'utilitaire rend la main avec un
|
|
message indiquant qu'aucun courrier électronique ne
|
|
peut être trouvé. Une fois que la boîte
|
|
aux lettres a été lue, l'interface de
|
|
l'application est lancée, et une liste de messages sera
|
|
affichée. Les messages sont automatiquement
|
|
numérotés, comme on peut le voir dans l'exemple
|
|
suivant:</para>
|
|
|
|
<screen>Mail version 8.1 6/6/93. Type ? for help.
|
|
"/var/mail/marcs": 3 messages 3 new
|
|
>N 1 root@localhost Mon Mar 8 14:05 14/510 "test"
|
|
N 2 root@localhost Mon Mar 8 14:05 14/509 "user account"
|
|
N 3 root@localhost Mon Mar 8 14:05 14/509 "sample"</screen>
|
|
|
|
<para>Les messages peuvent désormais être lus en
|
|
utilisant la commande <keycap>t</keycap> de
|
|
<command>mail</command>, suivie du numéro du message
|
|
qui devra être affiché. Dans cet exemple, nous
|
|
lirons le premier courrier électronique:</para>
|
|
|
|
<screen>&prompt.user; <userinput>t 1</userinput>
|
|
Message 1:
|
|
From root@localhost Mon Mar 8 14:05:52 2004
|
|
X-Original-To: marcs@localhost
|
|
Delivered-To: marcs@localhost
|
|
To: marcs@localhost
|
|
Subject: test
|
|
Date: Mon, 8 Mar 2004 14:05:52 +0200 (SAST)
|
|
From: root@localhost (Charlie Root)
|
|
|
|
This is a test message, please reply if you receive it.</screen>
|
|
|
|
<para>Comme nous pouvons le constater dans l'exemple ci-dessus,
|
|
l'appuie sur la touche <keycap>t</keycap> fera afficher le
|
|
message avec les entêtes complètes. Pour
|
|
afficher à nouveau la liste des messages, la touche
|
|
<keycap>h</keycap> doit être utilisée.</para>
|
|
|
|
<para>Si le message nécessite une réponse, vous
|
|
pouvez utiliser <command>mail</command> pour cela, en entrant
|
|
soit la touche <keycap>R</keycap>, soit la touche
|
|
<keycap>r</keycap>. La touche <keycap>R</keycap> demande
|
|
à <command>mail</command> de ne répondre
|
|
qu'à l'expéditeur du message, alors que
|
|
<keycap>r</keycap> répond à l'expéditeur
|
|
mais également aux autres destinataires du message.
|
|
Vous pouvez ajouter à la suite de ces commandes le
|
|
numéro du courrier auquel vous désirez
|
|
répondre. Une fois cela effectué, la
|
|
réponse doit être tapée, et la fin du
|
|
message doit être indiquée par un
|
|
<keycap>.</keycap> sur une nouvelle ligne. Ci-dessous est
|
|
présenté un exemple:</para>
|
|
|
|
<screen>&prompt.user; <userinput>R 1</userinput>
|
|
To: root@localhost
|
|
Subject: Re: test
|
|
|
|
<userinput>Thank you, I did get your email.
|
|
.</userinput>
|
|
EOT</screen>
|
|
|
|
<para>Afin d'envoyer un nouveau courrier électronique, la
|
|
touche <keycap>m</keycap> doit être utilisée,
|
|
suivie de l'adresse électronique du destinataire.
|
|
Plusieurs destinataires peuvent également être
|
|
spécifiés en séparant chaque adresse par
|
|
une <keycap>,</keycap>. Le sujet du message peut alors
|
|
être entré, suivi du corps du message. La fin
|
|
d'un message doit être indiquée en mettant un
|
|
<keycap>.</keycap> seul sur une nouvelle ligne.</para>
|
|
|
|
<screen>&prompt.user; <userinput>mail root@localhost</userinput>
|
|
Subject: <userinput>I mastered mail
|
|
|
|
Now I can send and receive email using mail ... :)
|
|
.</userinput>
|
|
EOT</screen>
|
|
|
|
<para>Bien qu'à partir de l'utilitaire
|
|
<command>mail</command>, la commande <keycap>?</keycap> puisse
|
|
être utilisée à tout instant pour afficher
|
|
l'aide, la page de manuel &man.mail.1; devrait être
|
|
consultée pour plus d'aide sur
|
|
<command>mail</command>.</para>
|
|
|
|
<note>
|
|
<para>Comme indiqué précédemment, la
|
|
commande &man.mail.1; à l'origine n'a pas
|
|
été conçue pour gérer les
|
|
pièces jointes, et par conséquent ne s'en sort
|
|
pas très bien à ce niveau. Les
|
|
<acronym>MUA</acronym>s plus récents comme
|
|
<application>mutt</application> gérent les
|
|
pièces jointes de manière plus intelligente.
|
|
Mais si vous souhaitez toujours utiliser
|
|
<command>mail</command>, le logiciel porté <filename
|
|
role="package">converters/mpack</filename> vous sera d'une
|
|
grande aide.</para>
|
|
</note>
|
|
</sect2>
|
|
|
|
<sect2 id="mutt-command">
|
|
<title>mutt</title>
|
|
|
|
<para><application>mutt</application> est un client de
|
|
messagerie léger mais très puissant, avec de
|
|
nombreuses fonctionnalités, parmi lesquelles:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>la possibilité de gérer les fils
|
|
(“threads”) de discussions;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>le support PGP pour la signature électronique
|
|
et le chiffrage de courriers électroniques;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>le support MIME;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>le support du format maildir;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>application hautement configurable et
|
|
personnalisable.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>Toutes ces caractéristiques font de
|
|
<application>mutt</application> un des clients de messagerie
|
|
les plus avancés. Consultez <ulink
|
|
url="http://www.mutt.org"></ulink> pour plus d'informations
|
|
sur <application>mutt</application>.</para>
|
|
|
|
<para>La version stable de <application>mutt</application> peut
|
|
être installée en utilisant le logiciel
|
|
porté <filename role="package">mail/mutt</filename>,
|
|
tandis que la version actuellement en développement
|
|
peut être installée par l'intermédiaire du
|
|
logiciel porté <filename
|
|
role="package">mail/mutt-devel</filename>. Une fois
|
|
installé, <application>mutt</application> peut
|
|
être lancé en tapant la commande suivante:</para>
|
|
|
|
<screen>&prompt.user; <userinput>mutt</userinput></screen>
|
|
|
|
<para><application>mutt</application> lira automatiquement le
|
|
contenu de la boîte aux lettres de l'utilisateur dans
|
|
<filename class="directory">/var/mail</filename> et en affiche
|
|
le contenu le cas échéant. Si aucun message
|
|
n'est trouvé dans cette boîte, alors
|
|
<application>mutt</application> attendra une commande de
|
|
l'utilisateur. L'exemple ci-dessous montre
|
|
<application>mutt</application> affichant une liste de
|
|
messages:</para>
|
|
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="mail/mutt1"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
|
|
<para>Afin de lire un message, sélectionnez-le en
|
|
utilisant les touches fléchées, et appuyez sur
|
|
<keycap>Entrée</keycap>. Un exemple montrant
|
|
<application>mutt</application> affichant le contenu d'un
|
|
message est donné ci-dessous:</para>
|
|
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="mail/mutt2"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
|
|
<para>Comme avec la commande &man.mail.1;,
|
|
<application>mutt</application> permet aux utilisateurs de
|
|
répondre uniquement à l'expéditeur du
|
|
message comme également à l'ensemble de ses
|
|
destinataires. Pour répondre uniquement à
|
|
l'expéditeur du courrier électronique, utilisez
|
|
le raccourci clavier <keycap>r</keycap>. Pour faire une
|
|
réponse groupée, qui sera envoyée
|
|
à l'expéditeur comme à tous les
|
|
destinataires du message, utilisez la touche
|
|
<keycap>g</keycap>.</para>
|
|
|
|
<note>
|
|
<para><application>mutt</application> emploie &man.vi.1; comme
|
|
éditeur pour la création et la réponse
|
|
aux courriers électronique. Cela peut être
|
|
modifié par l'utilisateur en créant son propre
|
|
fichier <filename>.muttrc</filename> dans leur
|
|
répertoire personnel et en positionnant la variable
|
|
<literal>editor</literal>.</para>
|
|
</note>
|
|
|
|
<para>Pour rédiger un nouveau message, appuyez sur la
|
|
touche <keycap>m</keycap>. Après avoir donné un
|
|
sujet valide, <application>mutt</application> lancera
|
|
&man.vi.1; et l'intégralité du message pourra
|
|
être écrite. Une fois le courrier
|
|
électronique rédigé, sauvegardez et
|
|
quittez <command>vi</command> et
|
|
<application>mutt</application> réapparaîtra
|
|
affichant un écran résumant le courrier devant
|
|
être envoyé. Pour envoyer le message, appuyez
|
|
sur <keycap>y</keycap>. Un exemple de résumé
|
|
peut être vu ci-dessous:</para>
|
|
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="mail/mutt3"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
|
|
<para><application>mutt</application> propose également
|
|
une aide complète, qui peut être consultée
|
|
à partir de la plupart des menus en appuyant sur la
|
|
touche <keycap>?</keycap>. La ligne située en haut de
|
|
l'écran affiche également les raccourcis clavier
|
|
appropriés.</para>
|
|
</sect2>
|
|
|
|
<sect2 id="pine-command">
|
|
<title>pine</title>
|
|
|
|
<para><application>pine</application> est destiné aux
|
|
débutants, mais il dispose également de
|
|
fonctions avancées.</para>
|
|
|
|
<warning>
|
|
<para>Plusieurs vulnérabilités exploitables
|
|
à distance ont été découvertes
|
|
dans le logiciel <application>pine</application> par le
|
|
passé, autorisant à un agresseur distant
|
|
d'exécuter un programme arbitraire en tant
|
|
qu'utilisateur local du système, en envoyant un
|
|
courrier électronique particulier. Tous les
|
|
problèmes <emphasis>connus</emphasis> ont
|
|
été corrigés, mais le code source de
|
|
<application>pine</application> est écrit d'une
|
|
manière assez peu sécurisée et l'officier
|
|
de sécurité de &os; pense qu'il existe d'autres
|
|
failles qui ne sont pas encore découvertes. Vous
|
|
installez donc <application>pine</application> à vos
|
|
propres risques.</para>
|
|
</warning>
|
|
|
|
<para>La version actuelle de <application>pine</application>
|
|
peut être installée en utilisant le logiciel
|
|
porté <filename role="package">mail/pine4</filename>.
|
|
Une fois installé, <application>pine</application> peut
|
|
être lancé en tapant la commande suivante:</para>
|
|
|
|
<screen>&prompt.user; <userinput>pine</userinput></screen>
|
|
|
|
<para>Lors du premier lancement de
|
|
<application>pine</application>, ce dernier affiche une page
|
|
de présentation avec une brève introduction,
|
|
ainsi qu'un message de la part de l'équipe de
|
|
développement de <application>pine</application>
|
|
demandant l'envoi d'un courrier électronique anonyme
|
|
pour leur permettre d'évaluer le nombre d'utilisateurs
|
|
de leur client de messagerie. Pour envoyer ce courrier
|
|
anonyme, appuyez sur <keycap>Entrée</keycap>, ou sinon
|
|
appuyez sur <keycap>E</keycap> pour quitter la
|
|
présentation sans envoyer de message anonyme. Un
|
|
exemple de page de présentation peut être vu
|
|
ci-dessous:</para>
|
|
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="mail/pine1"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
|
|
<para>Le menu principal est ensuite affiché, menu dans
|
|
lequel il est aisé de naviguer avec les touches
|
|
fléchées. Ce menu principal fournit les
|
|
raccourcis pour la rédaction de nouveaux messages, la
|
|
navigation dans les répertoires de messages, et
|
|
même la gestion des entrées du carnet d'adresses.
|
|
Sous le menu principal, les raccourcis clavier correspondants
|
|
pour effectuer les différentes tâches sont
|
|
donnés.</para>
|
|
|
|
<para>Le répertoire ouvert par défaut par
|
|
<application>pine</application> est <filename
|
|
class="directory">inbox</filename>. Pour afficher l'index des
|
|
messages, appuyez sur <keycap>I</keycap>, ou
|
|
sélectionnez l'option <guimenuitem>MESSAGE
|
|
INDEX</guimenuitem> comme montré ci-dessous:</para>
|
|
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="mail/pine2"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
|
|
<para>L'index des messages montre les messages dans le
|
|
répertoire courant, on peut se déplacer dans
|
|
l'index en utilisant les touches fléchées. Les
|
|
messages en surbrillance peuvent être lus en appuyant
|
|
sur la touche <keycap>Enter</keycap>.</para>
|
|
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="mail/pine3"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
|
|
<para>Dans la capture d'écran ci-dessous, un message
|
|
d'exemple est affiché par
|
|
<application>pine</application>. Les raccourcis clavier sont
|
|
affichés au bas de l'écran. Un exemple de
|
|
raccourci est la touche <keycap>r</keycap>, qui demande au
|
|
programme de répondre au message actuellement à
|
|
l'écran.</para>
|
|
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="mail/pine4"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
|
|
<para>La rédaction d'une réponse à un
|
|
courrier électronique avec
|
|
<application>pine</application> se fait en utilisant
|
|
l'éditeur <application>pico</application>, qui est
|
|
installé par défaut avec
|
|
<application>pine</application>. L'utilitaire
|
|
<application>pico</application> rend aisé les
|
|
déplacements dans le message et est plus indulgent avec
|
|
les novices que &man.vi.1; ou &man.mail.1;. Une fois la
|
|
réponse rédigée, le message peut
|
|
être envoyé en appuyant sur <keycombo
|
|
action="simul"><keycap>Ctrl</keycap><keycap>X</keycap></keycombo>.
|
|
<application>pine</application> vous demandera de confirmer
|
|
votre action.</para>
|
|
|
|
<mediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="mail/pine5"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
|
|
<para>Le programme <application>pine</application> peut
|
|
être personnalisé en utilisant l'option
|
|
<guimenuitem>SETUP</guimenuitem> du menu principal. Consultez
|
|
<ulink url="http://www.washington.edu/pine/"></ulink> pour
|
|
plus d'information.</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="mail-fetchmail">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Marc</firstname>
|
|
<surname>Silver</surname>
|
|
<contrib>Contribution de </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
<title>Utiliser fetchmail</title>
|
|
|
|
<indexterm>
|
|
<primary>Utiliser fetchmail</primary>
|
|
</indexterm>
|
|
|
|
<para><application>fetchmail</application> est un client
|
|
<acronym>IMAP</acronym> et <acronym>POP</acronym> complet qui
|
|
offre aux utilisateurs le téléchargement
|
|
automatiquement de leur courrier électronique à
|
|
partir de serveurs <acronym>IMAP</acronym> et
|
|
<acronym>POP</acronym> distants et sa sauvegarde dans des
|
|
boîtes aux lettres locales; ainsi, le courrier
|
|
électronique pourra être consulté plus
|
|
facilement. <application>fetchmail</application> peut
|
|
être installé en utilisant le logiciel porté
|
|
<filename role="package">mail/fetchmail</filename>, et offre
|
|
diverses fonctionnalités, dont:</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>le support des protocoles <acronym>POP3</acronym>,
|
|
<acronym>APOP</acronym>, <acronym>KPOP</acronym>,
|
|
<acronym>IMAP</acronym>, <acronym>ETRN</acronym> et
|
|
<acronym>ODMR</acronym>;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>la capacité de faire suivre le courrier
|
|
électronique en utilisant <acronym>SMTP</acronym>, ce
|
|
qui autorise le filtrage, le transfert, et la gestion des
|
|
alias de fonctionner correctement;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>la possibilité de fonctionner en mode
|
|
“daemon” pour contrôler
|
|
périodiquement si il y a de nouveaux messages;</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>la possibilité de récupérer le
|
|
courrier de plusieurs boîtes aux lettres et de le
|
|
transférer en fonction d'une configuration bien
|
|
précise aux différents utilisateurs
|
|
locaux.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<para>Bien qu'expliquer l'intégralité des fonctions
|
|
de <application>fetchmail</application> dépasse le cadre
|
|
de ce document, certaines fonctions de base seront
|
|
abordées. L'utilitaire
|
|
<application>fetchmail</application> nécessite un fichier
|
|
de configuration nommé <filename>.fetchmailrc</filename>,
|
|
afin de fonctionner correctement. Ce fichier comprend les
|
|
informations concernant les serveurs ainsi que les
|
|
accréditations d'accès. En raison du
|
|
caractère sensible du contenu de ce fichier, il est
|
|
recommandé de ne le rendre lisible que par l'utilisateur,
|
|
avec la commande suivante:</para>
|
|
|
|
<screen>&prompt.user; <userinput>chmod 600 .fetchmailrc</userinput></screen>
|
|
<para>Le fichier <filename>.fetchmailrc</filename> suivant
|
|
sert d'exemple pour récupérer le courrier
|
|
électronique pour un seul utilisateur à partir
|
|
d'une boîte aux lettres utilisant le protocole
|
|
<acronym>POP</acronym>. Il demande à
|
|
<application>fetchmail</application> de se connecter à
|
|
<hostid role="fqdn">example.com</hostid> en utilisant le nom
|
|
d'utilisateur <username>joesoap</username> et le mot de passe
|
|
<literal>XXX</literal>. Dans cet exemple on suppose que
|
|
l'utilisateur <username>joesoap</username> est également
|
|
un utilisateur sur le système local.</para>
|
|
|
|
<programlisting>poll example.com protocol pop3 username "joesoap" password "XXX"</programlisting>
|
|
|
|
<para>L'exemple suivant présente la connexion à
|
|
plusieurs serveurs <acronym>POP</acronym> et
|
|
<acronym>IMAP</acronym> et la redirection vers différents
|
|
utilisateurs locaux quand c'est nécessaire:</para>
|
|
|
|
<programlisting>poll example.com proto pop3:
|
|
user "joesoap", with password "XXX", is "jsoap" here;
|
|
user "andrea", with password "XXXX";
|
|
poll example2.net proto imap:
|
|
user "john", with password "XXXXX", is "myth" here;</programlisting>
|
|
|
|
<para>L'utilitaire <application>fetchmail</application> peut
|
|
être exécuté en mode “daemon” en
|
|
le lançant avec le paramètre <option>-d</option>,
|
|
suivi par l'intervalle de temps (en secondes) que
|
|
<application>fetchmail</application> doit respecter entre chaque
|
|
consultation des serveurs listés dans le fichier
|
|
<filename>.fetchmailrc</filename>. L'exemple suivant demandera
|
|
à <application>fetchmail</application> de
|
|
récupérer le courrier toutes les 60
|
|
secondes:</para>
|
|
|
|
<screen>&prompt.user; <userinput>fetchmail -d 60</userinput></screen>
|
|
|
|
<para>Plus d'informations concernant
|
|
<application>fetchmail</application> peuvent être
|
|
trouvées sur <ulink
|
|
url="http://www.catb.org/~esr/fetchmail/"></ulink>.</para>
|
|
</sect1>
|
|
|
|
<sect1 id="mail-procmail">
|
|
<sect1info>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Marc</firstname>
|
|
<surname>Silver</surname>
|
|
<contrib>Contribution de </contrib>
|
|
</author>
|
|
</authorgroup>
|
|
</sect1info>
|
|
<title>Utiliser procmail</title>
|
|
|
|
<indexterm>
|
|
<primary>Utiliser procmail</primary>
|
|
</indexterm>
|
|
|
|
<para>L'utilitaire <application>procmail</application> est une
|
|
application extrêmement puissante utilisée pour
|
|
filtrer le courrier électronique entrant. Il permet aux
|
|
utilisateurs de définir des “règles”
|
|
qui seront utilisées sur le courrier entrant pour
|
|
effectuer des opérations particulières ou pour
|
|
transférer le courrier vers d'autres boîtes aux
|
|
lettres et/ou adresses électroniques.
|
|
<application>procmail</application> peut être
|
|
installé en utilisant le logiciel porté <filename
|
|
role="package">mail/procmail</filename>. Une fois
|
|
installé, il peut être intégré dans
|
|
la plupart des <acronym>MTA</acronym>s, consultez la
|
|
documentation de votre <acronym>MTA</acronym> pour plus
|
|
d'information. Alternativement,
|
|
<application>procmail</application> peut être
|
|
intégré en ajoutant la ligne suivante à un
|
|
fichier <filename>.forward</filename> dans le répertoire
|
|
personnel de l'utilisateur employant les fonctionnalités
|
|
de <application>procmail</application>:</para>
|
|
|
|
<programlisting>"|exec /usr/local/bin/procmail || exit 75"</programlisting>
|
|
|
|
<para>La suite de cette section présentera quelques
|
|
règles de base pour <application>procmail</application>,
|
|
avec une brève description de ce qu'elles font. Ces
|
|
règles, ainsi que d'autres, doivent être
|
|
ajoutées dans le fichier
|
|
<filename>.procmailrc</filename>, qui doit résider dans
|
|
le répertoire personnel de l'utilisateur.</para>
|
|
|
|
<para>La majorité de ces règles peut
|
|
également être trouvée dans la page de
|
|
manuel de &man.procmailex.5;.</para>
|
|
|
|
<para>Transférer tout courrier en provenance de
|
|
<literal>user@example.com</literal> vers l'adresse externe
|
|
<literal>goodmail@example2.com</literal>:</para>
|
|
|
|
<programlisting>:0
|
|
* ^From.*user@example.com
|
|
! goodmail@example2.com</programlisting>
|
|
|
|
<para>Transférer tous les courriers d'une taille
|
|
inférieure à 1000 octets vers l'adresse externe
|
|
<literal>goodmail@example2.com</literal>:</para>
|
|
|
|
<programlisting>:0
|
|
* < 1000
|
|
! goodmail@example2.com</programlisting>
|
|
|
|
<para>Mettre tout le courrier à destination de
|
|
<literal>alternate@example.com</literal> dans une boîte
|
|
aux lettres appelée
|
|
<filename>alternate</filename>:</para>
|
|
|
|
<programlisting>:0
|
|
* ^TOalternate@example.com
|
|
alternate</programlisting>
|
|
|
|
<para>Envoyer tous les courriers avec pour sujet
|
|
“Spam” vers <filename>/dev/null</filename>:</para>
|
|
|
|
<programlisting>:0
|
|
^Subject:.*Spam
|
|
/dev/null</programlisting>
|
|
|
|
<para>Une recette utile pour trier les courriers en provenance des
|
|
listes de diffusion <hostid role="domainname">&os;.org</hostid>
|
|
et placer chaque liste dans sa propre boîte aux
|
|
lettres:</para>
|
|
|
|
<programlisting>:0
|
|
* ^Sender:.owner-freebsd-\/[^@]+@FreeBSD.ORG
|
|
{
|
|
LISTNAME=${MATCH}
|
|
:0
|
|
* LISTNAME??^\/[^@]+
|
|
FreeBSD-${MATCH}
|
|
}</programlisting>
|
|
</sect1>
|
|
</chapter>
|