Silahkan Download file lengkapnya disini.

Sebenarnya ada beberap macan source DKIM yang bisa kita install tetapi saat ini proses install dan konfigurasi DKIM menggunakan OpenDKIM terasa lebih mudah, terutama oleh saya sendiri. J

Sebelum melakukan instalasi DKIM, jika ingin mengetahu lebih jauh tentang DKIM silahkan akses link berikut http://www.dkim.org/.

Ada beberapa hal yang harus diperhatikan sebelum melakukan instalasi.

– Sistem operasi yang saya gunakan adalah CentOS 5.5 final, dah sudah ter-upgrade dengan baik.

– Mail server zimbra berjalan dengan baik. Disini saya pernah mencoba konfigurasi pada zimbra versi 6.x dan zimbra 7.x

– Pastikan punya akses /privileges root ke sistem.

Download dan Install OpenDKIM

Untuk mendapatkan source terbaru dari OpenDKIM silahkah anda kunjungi site http://www.opendkim.org/ dan download versi terbaru, jangan lupa juga untuk install openssl dan sendmail karena kedua source ini terdapat libraries yang dibutuhkan agar OpenDKIM bisa berjalan dengan baik. Setelah proses instalasi sendmail pastikan sendmail dalam keadaan tidak berjalan / disable.

Untuk instalasi sendmail langkahnya seperti berikut :

[root@dkim ruslan]#yum install sendmail-devel openssl-devel

Setelah itu, silahkan anda menuju directory dimana hasil download OpenDKIM di simpan.

[root@dkim src]#tar –zxvf opendkim-2.3.2.tar.gz

[root@dkim src]#cd opendkim-2.3.2

[root@dkim src]#make

[root@dkim src]#make install

Dari sini installasi telah selesai dilakukan dan pastikan tidak ada kendala pada saat install OpenDKIM.

Membuat Home Directory OpenDKIM dan User Baru

Membuat home directory yang nantinya digunakan sebagai home directory dari OpenDKIM

[root@dkim src]#mkdir /var/run/opendkim

Buat user baru dengan nama opendkim-milt seperti berikut:

[root@dkim src]#/usr/sbin/useradd –s /sbin/nologin –b /var/run/opendkim opendkim-milt

Membuat permissions untuk home directory OpenDKIM

[root@dkim src]#chown opendkim-milt:opendkim-milt /var/run/opendkim

[root@dkim src]#chmod 700 /var/run/opendkim

Seteleh semua proses pembuatan dan perijinan home directory dan perivileges account diatas tidak ada kendala yang harus dilakukan adalah mengubah / mengedit secara manual pada file /etc/passwd. Gunakan editor vi dan cari bari dari account opendkim-milt.

Ganti baris berikut

opendkim-milt:x:501:501::/var/run/opendkim/opendkim-milt:/sbin/nologin
menjadi
opendkim-milt:x:501:501::/var/run/opendkim:/sbin/nologin

Setelah dilakukan perubahan jangan lupa untuk menyimpan hasil perubahan yang dilakukan. Selanjutnya membuat direktory dan perijinan/privileges untuk opendkim.

[root@dkim src]# mkdir /etc/mail/dkim
[root@dkim src]# mkdir /etc/mail/dkim/keys
[root@dkim src]# chown -R opendkim-milt:opendkim-milt /etc/mail/dkim
[root@dkim src]# chmod -R go-wrx /etc/mail/dkim/keys

Selanjut copy file startup agar opendkim bisa dijalankan dan compatilble dengan CentOS.

[root@dkim src]#cp opendkim-2.3.2/contrib/init/redhat/opendkim /etc/init.d
[root@dkim src]#chmod 755 /etc/init.d/opendkim
Generate Keys for Signing
Sekarang yang dibutuhkan adalah membuat kunci public dan kunci private untuk verifikasi Mail dengan DKIM. Kunci public nanti akan ditambahkan pada konfigurasi dari DNS Server untuk setiap domain yang dibutuhkan dan kunci private akan disimpan pada sistem mail.

[root@dkim src]#mkdir /etc/mail/dkim/keys/example.com
[root@dkim src]#/usr/local/sbin/opendkim-genkey –D \ /etc/mail/dkim/keys/example.com/ -d example.com -s default
[root@dkim src]#chown -R opendkim-milt:opendkim-milt \ /etc/mail/dkim/keys/example.com
[root@dkim src]# mv /etc/mail/dkim/keys/example.com/default.private \ /etc/mail/dkim/keys/example.com/default

Sampai disini generate keys for signing telah selesai dibuat.
Edit File Konfigurasi opendkim.conf
1. /etc/opendkim.conf – file konfigurasi utama dari opendkim
2. /etc/mail/dkim/keyTable – daftar kunci yang tersedia dari opendkim
3. /etc/mail/dkim/signingTable – daftar domain atau account yang diperbolahkan untu sign
4. /etc/mail/dkim/trusted-hosts – daftar server atau host.
Silahkan buka file konfigurasi utama dari opendkim, contohnya seperti berikut:

