E-posta
Hazırlıklar
Evinizdeki sunucuda sağlıklı şekilde e-posta hizmeti çalıştırmak için aşağıdaki önerileri dikkate alabilirsiniz. Bu öneriler zaruri değildir ve etraflarından dolaşılabilecek çözümler bulunabilir ancak daha teknik ve zorlu olacaklarından burada işlenmemiştir.
Belirtilen hazırlıklar Türk Telekom (TT) aboneleri için geçerlidir.
- Statik IP sahibi olmanız gerekir.
- 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 ve reverse-DNS talebinde bulunun. İletilecek e-postaya örnek teşkil etmesi için aşağıdaki metin sağlanmıştır.
Örnek Metin
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 8.8.8.8
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 önlemlerini almanız önerilir.
E-postalarınızı "Evolution" benzeri bir masaüstü istemci ile yönetebileceğiniz gibi, arzu ederseniz Roundcube ile 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 ve DKIM gelir. Aşağıda yer alan yapılandırmaları değerlendirebilirsiniz.
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 tutmanız önerilir.
DNS Sunucu Ayarları
- 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 girin.
DKIM Ayarları
1. Sunucuda nano /etc/rspamd/local.d/dkim_signing.conf
komuyla rspamd dkim modul dosyanızı oluşturun. Aşağıda örnek verilen içeriği, alanadiniz (uzantısıyla beraber) ile belirtilen yerleri düzenleyerek kullanabilirsiniz.[1]
Rspamd Modül Dosyası
# 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"; } }
Kaydedip çıkmak için Ctrl + X > y
kullanabilirsiniz.
2. 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
Kaydedip çıkmak için Ctrl + X > y
kullanabilirsiniz.
3.