Domain Key

Improving Domain Key di Zimbra

Domain Key

Improving Domain Key Filter di Zimbra

Domain Key adalah otentikasi framework yang menyimpan public key di DNS dan digital siganture email berbasis domain. Pemilik domain mempunyai pasangan public/private key yang akan digunakan untuk sign messages yang berasal dari domain tersebut. Public key diletakan di DNS sebagai catatan TXT sedangan private key akan disimpan di server email yang mengirim dari domain tersebut.

Ketika sebuah email yang dikirim oleh pengguna dari domain maka domain key filter akan menggunakan private ket untuk meng sign / menandatangani email dengan digital sign yang diasosiasikan dengan pengiriman domain. Domain Key Signature pada header dan signature yang ditambahkan pada email / pesan akan ditambahkan. Dan ketika pesan diterima dengan Domain Key Signature di headernya maka Domain Key Filter akan mengekstrak signature  dan domain dari pengirim email. Itu merupakan DNS lookup pada catatan TXT untuk mengambil public key domain pengirim. Menggunakan public key, domain key filter akan memverifikasi apakah emailnya valid atau tidak, jika terdapat “An Authtentication-Result: domainkeys = pass” terdapat pada header maka verifikasi email terlah berhasil.

Selector memungkinkan sebuah domain mempunyai beberapa public key di DNS server, hal ini memungkinkan kita untuk mengelola atau mengubah public key di DNS server. Sebagai contoh, jika domainnya adalah solusismart.com dan selector-nya adalah mailku maka public key akan diambil dari mailku._domainkey.solusismart.com dan nama sebelum ._domainkey adalah selector.

Kadang-kadang mail server melakukan modifikasi email di perjalanannya, dan ini bisa menghapus domain key signature. Di dalam Domain Key Filter terdapat 2 metode algoritma yang didukung, yakni: simple dan nofws, untuk metode simple tidak memberikan toleransi terhadap modifikasi email. Sebaliknya, metode nofws mendukung adanya modifikasi umum seperti white-space replacement and header line re-wrapping.

Oya, instalasi domain key filter / signer ini menggunakan DKFILTER dan DKIMPROXY under CentOS 5.4-x86_64 dan Zimbra OSE 6.0.5 RHEL 64. Sebelum melakukan instalasi domain key yang perlu dipersiapkan adalah konfigurasi dns, dan beberapa library yang diperlukan oleh dkfilter maupun dkimproxy. Langkah pertama adalah install dependency yang akan digunakan:

#  perl -MCPAN -e’CPAN::Shell->install(“Build::CPAN”)’
#  perl -MCPAN -e’CPAN::Shell->install(“Crypt::OpenSSL::RSA”)’
#  perl -MCPAN -e’CPAN::Shell->install(“Digest::SHA”)’
#  perl -MCPAN -e’CPAN::Shell->install(“Digest::SHA1”)’
#  perl -MCPAN -e’CPAN::Shell->install(“Error”)’
#  perl -MCPAN -e’CPAN::Shell->install(“Mail::Address”)’
#  perl -MCPAN -e’CPAN::Shell->install(Mail::DomainKeys)’

Selanjutnya download dkfilter dari http://jason.long.name/dkfilter/

# cd /tmp

# wget http://jason.long.name/dkfilter/dkfilter-0.11.tar.gz

Ekstrak file yang telah didownload dan konfigure dan install

# tar -zxvf dkfilter-0.11.tar.gz
# ./configure –prefix=/usr/local/dkfilter
# make install
# useradd -d /dev/null -s /sbin/nologin dkfilter

Langkah selanjutnya adalah membuat public dan private key menggunakan openssl:

# openssl genrsa -out private.key 1024
# openssl rsa -in private.key -pubout -out public.key

3 thoughts on “Improving Domain Key di Zimbra

  1. ada yang ingin saya tanyakan pak, saat memodifikasi master.cf dan master.cf.in di zimbra, dan postfix sudah direload ternyata file master.cf dan master.cf.in di zimbra kembali ke set awal. dan apabila saya lihat, ternyata file master.cf read only,..apakah ada cara lain untuk mengupdate file master.cf di zimbra..
    Terima Kasih

  2. Hm…., perlu di ubah permission file nya:
    # chmod 711 master.cf
    kemudian nanti ngeditnya menggunakan owner file tsb…

  3. Terimaksih sebelumnya informasi yang sangat bermanfaat.
    Ada yg mau saya tanyakan pak, jika melakukan aktivasi DKIM di Zimbra 8.0.3 yang diisntal di SLES11_64, gimana ya pak step by stepnya.
    Terimakasih

Leave a Reply

Your email address will not be published. Required fields are marked *


*