[root@dkim src]# vi /etc/opendkim.conf
ADSPAction Continue
ADSPNoSuchDomain Yes
AutoRestart Yes
AutoRestartRate 10/1h
Canonicalization relaxed/relaxed
ExternalIgnoreList refile:/etc/mail/dkim/trusted-hosts
ExternalIgnoreList refile:/etc/mail/dkim/trusted-hosts
InternalHosts refile:/etc/mail/dkim/trusted-hosts
KeyTable refile:/etc/mail/dkim/keyTable
LogWay Yes

On-Default accept
On-BadSignature accept
On-DNSError tempfail
On-InternalError accept
On-NoSignature accept
On-Security tempfail
PidFile /var/run/opendkim/opendkim.pid
SignatureAlgorithm rsa-sha256
SigningTable refile:/etc/mail/dkim/signingTable
Socket inet:20209@localhost
Syslog Yes
SyslogSuccess Yes
TemporaryDirectory /var/tmp
UMask 022
UserID opendkim-milt:opendkim-milt
X-Header Yes

Setelah dilakukan perubah jangan lupa untuk disimpan.selanjut buat 3 file yang telah didefiniskan pada konfigurasi opendkim.conf seperti berikut:

[root@dkim src]#vi /etc/mail/dkim/keyTable
default._domainkey.example.com \ example.com:default:/etc/mail/dkim/keys/example.com/default

selanjut buat file ke dua seperti berikut:

[root@dkim src]#vi /etc/mail/dkim/signingTable
*@example.com default._domainkey.example.com

Dan file berikut:

[root@dkim src]#vi /etc/mail/dkim/trusted-hosts
127.0.0.1
Hostname1.example.com
example.com
Untuk setiap file sesuaikan example.com dengan domain mail yang anda kelola.
Edit Konfigurasi Zimbra
Tambahkan baris berikut pada konfigurasi zimbra.
smtpd_milters = inet:127.0.0.1:20209
non_smtpd_milters = inet:127.0.0.1:20209
milter_protocol = 2
milter_default_action = accept

agar konfigurasi diatas bisa dijalankan pada saat zimbra dijalankan tambahkan pada file master.cnf.in seperti berikut:

[root@dkim src]#vi /opt/zimbra/postfix/conf/master.cnf.in

Dan tambahkan konfigurasi diatas pada baris paling bawah dari file master.cnf.in

Menjalankan OpenDKIM dan Restart Zimbra
Sampai disini opendkim telah selesai di install dan konfigurasi untuk menjalankanya seperti berikut:

[root@dkim src]#/etc/init.d/opendkim start

Agar opendkim secara otomatis dijalankan pada saat sistem startup gunakan perintah berkut:

[root@dkim src]#/sbin/chkconfig opendkim on

Restart mail server zimbra

[root@dkim src]#su zimbra
[root@dkim src]$zmcontrol restart

Menambahkan kunci public opendkim pada DNS server.

[root@dkim src]#cat /etc/mail/dkim/keys/example.com/default.txt

Maka output yang dihasilkan seperti berikut
default._domainkey IN TXT “v=DKIM1; g=*; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDHY7Zl+n3SUldTYRUEU1BErHkKN0Ya52gazp1R7FA7vN5RddPxW/sO9JVRLiWg6iAE4hxBp42YKfxOwEnxPADbBuiELKZ2ddxo2aDFAb9U/lp47k45u5i2T1AlEBeurUbdKh7Nypq4lLMXC2FHhezK33BuYR+3L7jxVj7FATylhwIDAQAB” ; —– DKIM default for example.com

silahkan dicopykan ke konfigurasi mail pada DNS server dan sesuaikan pengaturan domain dengan domain yang ada.

Testing OPENDKIM
Langkah terakhir yang perlu dilakukan adalah melakukan testing OpenDKIM dengan melakukan pengiriman email. Anda bisa melihat log zimbra untuk mengetahui apakah opendkim berjalan dengan baik.

[root@dkim src]#tail –f /var/log/zimbra.log

Jika ada informasi seperti dibawah ini berarti opendkim telah berjalan dan terintegrasi dengan baik pada zimbra mail server.

opendkim[22254]: 53D0314803B: DKIM-Signature header added

atau untuk memastikan apakah opendkim berjalan dengan baik silahkan anda kirim emaik ke alamat email berikut:
– Sa-test@sendmail.net
– Autorespond+dkim@dk.elandsys.com

Sampai disini OpenDKIM telah berjalan dan terintegrasi dengan Baik..
Selamat.