29Ekim Açık Kaynak açılış Akademik Bilişim 2012 Akademik Bilişim 2012 Uşak akgül all Alt+Ctrl+Delete altlinux Anatolya installer apache apache2 arm AtlantiS autoindex backup bağlantı ban banana bash bash script belediye betik bind9 boot bootloader bootparametre böl burg cache canlicdrom cdrom centos CHKUSER chrome clone clonezilla CloneZilla ile Remote Disk Clone işlemi cron crontab çöp dd denizaltı denizaltı kablo Desteği destek Dil Disk disk eklemek disket dizin şifreleme django djb dkim dns DNS sistemi docker Domain download drbl dvd e-posta eğitim eklenti EniXma eposta eQmail esxi ev ev almak fail2ban fake fakemail feed feedbro ffmpeg find Firefox format fortran free FreeBSD freenas ftp full backup Gazze Genel Gentoo Getgnu.org gezegen git github gitweb Gmail gnupg Gökşin Akdeniz görev Görsel gpg grub grub2 günlük Güvenlik Hacker harddisk hizmet hosting id_rsa imap index indimail indir internet ipv4 ipv6 iso israil İşletim Sistemi kablo KAMP kernel kernellogo kesin çözüm key klonlamak komut konsol koruma lampp. httpd lilo link linux liste listeci listmanager live livecd LKD loader login logo LVM mail mail hosting Mail-in-a-Box mailcow mailman mailserver mandriva-tr.org matrax Mint mirror mlmmj modül MTA multisite mustafa akgül Mustafa Akgül Özgür Yazılım Yaz Kampı. Abant İzzet Baysal Üniversitesi Müteahhit mx MySQL netinternet Netqmail network nfs nginx ngrok not.py online radyo opendkim openssl önyükleme özgür yazılım panel pano pardus parola paste patch paylaşım pdf perl pfsense pfsense full backup phpmyadmin pi plan Planet planetplanet plesk pop3 poste.io postfix postfixadmin proje proxy putty python qmail qmailtoaster randmap Ras webserver Raspberry pi Raspberry Pi raspi rawdisk recovery remote repository resim resimler robots.txt 401 rss rsync rsyncd rsyncd etiketi s/qmail Saldırı Samba screen script sendonly smtp server senronizasyon server servis shell sistem Slackarm slackware Slackware slackware-live slackware.org.tr slackware arşiv httrack truva linux hatıralar slacky.eu SMF SMF türkçe karakter problemi smtp sosyal ağ spam spf sql backup sqlite sqlite3 sqlite3 to wordpress ssh ssh_key ssh-key SSL ssl sertifika subversion sudo sunucu svn swap swapfile syslinux system system images şifreleme takasfile Tatil Tavuk Teneke Kebabı Tenekede Tavuk theme thunderbird TightVNC tmux Tokat Kebabı tokat kebabı sobası etiketi Trash Trash-cli Truva Linux truvalinux Turkcell tuxweet Türkçe türkiye ubuntu unban UNIX uzak varnish veri Virtualbox vmware Vodafone vps Vsftp vsftpd Wampp web web robot Web server web Sunucu webp webserver webserver Akıllı Tahta wget whitelist WINN Windows wordpress Wordpress wordpress multisite www xampp Xnest yansı yansılama yansılamak yapıştır yazmak Yedekleme Yemek zulüm

Postfix + Dkim Entegrasyonu

dkim-domainkeys

 

Dkim Nedir.

DKIM email mesajı ile bir alan adı ilişkilendirmek için kullanılan, kişiler yada kuruluşlarca  sağlayan bir Internet standardıdır. OpenDkim bir e-posta mesajının doğrulama yöntemi olarak hizmet vermektedir. Aslında DKIM asimetrik kriptografi tarafından desteklenmektedir. Gönderenin Mail Transfer Agent (MTA) tartafından özel anahtarla her giden mesaj imzalanır. Alıcı, gönderenin DNS kayıtlarından ortak anahtarı alır ve mesaj imzalama gerçekleştiğinden beri ileti gövdesi ve başlık alanlarının bazılarının değişip değişmediğini doğrular.

postfix-myszaPostfix ve Dkim Kurulumu.

Bir arkadaşımın DijitalOcean üzerindeki sunucusuna teknik destek veriyorum.

Üzerinde çalıştıkları proje için mail adresi kullanmaları gerektiğini söylediler.

Postfix kurulumunu yaptım dns Yönetiminden MX kaydını açtım.

Spam Klasörüne düşmemek için bazı tedbirler almak gereklidir.

- Gönderilen maillerin Dkim ile imzalanması
- spf Kaydı
- Mx kaydı

Kurulum:
Öncelikle Sistemi güncelleyelim.
sudo apt-get update
sudo apt-get dist-upgrade

OpenDKIM ve Bağımlı olduğu paketleri kuralım.
sudo apt-get install opendkim opendkim-tools

Opendkim Yapılandırmasını düzenleyelim.
sudo nano /etc/opendkim.conf

Dosya içeriği Düzenlenmiş hali. Kendi Domaininize Düzenleyiniz.
# This is a basic configuration that can easily be adapted to suit a standard
# installation. For more advanced options, see opendkim.conf(5) and/or
# /usr/share/doc/opendkim/examples/opendkim.conf.sample.

# Log to syslog
Syslog yes
# Required to use local socket with MTAs that access the socket as a non-
# privileged user (e.g. Postfix)
UMask 002

