Che cosa è Email Forwarding?
L'inoltro e-mail è una configurazione di routing della posta che reindirizza automaticamente i messaggi ricevuti in un indirizzo e-mail a un altro indirizzo di destinazione. Quando una email arriva all'indirizzo di invio, il server di posta lo invia immediatamente all'indirizzo di destinazione senza memorizzarlo nella casella di posta originale.
Come funziona l'invio di e-mail
1. Email sent to: sales@example.com
2. Mail server receives at MX: mail.example.com
3. Server checks forwarding rules
4. Email forwarded to: team@company.com
5. Team receives email (appears from original sender)
L'email inoltrata conserva le informazioni del mittente originale, quindi le risposte tornano al mittente originale, non all'indirizzo di invio.
Tipi di inoltro e-mail
Semplice inoltro
Un indirizzo inoltra ad una destinazione:
info@example.com → admin@example.com
Multi-Destination Forwarding
Un indirizzo inoltra a più destinatari:
support@example.com → {
tech-team@example.com,
support-lead@example.com,
ticket-system@helpdesk.com
}
Inoltro condizionale
Avanti in base ai criteri:
If subject contains "urgent" → priority@example.com
If from VIP domain → executive@example.com
Else → general@example.com
Domain-Level Forwarding
Inoltra tutte le email da un dominio all'altro:
*@old-domain.com → *@new-domain.com
Configurazione dell'Inoltro Email
cPanel #
1. Email → Forwarders
2. Add Forwarder
3. Address to Forward: sales@example.com
4. Forward to: destination@example.com
5. Add Forwarder
Postfix (Linux)
# /etc/aliases
sales: destination@example.com
# Or for virtual domains
# /etc/postfix/virtual
sales@example.com destination@example.com
# Apply changes
newaliases # For /etc/aliases
# or
postmap /etc/postfix/virtual && systemctl reload postfix
Gmail Forwarding
1. Settings → Forwarding and POP/IMAP
2. Add a forwarding address
3. Verify forwarding address (click link in confirmation email)
4. Enable forwarding
5. Choose what to do with original (keep, archive, delete)
Microsoft 365
1. Admin Center → Users → Active users
2. Select user → Mail tab
3. Email forwarding → Manage email forwarding
4. Forward all email to: destination@example.com
5. Save changes
Google Workspace (Domain-Wide)
1. Admin Console → Apps → Google Workspace → Gmail
2. Routing → Add Route
3. For recipient: Single recipient or All recipients
4. Forward to: destination@example.com
5. Options: Change route, Modify headers
Email Forwarding vs. Aliases
| Caratteristica | Inoltro | Alias |
|---|---|---|
| Luogo di consegna | Un altro indirizzo | Stesso mailbox |
| Conservazione dell'indirizzo originale | No. | Sì. |
| Appare nella casella di posta | No. | Sì (come alias) |
| Autenticazione | Può rompere SPF/DKIM | Mantiene l'autenticazione |
| Il meglio per | Routing esterno | indirizzi multipli → una casella di posta |
Esemplare.
Alias:
sales@example.com } → Same mailbox
contact@example.com } (both deliver to mailbox, different addresses)
Forwarding:
sales@example.com → john@gmail.com
(only delivers to john@gmail.com, nothing in sales mailbox)
SPF e Email Forwarding
L'inoltro di posta elettronica crea sfide SPF perché il server di invio invia e-mail per conto del mittente originale:
#### Il problema
1. Sender: alice@sender.com sends to sales@forwarder.com
2. Forwarder: sales@forwarder.com forwards to bob@final.com
3. Final server checks SPF:
- Envelope From: alice@sender.com
- Sending IP: forwarder.com's IP
- SPF Check: Does sender.com authorize forwarder.com's IP?
- Result: Usually FAIL (forwarder not in sender.com's SPF)
Soluzioni
SRS (Sender Rewriting Scheme)
Forwarder rewrites envelope sender:
Original: MAIL FROM: <alice@sender.com>
Rewritten: MAIL FROM: <srs=hash=sender.com=alice@forwarder.com>
Now SPF checks forwarder.com's SPF (passes)
Configurazione di Postfix SRS:
# Install postsrsd
apt-get install postsrsd
# /etc/postfix/main.cf
sender_canonical_maps = tcp:127.0.0.1:10001
recipient_canonical_maps = tcp:127.0.0.1:10002
systemctl restart postsrsd postfix
ARC (catena ricevuta autenticata):
Conserva i risultati dell'autenticazione attraverso l'inoltro:
ARC-Authentication-Results: forwarder.com;
spf=pass smtp.mailfrom=sender.com
dkim=pass header.d=sender.com
DKIM e inoltro
Le firme DKIM possono rompersi durante l'inoltro se il inoltratore modifica il messaggio:
Modifiche comuni Quella rottura
- Aggiungere disclaimer al corpo del messaggio
- Appending "[FORWARDED]" a soggetto linea
- Convertire testo semplice in HTML
- Modifica delle terminazioni di linea o codifica
Preservare DKIM
Minimizzare modifiche:# Postfix: Don't add disclaimers to forwarded mail
smtpd_discard_ehlo_keywords = silent-discard
DKIM firma da forwarder
# Add forwarder's DKIM signature
# Original sender's signature may break, but forwarder's passes
Migliori Pratiche per Inoltro Email
Use Forwarding Sparingly
Preferire alias o caselle di posta condivise quando possibile:
Instead of: info@example.com → john@gmail.com
Use: John checks info@example.com directly via IMAP/webmail
#### Implement SRS for External Forwarding
Essenziale quando si inoltra al di fuori del proprio dominio:
Internal forwarding: sales@example.com → team@example.com (safe)
External forwarding: sales@example.com → team@gmail.com (use SRS)
Monitorare le operazioni di inoltro
Prevenire in avanti infinito:
A forwards to B
B forwards to A
= Loop
Solution: Postfix max_hop_count limit (default 50)
# Imposta le notifiche di consegna
Essere avvisati quando l'inoltro fallisce:
# Postfix
notify_classes = bounce, resource, software
Regole di inoltro del documento
Mantenere l'inventario:
# forwarding-rules.md
| From | To | Purpose | Owner | Created |
|------|----|---------| ------|---------|
| sales@example.com | crm@example.com | CRM integration | IT | 2024-01 |
Audits regolari
Recensione e pulizia:
# List all forwards (Postfix)
grep -v "^#" /etc/postfix/virtual | grep "@.*@"
# Check for outdated destinations
# Remove forwards for terminated employees
Questioni comuni di inoltro
Forwarding Silently Fails
Sintomi: E-mail inviata all'indirizzo di spedizione scomparePerche'?
- L'indirizzo di destinazione non esiste
- Il server di destinazione rifiuta la posta inoltrata
- Avanzamento rilevato e rotto
♪Debug ♪
# Check mail logs
tail -f /var/log/mail.log | grep "forwarding"
# Test forwarding
echo "Test" | mail -s "Test" forwarding-address@example.com
# Check if it arrives at destination
SPF Falls on Forwarded Mail
Simptoms. E-mail inoltrate contrassegnate come spam o rifiutate
Solution: Implement SRS (vedi sopra)Traduzione:
Simptoms. Le email inoltrate arrivano minuti o ore in ritardo
Perche'?
- Queue backlogs sul server di inoltro
- Greylisting a destinazione
- Tasso di limitazione
# Solution #
# Check Postfix queue
mailq
# Process queue immediately
postqueue -f
Destinazione Marchi Inviato Mail come Spam
Sintomi: Le email inviate legittime vanno allo spamPerche'?
- guasti SPF/DKIM
- Forwarder IP ha scarsa reputazione
- La destinazione non si fida di forwarder
# Soluzioni #
- Implementare ARC sul server di inoltro
- Whitelist IP in avanti a destinazione
- Utilizzare SRS per la riscrittura della busta
Inoltro per casi di utilizzo specifici
Temporary Forwarding (Vacation)
# .forward file (user home directory)
\myuser, colleague@example.com
# Delivers to both user's mailbox and colleague
Invio con copia locale
# Keep copy in original mailbox while forwarding
# Postfix virtual:
user@example.com user@example.com, forward@destination.com
Distribuzione del Dipartimento
# /etc/aliases
sales: john@example.com, jane@example.com, crm-system@tools.com
Integrazione dei servizi esterni
# Forward to ticket system
support@example.com → ticket-RANDOM@helpdesk.io
# Forward to Slack email
alerts@example.com → workspace.channel.ABC123@example.slack.com
Considerazioni di sicurezza
Trasmissione a posta personale
Rischi:
- Dati aziendali su account personali non garantiti
- Perdita del controllo di conformità
- Nessun backup/architettura
Divulgazione esterna
Considerazioni GDPR: l'inoltro può costituire la condivisione dei dati.
Inoltro come vettore di attacco
L'account integrato prevede l'inoltro per esfiltrare le email:
# Detection
# Alert on new forwarding rules:
monitor /etc/postfix/virtual for changes
monitor Exchange/M365 forwarding rule creations
E-mail di prova inoltro
Test forward chain:# Send test email
echo "Test forwarding" | mail -s "Forwarding Test" source@example.com
# Check logs on forwarding server
tail -f /var/log/mail.log
# Verify arrival at destination
# Check destination mailbox
Verificare la conservazione SPF/DKIM:
Send email through forwarding chain
Check authentication headers at destination:
Authentication-Results: destination.com;
spf=pass (forwarder: domain of source.com designates <IP> as permitted sender)
dkim=pass header.d=source.com
L'inoltro e-mail è utile ma richiede una configurazione attenta per mantenere la consegna e la sicurezza.