Geri Dönüş Adresi

E-posta ve Güvenlik
E-posta teslim edilemediğinde teslim edilememe raporları (geri dönüşler) için kullanılan dönüş adresi.
← Sözlüğe Dön

Geri Dönüş Adresi Nedir?

Geri dönüş adresi, return path veya envelope sender olarak da adlandırılır ve bir e-posta teslim edilemediğinde teslim edilememe raporlarını (NDR) alan e-posta adresidir. Bu adres, alıcıların gördüğü "From" adresinden ayrıdır ve yalnızca otomatik teslimat bildirimleri için kullanılır.

Geri Dönüş Adresleri Nasıl Çalışır?

E-posta iletimi iki adres kümesini kullanır:

Header From (alıcıya görünür):
From: John Doe <[email protected]>
Envelope From (SMTP düzeyinde, geri dönüşler için kullanılır):
MAIL FROM: <[email protected]>

Teslimat başarısız olduğunda alıcı sunucu geri dönüşü header From adresine değil, envelope sender adresine gönderir.

SMTP Görüşmesi Örneği

Client: MAIL FROM: <[email protected]>

Server: 250 OK

Client: RCPT TO: <[email protected]>

Server: 550 No such user here

Client: QUIT

# Later, server sends bounce to [email protected]

E-posta Geri Dönüş Türleri

Kalıcı Geri Dönüşler

Kalıcı teslimat hataları:

İşlem: Adresi hemen posta listesinden çıkarın.

Geçici Geri Dönüşler

Geçici hatalar:

İşlem: Teslimatı yeniden deneyin, birden fazla geçici geri dönüşten sonra adresi çıkarın.

Engelleme Geri Dönüşleri

Teslim edilebilirlik sorunları:

İşlem: Gönderen itibarını ve kimlik doğrulamasını araştırın.

Geri Dönüş Adresi Yapılandırması

E-posta Başlıklarında Return Path Ayarlama

PHP (mail işlevi):
$to = "[email protected]";

$subject = "Test Email";

$message = "Email body";

$headers = "From: [email protected]\r\n";

$headers .= "Return-Path: [email protected]\r\n";

mail($to, $subject, $message, $headers, "-f [email protected]");

PHPMailer:
$mail = new PHPMailer();

$mail->From = "[email protected]";

$mail->Sender = "[email protected]"; // Return path

$mail->addAddress("[email protected]");

$mail->Subject = "Test Email";

$mail->send();

Postfix (SMTP):
# /etc/postfix/main.cf

sender_canonical_maps = hash:/etc/postfix/sender_canonical

# /etc/postfix/sender_canonical

@example.com [email protected]

# Apply changes

postmap /etc/postfix/sender_canonical

systemctl reload postfix

Özel Geri Dönüş Yönetimi Hizmetleri

Çoğu e-posta hizmet sağlayıcısı geri dönüş yönetimi sunar:

Amazon SES:
{

"Message": {

"Subject": "Test",

"From": "[email protected]",

"ReturnPath": "[email protected]"

}

}

SendGrid:
const msg = {

to: '[email protected]',

from: '[email protected]',

replyTo: '[email protected]',

return_path: '[email protected]',

subject: 'Test Email',

text: 'Email body'

};

Geri Dönüş Adresi Adlandırma Kuralları

Alt Alan Adı Yaklaşımı

[email protected]           # General bounces

[email protected] # No-reply emails

[email protected] # Returns/receipts

Kampanyaya Özel

Kampanya başına geri dönüşleri izleyin:

[email protected]

[email protected]

[email protected]

Değişken Envelope Return Path (VERP)

Alıcıyı geri dönüş adresinde kodlayın:

Sending to: [email protected]

Return path: [email protected]

When bounce arrives at bounces+*, parse to identify failed recipient

Geri Dönüş İletilerini İşleme

Otomatik Geri Dönüş Ayrıştırma

Python Örneği:
import email

from email import policy

def parse_bounce(raw_email):

msg = email.message_from_string(raw_email, policy=policy.default)

# Extract bounce type

if "550" in msg.get_payload():

return "hard_bounce"

elif "452" in msg.get_payload():

return "soft_bounce"

# Extract failed recipient

for part in msg.walk():

if part.get_content_type() == "message/delivery-status":

# Parse delivery status

pass

return bounce_info

# Integrate with mailing list to remove hard bounces

Webhook Tabanlı Geri Dönüş Yönetimi

Modern ESP'ler webhook sağlar:

SendGrid Webhook'u:
POST /bounce-webhook

{

"email": "[email protected]",

"event": "bounce",

"reason": "550 5.1.1 User unknown",

"type": "blocked",

"status": "5.0.0"

}

İşlem: E-postayı geri dönmüş olarak işaretlemek için veritabanını güncelleyin.

SPF ve Geri Dönüş Adresleri

