E-posta

h/m wiki sitesinden
08.02, 30 Nisan 2023 tarihinde Admin (mesaj | katkılar) tarafından oluşturulmuş 207 numaralı sürüm (→‎Hazırlıklar)
Plinth Postfix / Dovecot (E-Posta) Web Arayüzü

Hazırlıklar

Evinizdeki sunucuda e-posta hizmeti çalıştırmak için aşağıdaki hazırlıkları önceden yapabilirsiniz.

Belirtilen hazırlıklar Türk Telekom (TT) aboneleri için denenmiştir. Diğer servis sağlayıcıların yöntemleri farklı yolabilir.

  • Statik IP edinin.
  • Servis sağlayıcınız ile iletişime geçerek tarafınıza tahsis edilen IP üzerinden port 25 açılmasını talep edin.
  • TT'un reverse-dns@turktelekom.com.tr e-posta adresine, aboneliğinizin kayıtlı olduğu e-posta adresi üzerinden PTR / reverse-DNS talebinde bulunun. Örnek e-posta metni aşağıda paylaşılmıştır.

Örnek Metin (Genişletin)

Sayın Yetkili,

Evimde kurmuş olduğum e-posta sunucusu, ne yazık ki DNS kaydı olmadığı için spam filtrelerini aşamamaktadır. Sizden ricam, aşağıda paylaştığım IP adresime Reverse-DNS kaydı olarak belirttiğim alan adını girebilirseniz, bu problemin çözülmesini sağlayacaksınız.

Statik IP Adresim: <ip_adresiniz>
Mail Alan Adı: <alan_adınız>

İlginize şimdiden teşekkür eder, iyi çalışmalar dilerim.

İşlemin gerçekleşip gerçekleşmesiğini nslookup -q=PTR ip_adresiniz komutuyla sorgulayabilrsiniz.

Yukarıdaki hazırlıklarla berber Freedombox E-Posta uygulamasını kurduğunuzda, çalışır bir posta sunucunuz olacak. Ancak, sunucunuzda aşağıdaki güvenlik önlemleri size daha etkin ve güvenli kullanım sağlayacaktır.

E-postalarınızı "Evolution" benzeri bir masaüstü istemci ile yönetebileceğiniz gibi, arzu ederseniz Freedombox ile yüklü gelen Roundcube üzerinden tarayıcınızdan da faydalanabilirsiniz.

Güvenlik

Sağlıklı bir e-posta hesabının “spam” olarak değerlendirilmemesi için birtakım doğrulama özellikleri barındırması gerekir. Bunların başında SPF, DMARC, rPTS (PTS veya rDNS) ve DKIM gelir. Aşağıda bu ayarları yapılandırabileceğiniz yöntemler paylaşılmıştır.

Başka bir e-posta sunucusunun sizin namınıza gönderi iletmesine / yönlendirmesi bir risktir. E-posta hesabınızı uluorta görünebileceği mecralardan uzak tutun.

DNS Sunucu Ayarları[1]

  • DNS sunucunuzda DMARC yapılandırmanız için
v=DMARC1; p=reject; rua=mailto:eposta@adresiniz; ruf=mailto:eposta@adresiniz; fo=1; adkim=s; aspf=s;
  • Benzer şekilde, yine DNS sunucunuzda SPF yapılandırmanız için
v=spf1 mx a ip4:statik_IP_adresiniz -all

Sunucunuzda kayıtlı ve e-posta hizmetinden yararlanmayacağınız başka alan adları varsa, onlar için de v=spf1 -all değerini girebilirsiniz.

DKIM Ayarları

DKIM doğrulaması, iletmiş olduğunuz e-postanın sizin sunucunuzdan çıktığının doğrulanması içindir. Freedombox'ın E-Posta sayfasında belirtilen DKIM kodu, aslında bir public.key'dir. Bu değeri, DNS sunucunuza işlemeniz gerekir. Aşağıda paylaşılan DKIM ayarlarını tamamlamanız halinde, sunucunuz her ileteceği postayı kendi üzerinde barındırdığı private.key ile imzalar.

  • Sunucuda nano /etc/rspamd/local.d/dkim_signing.conf komuyla rspamd dkim modul[2] dosyanızı oluşturun. Aşağıda örnek verilen içeriği, alanadiniz (uzantısıyla beraber) ile belirtilen yerleri düzenleyerek kullanabilirsiniz.