# Sign for example.com with key in /etc/mail/dkim.key using
# selector '2007' (e.g. 2007._domainkey.example.com)
Domain kimgelir.com
KeyFile /etc/opendkim/kimgelir.key
Selector mail

# Commonly-used options; the commented-out versions show the defaults.
Canonicalization simple
Mode sv
SubDomains no
ADSPAction continue

# Always oversign From (sign using actual From and a null From to prevent
# malicious signatures header fields (From and/or others) between the signer
# and the verifier. From is oversigned by default in the Debian pacakge
# because it is often the identity key used by reputation systems and thus
# somewhat security sensitive.
OversignHeaders From

# List domains to use for RFC 6541 DKIM Authorized Third-Party Signatures
# (ATPS) (experimental)

#ATPSDomains example.com
#--- Bitiş

Dosyayı düzenleyip kapattık.
Şimdi Opendkim daemon yapılandırma dosyasına.ekleme yapalım.
sudo nano /etc/default/opendkim

SOCKET="inet:8891@localhost"

Postfix giden maillere OpenDkim ile imzalaması için  main.cf dosyasına aşağıdaki satırları ekleyelim.
sudo nano /etc/postfix/main.cf

# OpenDKIM milter configuration
milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:localhost:8891
non_smtpd_milters = inet:localhost:8891

Şimdi giden maillerin imzalak için kullanılacak Dkim key üretelim. ve gerekli yere kopyalayalım.
root@kimgelir:~# mkdir /etc/opendkim
root@kimgelir:~#mkdir key
root@kimgelir:~#cd key
root@kimgelir:~/key# opendkim-genkey --selector=mail --domain=kimgelir.com
root@kimgelir:~/key# ls
mail.private mail.txt
root@kimgelir:~/key# cp mail.private /etc/opendkim/kimgelir.key
root@kimgelir:~/key# chown -R opendkim:opendkim /etc/opendkim/*

Burası önemli opendkim ile postaların imzalama işleminde DNS kaydı açmamız lazım.
çünki postfix giden maili imzaladığında karşı sunucunu gelen maili doğrulamak için bizim public keyimize ihtiyacı olacak.
Karşı e-posta sunucu public keyi Dns sorgusu ile elde edecektir.
Dns ye eklemeniz gereken public.key mail.txt dosyasının içeriğidir.

Bind için eklenmesi Gereken satır. tek satır olarak ekleyiniz.
mail._domainkey    IN    TXT    ( "v=DKIM1; k=rsa; "      "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC19WfjBGXWh71t7Zs9DYCnG/T6jiRdo6axExg7ogpOmkjfB12k7apq8tUtJHYST2Iq4EylZXDhe2GUFvy+c52TF42gOQW78HgKs2dPwCg7Jn7+tsyzjV8L64iB+0IR9PTujA5MeijJDfm73zzGgzIxDQiwzO30dgsvUyvKf9BHqwIDAQAB" )  ; ----- DKIM key mail for kimgelir.com

Şimdi DNS sorgusuna bakalım public Key  ulaşılabilir hale geldi.
caylak@Rihanna:~$ dig mail._domainkey.kimgelir.com TXT
; <<>> DiG 9.9.5-11ubuntu1-Ubuntu <<>> mail._domainkey.kimgelir.com TXT
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 13984
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;mail._domainkey.kimgelir.com. IN TXT
;; ANSWER SECTION:
mail._domainkey.kimgelir.com. 1799 IN TXT "v=DKIM1; k=rsa; " "p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC19WfjBGXWh71t7Zs9DYCnG/T6jiRdo6axExg7ogpOmkjfB12k7apq8tUtJHYST2Iq4EylZXDhe2GUFvy+c52TF42gOQW78HgKs2dPwCg7Jn7+tsyzjV8L64iB+0IR9PTujA5MeijJDfm73zzGgzIxDQiwzO30dgsvUyvKf9BHqwIDAQAB"
;; Query time: 273 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sun Feb 28 18:50:25 EET 2016
;; MSG SIZE rcvd: 305
caylak@Rihanna:~$

Evet herşey yolunda Dns üzerinden publickey yayınlandı.

Şimdi servisleri restart edelim.

Önce OpenDkim servisini restart edelim
root@kimgelir:~/key# service opendkim restart
Restarting OpenDKIM: opendkim.
root@kimgelir:~/key#

şimdi Postfix i restart edelim.
root@kimgelir:~/key# service postfix restart
* Stopping Postfix Mail Transport Agent postfix [ OK ]
* Starting Postfix Mail Transport Agent postfix [ OK ]
root@kimgelir:~

Kontrol edelim opendkim belirlediğimiz portu dinliyormu.
root@kimgelir:~/key# netstat -plutn | grep 8891
tcp 0 0 127.0.0.1:8891 0.0.0.0:* LISTEN 29706/opendkim
root@kimgelir:~/key#

 

Herşeyi hatasız yaptıysanız giden e-postalar postfix ve opendkim tarafından imzalanacaktır.

kimgelir-1

Thunderbird için Dkim Eklentisini buradan kurabilirsiniz. Thunderbird ile Dkim doğrulaması yapabilirsiniz.

Thunderbird-Dkim

Faydalı olması dileğiyle.

Kaynakça:

1 - https://www.syslogs.org

2 - https://qrokes.com

 
Labels: ,

Yorum Gönder

[blogger][facebook][disqus][spotim]

Author Name

İletişim Formu

Ad

E-posta *

Mesaj *

Blogger tarafından desteklenmektedir.