SPF, From başlığını değil envelope sender'ı (geri dönüş adresini) denetler:

Message:

From: [email protected] (header)

Return-Path: [email protected] (envelope)

SPF Check:

Queries: mail-server.com TXT record (not example.com)

Must include sending IP in mail-server.com's SPF

Geri Dönüş Alan Adı SPF Yapılandırması

bounces.example.com.    IN    TXT    "v=spf1 include:_spf.sendgrid.net ~all"

Geri dönüş alt alan adınızın gönderim altyapınız için uygun SPF kayıtlarına sahip olduğundan emin olun.

Geri Dönüş Adresi İçin En İyi Uygulamalar

Özel Bir Geri Dönüş Adresi Kullanın

Geri dönüşler için hiçbir zaman birincil e-posta adresinizi kullanmayın:

# Bad

Return-Path: [email protected]

# Good

Return-Path: [email protected]

Geri Dönüş Oranlarını İzleyin

Geri dönüş oranıDeğerlendirmeİşlem
< 2%Sağlıklıİzlemeye devam edin
2-5%Endişe vericiE-posta listesi kalitesini denetleyin
5-10%KötüListe hemen temizlenmeli
> 10%KritikTeslim edilebilirlik risk altında

Geri Dönüş İşlemeyi Uygulayın

Kalıcı geri dönüşlerin çıkarılmasını otomatikleştirin:

-- Mark emails with hard bounces

UPDATE mailing_list

SET status = 'bounced', bounce_count = bounce_count + 1

WHERE email IN (SELECT email FROM recent_hard_bounces);

-- Remove after 3 hard bounces

DELETE FROM mailing_list

WHERE bounce_count >= 3;

İşlemsel ve Pazarlama Geri Dönüşlerini Ayırın

[email protected]  # Order confirmations, receipts

[email protected] # Newsletters, campaigns

Her tür için farklı geri dönüş oranları beklenir.

Geri Dönüş İşleme Otomasyonu Kurun

Cron İşi Örneği:
#!/bin/bash

# Process bounces every hour

# Fetch bounces from IMAP

fetchmail -c /etc/fetchmailrc

# Parse and update database

/usr/local/bin/process-bounces.py

# Clean up processed bounces older than 30 days

find /var/mail/bounces -mtime +30 -delete

Backscatter ve Geri Dönüş Güvenliği

Backscatter Sorunu

Sunucunuz spam'i kabul edip ardından geri döndürdüğünde sahte adreslere ileti gönderirsiniz:

1. Spammer sends email with forged From

2. Your server accepts it

3. Your server realizes it's spam/invalid

4. Your server bounces to forged From address

5. Innocent party receives bounce (backscatter)

Çözüm: Kabul edip geri döndürmek yerine SMTP zamanında reddedin:
# Postfix: Reject unknown users at SMTP time

smtpd_recipient_restrictions = reject_unauth_destination

local_recipient_maps = hash:/etc/postfix/local_recipients

Geri Dönüş Sahteciliği

Saldırganlar geri dönüş iletilerini şu amaçlarla sahteleyebilir:

Doğrulama:

Yaygın Geri Dönüş Senaryoları

Senaryo 1: Tüm E-postalar Geri Dönüyor

Neden: SPF hatası, IP kara listesi veya sunucu itibarı Kontrol: SPF kayıtları, gönderen IP itibarı, DMARC raporları

Senaryo 2: Geri Dönüşler Alınamıyor

Neden: Geri dönüş adresi yanlış yapılandırılmış veya mevcut değil Kontrol: Geri dönüş alan adı için MX kayıtları, posta kutusunun varlığı

Senaryo 3: Yüksek Geçici Geri Dönüş Oranı

Neden: Alıcı sunucuların aşırı yüklenmesi, hız sınırlaması, büyük iletiler Kontrol: Gönderim hızı, ileti boyutu, alıcı sunucusu hataları

Senaryo 4: Geri Dönüş Döngüleri

Neden: Geri dönüş adresi otomatik yanıtı tetikliyor, bu da başka bir geri dönüş oluşturuyor Kontrol: Geri dönüş adreslerindeki otomatik yanıtlayıcıları devre dışı bırakın

Geri Dönüş İşlemeyi Test Etme

Geçersiz alıcıyla test e-postası gönderin:
# Test bounce to invalid address

swaks --to [email protected] \

--from [email protected] \

--server mx.test-domain.com

# Check if bounce arrives at [email protected]

Geri dönüş alan adı için SPF'yi doğrulayın:
dig bounces.example.com TXT

# Should show SPF record with authorized senders

Uygun geri dönüş adresi yönetimi, gönderen itibarını, liste temizliğini ve teslim edilebilirliği korumak için kritik öneme sahiptir.

Bu Bilgiyi Uygulamaya Koyun

Alan adı uygunluğunu, durumunu ve daha fazlasını kontrol etmek için DomScan API'sini kullanın.