Rspamd Modül Örneği (Genişletin)

# local.d/dkim_signing.conf

# If false, messages with empty envelope from are not signed
allow_envfrom_empty = true;

# If true, envelope/header domain mismatch is ignored
allow_hdrfrom_mismatch = false;

# If true, multiple from headers are allowed (but only first is used)
allow_hdrfrom_multiple = false;

# If true, username does not need to contain matching domain
allow_username_mismatch = true;

# Default path to key, can include '$domain' and '$selector' variables
path = "/var/lib/rspamd/dkim/$domain.$selector.key";

# Default selector to use
selector = "dkim";

# If false, messages from authenticated users are not selected for signing
sign_authenticated = true;

# If false, messages from local networks are not selected for signing
sign_local = true;

# Map file of IP addresses/subnets to consider for signing
# sign_networks = "/some/file"; # or url

# Symbol to add when message is signed
symbol = "DKIM_SIGNED";

# Whether to fallback to global config
try_fallback = true;

# Domain to use for DKIM signing: can be "header" (MIME From), "envelope" (SMTP From) or "auth" (SMTP username)
use_domain = "header";

# Domain to use for DKIM signing when sender is in sign_networks ("header"/"envelope"/"auth")
#use_domain_sign_networks = "header";

# Domain to use for DKIM signing when sender is a local IP ("header"/"envelope"/"auth")
#use_domain_sign_local = "header";

# Whether to normalise domains to eSLD
use_esld = false;

# Whether to get keys from Redis
use_redis = false;

# Hash for DKIM keys in Redis
key_prefix = "DKIM_KEYS";

# map of domains -> names of selectors (since rspamd 1.5.3)
selector_map = "/etc/rspamd/dkim_selectors.map";

# map of domains -> paths to keys (since rspamd 1.5.3)
#path_map = "/etc/rspamd/dkim_paths.map";

# If `true` get pubkey from DNS record and check if it matches private key
check_pubkey = true;
# Set to `false` if you want to skip signing if public and private keys mismatch
allow_pubkey_mismatch = false;


# Domain specific settings
alanadiniz {

  # Domain name is used as key
  alanadiniz {

    # Private key path
    path = "/var/lib/rspamd/dkim/alanadiniz.dkim.key";

    # Selector
    selector = "ds";

  }

}
  • nano /etc/rspamd/local.d/dkim_selectors.map komutuyla rspamd dkim modulü için değişkenlerini tanımlayın. Aşağıdaki içeriği, yine 'alanadiniz ibaresini gerekli şekilde düzenleyerek olduğu gibi kullanabilirsiniz.
{alanadiniz.com} dkim
  • Aşağıdaki komutları sudo ile kullanabilirsiniz.
chown _rspamd:_rspamd /var/lib/rspamd/dkim/alanadiniz.dkim.key
chmod 640 /var/lib/rspamd/dkim/alanadiniz.dkim.key
systemctl restart rspamd

ARC Yapılandırması

ARC, e-postanızın bir sunucudan diğerine yönlendirmesi halinde gerekli olan bir güvenlik anahtarıdır. Doğrulama amacı, e-postanın alıcısına arada bir üçüncü taraf olmadan iletilmediğinin teyidi içindir.

Eğer yukarıda paylaşılan DKIM yapılandırmanızın çalıştığını gördüyseniz, aşağıdaki komutla ARC yapılandırmanızı tamamlayabilirsiniz.

sudo cp /etc/rspamd/local.d/dkim_signing.conf /etc/rspamd/local.d/arc.conf

E-posta Test ve Değerlendirme Hizmetleri

E-posta sunucunu ayarlarınızı kontrol etmek ve gönderilerinizin itibarını ölçmek için aşağıdaki web sitelerini kullanabilirsiniz.

https://mxtoolbox.com/

https://www.mail-tester.com/

https://www.dnsbl.info/dnsbl-database-check.php

Yedekleme

Bu kısım ayrıca düzenlenecektir.

  1. DMARC ve SPF ayarları için internette birçok kaynak bulabilirsiniz. https://dmarcian.com/ bilgi alabileceğiniz iyi bir kaynaktır.
  2. https://www.rspamd.com/doc/modules/dkim.html