RFC 3834 : Réponses Automatiques dans les Courriels
Pourquoi cela existe
Les réponses automatiques d'email sont omniprésentes : messages de vacances/absence du bureau, accusés de réception, filtres anti-spam par défi-réponse, accusés de ticket système et digests de notifications. Sans règles, les auto-répondeurs créent des boucles de rétroaction dangereuses :
- L'auto-répondeur d'Alice répond au message de Bob.
- L'auto-répondeur de Bob répond à la réponse automatique d'Alice.
- L'auto-répondeur d'Alice répond à la réponse automatique de Bob.
- Répétition infinie, inondant les deux boîtes de réception et le réseau.
RFC 3834 prévient cela en définissant le champ d'en-tête Auto-Submitted et un ensemble de règles que chaque répondeur automatique doit suivre.
Comment cela fonctionne
L'en-tête Auto-Submitted
Chaque message généré automatiquement doit inclure un en-tête Auto-Submitted. Les valeurs définies sont :
| Valeur | Signification | Exemple |
|---|---|---|
no |
Le message a été créé par un humain (par défaut si l'en-tête est absent) | Email normal composé par une personne |
auto-generated |
Le message a été généré automatiquement, pas en réponse à un autre message | Rapports programmés, alertes de surveillance, notifications système |
auto-replied |
Le message est une réponse automatique à un autre message | Réponses de vacances, absence du bureau, accusés de réception |
auto-notified |
Le message est une notification automatique concernant un autre message | Notifications de statut de livraison, notifications de disposition |
; Réponse de vacances From: alice@example.com To: bob@example.com Subject: Re: Project update Auto-Submitted: auto-replied In-Reply-To: <msg-id-from-bob@example.com> Je suis absent du bureau jusqu'au 15 janvier. Pour les questions urgentes, contactez charlie@example.com.
La règle fondamentale : ne jamais répondre automatiquement aux réponses automatiques
Avant d'envoyer une réponse automatique, le répondeur doit vérifier si le message entrant est lui-même automatique. Si c'est le cas, aucune réponse automatique n'est envoyée. Les vérifications sont :
-
Vérifiez l'en-tête
Auto-Submitted. S'il est présent et non égal àno, ne répondez pas. -
Vérifiez le chemin de retour vide. Si l'expéditeur d'enveloppe (MAIL FROM) est
<>, ne répondez pas. Les rebonds et les DSN utilisent un chemin de retour vide. -
Vérifiez l'en-tête
Precedence. Si la valeur estbulk,junkoulist, ne répondez pas. (Ceci est une convention antérieure à RFC 3834 mais toujours largement utilisée.)
; Le message entrant a un en-tête Auto-Submitted Auto-Submitted: auto-replied ; Décision : NE PAS répondre automatiquement ; Cela prévient le scénario de boucle infinie
Limitation de débit
RFC 3834 exige que les auto-répondeurs limitent les réponses au même expéditeur. La pratique standard :
- Envoyer au maximum une réponse automatique par expéditeur par période de temps (généralement une par jour, ou une par période de vacances).
- Suivre les expéditeurs qui ont déjà reçu une réponse automatique.
- Ne pas envoyer de réponses automatiques dupliquées à la même personne pour la même période de vacances.
Exigences d'enveloppe et d'en-tête
Une réponse automatique doit :
- Utiliser un expéditeur d'enveloppe vide (
MAIL FROM:<>) ou l'adresse du répondeur. Ne jamais utiliser l'adresse de l'expéditeur original comme expéditeur d'enveloppe de la réponse automatique. - Définir
Auto-Submitted: auto-replied(ouauto-generatedpour les automatisations sans réponse). - Inclure les en-têtes
In-Reply-ToetReferencespointant vers le message original, afin que la réponse automatique soit correctement liée au fil. - Diriger la réponse vers
Return-Pathou l'expéditeur d'enveloppe, pas vers l'adresse From. Cela garantit que les rebonds de la réponse automatique ne frappent pas l'expéditeur humain original.
Détails techniques clés
Messages qui ne doivent pas déclencher de réponses automatiques
RFC 3834 énumère les cas spécifiques où les réponses automatiques doivent être supprimées :
- Messages avec
Auto-Submitteddéfini sur une valeur autre queno - Messages avec un expéditeur d'enveloppe vide (
MAIL FROM:<>) - Messages envoyés à une liste de diffusion (vérifiez
List-Id,List-UnsubscribeouPrecedence: list) - Messages où l'expéditeur semble être une adresse daemon ou système (par exemple,
MAILER-DAEMON,postmaster) - Messages qui sont eux-mêmes des notifications de rebond (DSN)
Auto-Submitted vs. Precedence
L'en-tête Precedence plus ancien précède RFC 3834 et n'est pas formellement standardisé, mais reste largement utilisé :
; Approche héritée (toujours courante) Precedence: bulk ; Approche conforme aux normes Auto-Submitted: auto-generated ; Meilleure pratique : inclure les deux pour une compatibilité maximale Precedence: bulk Auto-Submitted: auto-generated
Les auto-répondeurs doivent vérifier les deux en-têtes. Certains systèmes plus anciens ne définissent que Precedence ; certains systèmes plus récents ne définissent que Auto-Submitted. Vérifier les deux prévient les boucles avec l'un ou l'autre.
L'en-tête X-Auto-Response-Suppress
Microsoft Exchange a introduit un en-tête non standard mais largement supporté :
X-Auto-Response-Suppress: All
Les valeurs possibles incluent DR (rapports de livraison), NDR (rapports de non-livraison), RN (notifications de lecture), NRN (notifications de non-lecture), OOF (absence du bureau) et AutoReply. De nombreux systèmes d'envoi définissent All sur les emails transactionnels et marketing pour supprimer toutes les réponses automatiques d'Exchange/Outlook.
Détection des messages de liste de diffusion
Les réponses automatiques aux messages de liste de diffusion sont particulièrement problématiques — elles vont à la liste entière. Vérifiez :
; N'importe lequel de ceux-ci indique un message de liste List-Id: <dev.lists.example.com> List-Unsubscribe: <mailto:unsub@lists.example.com> Precedence: list X-Mailing-List: dev@lists.example.com
Exemples
Une réponse de vacances bien formée
; Enveloppe MAIL FROM:<> RCPT TO:<bob@example.com> ; En-têtes From: alice@example.com To: bob@example.com Date: Mon, 10 Mar 2025 09:00:00 +0000 Subject: Re: Q1 Planning Auto-Submitted: auto-replied In-Reply-To: <orig-msg-id@example.com> References: <orig-msg-id@example.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Merci pour votre email. Je suis absent du bureau du 8 au 15 mars avec accès limité aux emails. Pour les questions urgentes, veuillez contacter charlie@example.com.
Une notification système
From: noreply@monitoring.example.com To: ops-team@example.com Subject: [ALERT] Utilisation du CPU supérieure à 90 % sur web-prod-03 Auto-Submitted: auto-generated Precedence: bulk X-Auto-Response-Suppress: All Le serveur web-prod-03 a dépassé le seuil du CPU. Utilisation actuelle : 94 %. Enquêtez immédiatement.
Erreurs courantes
-
Ne pas définir
Auto-Submittedsur les messages automatisés. C'est l'élément unique le plus important. Sans cela, chaque répondeur de vacances du destinataire répondra à votre message automatisé, et leurs réponses peuvent déclencher d'autres automatisations de votre côté. -
Répondre automatiquement aux messages avec chemin de retour vide. Les rebonds utilisent
MAIL FROM:<>. Y répondre crée une boucle de rebond : votre réponse rebondit, générant un autre rebond, auquel votre système essaie de répondre à nouveau. - Répondre automatiquement aux listes de diffusion. Envoyer une réponse absence du bureau à une liste de diffusion envoie du courrier indésirable à chaque abonné. Vérifiez toujours les en-têtes List-Id et Precedence avant de répondre automatiquement.
- Aucune limitation de débit. Sans limitation de débit, un utilisateur qui vous envoie 50 messages reçoit 50 réponses de vacances identiques. Limitez à une réponse automatique par expéditeur par période de temps.
- Utiliser l'adresse From comme cible de réponse automatique. Les réponses automatiques doivent aller à Return-Path (expéditeur d'enveloppe), pas à l'adresse From. L'adresse From peut être une liste de diffusion, une adresse sans réponse ou différente de l'expéditeur réel.
- Inclure le corps du message original dans les réponses automatiques. Certains auto-répondeurs citent l'intégralité du message original. Ceci est un risque pour la confidentialité (la réponse automatique peut être transférée) et gaspille la bande passante.
-
Ne pas définir
X-Auto-Response-Suppress: Allsur les emails transactionnels. Si vous envoyez des confirmations de commande ou des réinitialisations de mot de passe, ajoutez cet en-tête pour empêcher les utilisateurs d'Exchange/Outlook d'envoyer des réponses absence du bureau à vos messages automatisés.
Impact sur la délivrabilité
- Les boucles de réponse automatique endommagent la réputation de l'expéditeur. Si votre système crée une boucle, le pic de volume ressemble à un envoi de spam aux serveurs récepteurs. Votre IP d'envoi peut être mise sur liste noire en quelques heures.
-
Les réponses automatiques correctement marquées sont filtrées par les destinataires. Gmail et d'autres fournisseurs classent automatiquement les messages avec des en-têtes
Auto-Submitted, réduisant les risques que votre réponse automatique soit marquée comme spam. -
Définir
Auto-SubmittedetPrecedencesur tous les emails automatisés. Cela inclut les emails transactionnels, les alertes, les rapports et tout message non composé par un humain. Cela prévient les réponses de vacances d'inonder votre file d'attente entrante. -
Le chemin de retour vide prévient les cascades de rebond. Utiliser
MAIL FROM:<>pour les réponses automatiques garantit que si la réponse elle-même rebondit, le rebond n'est livré nulle part — cassant la cascade potentielle. - Surveillez votre entrée pour les inondations de réponses automatiques. Un pic de réponses de vacances ou d'accusés de réception entrants indique souvent que vous avez oublié de définir les en-têtes de suppression de réponse automatique sur un nouveau modèle de message.