Czym jest przekazywanie poczty e-mail?
Przekazywanie poczty e-mail to konfiguracja routingu, która automatycznie kieruje wiadomości otrzymane na jeden adres do innego adresu docelowego. Gdy wiadomość dociera na adres przekazujący, serwer pocztowy natychmiast wysyła ją do adresu docelowego, nie przechowując jej w pierwotnej skrzynce.
Jak działa przekazywanie poczty e-mail
1. Email sent to: [email protected]
2. Mail server receives at MX: mail.example.com
3. Server checks forwarding rules
4. Email forwarded to: [email protected]
5. Team receives email (appears from original sender)
Przekazana wiadomość zachowuje informacje o pierwotnym nadawcy, dlatego odpowiedzi wracają do pierwotnego nadawcy, a nie na adres przekazujący.
Rodzaje przekazywania poczty e-mail
Proste przekazywanie
Jeden adres przekazuje pocztę do jednego miejsca docelowego:
[email protected] → [email protected]
Przekazywanie do wielu miejsc
Jeden adres przekazuje pocztę do wielu odbiorców:
[email protected] → {
}
Przekazywanie warunkowe
Przekazywanie na podstawie kryteriów:
If subject contains "urgent" → [email protected]
If from VIP domain → [email protected]
Else → [email protected]
Przekazywanie na poziomie domeny
Przekazywanie całej poczty z jednej domeny do innej:
*@old-domain.com → *@new-domain.com
Konfigurowanie przekazywania poczty e-mail
cPanel
1. Email → Forwarders
2. Add Forwarder
3. Address to Forward: [email protected]
4. Forward to: [email protected]
5. Add Forwarder
Postfix (konfiguracja w systemie Linux)
# /etc/aliases
sales: [email protected]
# Or for virtual domains
# /etc/postfix/virtual
[email protected] [email protected]
# Apply changes
newaliases # For /etc/aliases
# or
postmap /etc/postfix/virtual && systemctl reload postfix
Przekazywanie w Gmailu
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: [email protected]
5. Save changes
Google Workspace (dla całej domeny)
1. Admin Console → Apps → Google Workspace → Gmail
2. Routing → Add Route
3. For recipient: Single recipient or All recipients
4. Forward to: [email protected]
5. Options: Change route, Modify headers
Przekazywanie poczty a aliasy
| Cecha | Przekazywanie | Alias |
|---|---|---|
| Miejsce dostarczenia | Inny adres | Ta sama skrzynka |
| Przechowywanie pierwotnego adresu | Nie | Tak |
| Widoczność w skrzynce | Nie | Tak (jako alias) |
| Uwierzytelnianie | Może zaburzyć SPF/DKIM | Zachowuje uwierzytelnianie |
| Najlepsze zastosowanie | Routing zewnętrzny | Wiele adresów → jedna skrzynka |
Alias:
[email protected] } → Same mailbox
[email protected] } (both deliver to mailbox, different addresses)
Forwarding:
[email protected] → [email protected]
(only delivers to [email protected], nothing in sales mailbox)
SPF i przekazywanie poczty e-mail
Przekazywanie poczty powoduje problemy z SPF, ponieważ serwer przekazujący wysyła wiadomość w imieniu pierwotnego nadawcy:
Problem
1. Sender: [email protected] sends to [email protected]
2. Forwarder: [email protected] forwards to [email protected]
3. Final server checks SPF:
- Envelope From: [email protected]
- 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)
Rozwiązania
SRS (schemat przepisywania nadawcy):Forwarder rewrites envelope sender:
Original: MAIL FROM: <[email protected]>
Rewritten: MAIL FROM: <[email protected]>
Now SPF checks forwarder.com's SPF (passes)
Konfiguracja SRS w Postfixie:
# 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 (uwierzytelniony łańcuch odbioru):
Zachowuje wyniki uwierzytelniania podczas przekazywania:
ARC-Authentication-Results: forwarder.com;
spf=pass smtp.mailfrom=sender.com
dkim=pass header.d=sender.com
DKIM a przekazywanie
Podpisy DKIM mogą przestać działać podczas przekazywania, jeśli serwer przekazujący modyfikuje wiadomość:
Typowe modyfikacje psujące DKIM
- Dodawanie zastrzeżeń do treści wiadomości
- Dopisywanie "[FORWARDED]" do tematu
- Konwersja zwykłego tekstu do HTML
- Zmiana końców linii lub kodowania
Zachowanie DKIM
Minimalizuj modyfikacje:# Postfix: Don't add disclaimers to forwarded mail
smtpd_discard_ehlo_keywords = silent-discard
Podpisywanie DKIM przez serwer przekazujący:
# Add forwarder's DKIM signature
# Original sender's signature may break, but forwarder's passes
Najlepsze praktyki przekazywania poczty e-mail
Używaj przekazywania oszczędnie
Gdy to możliwe, preferuj aliasy lub współdzielone skrzynki:
Instead of: [email protected] → [email protected]
Use: John checks [email protected] directly via IMAP/webmail
Stosuj SRS przy przekazywaniu zewnętrznym
Jest to niezbędne, gdy przekazujesz pocztę poza swoją domenę:
Internal forwarding: [email protected] → [email protected] (safe)
External forwarding: [email protected] → [email protected] (use SRS)
Monitoruj pętle przekazywania
Zapobiegaj nieskończonemu przekazywaniu:
A forwards to B
B forwards to A
= Loop
Solution: Postfix max_hop_count limit (default 50)
Skonfiguruj powiadomienia o dostarczeniu
Otrzymuj powiadomienia, gdy przekazywanie się nie powiedzie:
# Postfix
notify_classes = bounce, resource, software
Dokumentuj reguły przekazywania
Utrzymuj ich spis:
# forwarding-rules.md
| From | To | Purpose | Owner | Created |
|------|----|---------| ------|---------|
| [email protected] | [email protected] | CRM integration | IT | 2024-01 |
Regularne audyty
Przeglądaj reguły i usuwaj nieaktualne:
# List all forwards (Postfix)
grep -v "^#" /etc/postfix/virtual | grep "@.*@"
# Check for outdated destinations
# Remove forwards for terminated employees
Typowe problemy z przekazywaniem
Przekazywanie kończy się po cichu niepowodzeniem
Objawy: wiadomość wysłana na adres przekazujący znika Przyczyny:- Adres docelowy nie istnieje
- Serwer docelowy odrzuca przekazaną wiadomość
- Wykryto i przerwano pętlę przekazywania
# Check mail logs
tail -f /var/log/mail.log | grep "forwarding"
# Test forwarding
echo "Test" | mail -s "Test" [email protected]
# Check if it arrives at destination
Błędy SPF przekazywanych wiadomości
Objawy: przekazane wiadomości są oznaczane jako spam lub odrzucane Rozwiązanie: wdrożenie SRS (zob. wyżej)Opóźnienia przekazywania
Objawy: przekazane wiadomości docierają po kilku minutach lub godzinach Przyczyny:- Zaległości w kolejce serwera przekazującego
- Greylisting po stronie odbiorcy
- Ograniczanie częstotliwości
# Check Postfix queue
mailq
# Process queue immediately
postqueue -f
Odbiorca oznacza przekazaną pocztę jako spam
Objawy: legalne przekazane wiadomości trafiają do spamu Przyczyny:- Niepowodzenia SPF/DKIM
- Adres IP serwera przekazującego ma złą reputację
- Odbiorca nie ufa serwerowi przekazującemu
- Wdróż ARC na serwerze przekazującym
- Dodaj adres IP serwera przekazującego do listy zaufanych odbiorcy
- Użyj SRS do przepisywania nadawcy koperty
Przekazywanie dla konkretnych zastosowań
Przekazywanie tymczasowe (urlop)
# .forward file (user home directory)
\myuser, [email protected]
# Delivers to both user's mailbox and colleague
Przekazywanie z lokalną kopią
# Keep copy in original mailbox while forwarding
# Postfix virtual:
Dystrybucja do działu
# /etc/aliases
sales: [email protected], [email protected], [email protected]
Integracja z usługą zewnętrzną
# Forward to ticket system
[email protected] → [email protected]
# Forward to Slack email
Kwestie bezpieczeństwa
Przekazywanie na prywatny adres e-mail
Ryzyka:
- Dane firmowe na niezabezpieczonych kontach prywatnych
- Utrata kontroli nad zgodnością
- Brak kopii zapasowej i archiwizacji
Ujawnianie przekazywania zewnętrznego
Uwzględnij RODO: przekazywanie może stanowić udostępnianie danych.
Przekazywanie jako wektor ataku
Przejęte konto może utworzyć regułę przekazywania w celu wyprowadzenia wiadomości:
# Detection
# Alert on new forwarding rules:
monitor /etc/postfix/virtual for changes
monitor Exchange/M365 forwarding rule creations
Testowanie przekazywania poczty e-mail
Testuj łańcuch przekazywania:# Send test email
echo "Test forwarding" | mail -s "Forwarding Test" [email protected]
# Check logs on forwarding server
tail -f /var/log/mail.log
# Verify arrival at destination
# Check destination mailbox
Weryfikuj zachowanie 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
Przekazywanie poczty e-mail jest użyteczne, ale wymaga starannej konfiguracji, aby zachować dostarczalność i bezpieczeństwo.