Ada beberapa cara untuk mengamankan pengiriman email yang dilakukan. Salah satu caranya adalah dengan menggunakan koneksi TLS untuk setiap pengiriman/penerimaan email yang dilakukan. Koneksi TLS yang dimaksud adalah koneksi antar server pengirim dan penerima. Protocol TLS ini biasa digunakan juga oleh email klien pada settingan outgoing email (biasanya port 587). Namun untuk komunikasi antar email server, tetap menggunakan port 25 dengan koneksi terenkripsi. Komunikasi tersebut menggunakan STARTTLS.

STARTTLS ini adalah sebuah ektension yang menawarkan koneksi plain text agar diupgrade menjadi koneksi terenkripsi (tergantung server penerima juga). Dari pada saya salah mengartikan, silakan simak saja penjelasan STARTTLS dari Wikipedia 😀

STARTTLS is an extension to plain text communication protocols, which offers a way to upgrade a plain text connection to an encrypted (TLS or SSL) connection instead of using a separate port for encrypted communication. STARTTLS is primarily intended as a countermeasure to passive monitoring.

# Pengecekan Pengiriman Email STARTTLS

Jika menggunakan email server Zimbra, by default STARTTLS sudah terkonfigurasi. Baik untuk komunikasi pengiriman email atau penerimaan email (incoming dan outgoing). Berikut cara mengecek apakah pengiriman email keluar sudah terenkripsi atau belum

1. Pengecekan via Gmail

Coba lakukan pengiriman email ke Gmail dari email server yang telah disetup. Klik pada bagian “Show details”. Lihat contoh berikut :

check tls connection

Dari informasi diatas, pengiriman email ke Gmail terenkripsi dengan Standard (TLS)

2. Pengecekan via Header

Pengecekan kedua yang bisa dilakukan adalah dengan melihat langsung pada header email

Return-Path: <ahmad@excellent.co.id>
Received: from xxxxxx.excellent.co.id (xxxxxxx.excellent.co.id. [139.xxx.xxx.xxx])
        by mx.google.com with ESMTPS id h85si6267366oib.24.2016.02.12.18.05.28
        for <xxxxxxxxx@gmail.com>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Fri, 12 Feb 2016 18:05:29 -0800 (PST)

Dari informasi header diatas, pengiriman email menggunakan koneksi TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128

3. Pengecekan via website Check TLS (http://www.checktls.com/)

Pengecekan berikutnya bisa dilakukan via website Check TLS. Buka link berikut : http://www.checktls.com/perl/TestSender.pl dan klik pada bagian Start Test. Ikuti intruksi yang diberikan dengan mengirimkan email pada test@TestSender.CheckTLS.com dengan subject random hasil dari generate. Setelah dikirim, akan mendapatkan reply perihal status koneksi outgoing email apakah telah terenkripsi atau tidak.

# Pengecekan Penerimaan Email STARTTLS

Untuk pengecekan incoming, dapat dilakukan via web Check TLS dengan akses link berikut : http://www.checktls.com/perl/TestReceiver.pl?FULL,ASSURETLS. Cukup masukkan email address, email MX host dan email port. Klik Start. Informasi yang didapatkan kurang lebih seperti berikut :

check tls incoming

Assure TLS dalam kondisi FAIL dikarenakan incoming server masih melakukan allow terhadap koneksi non TLS. Jika semua koneksi yang masuk harus menggunakan TLS, maka koneksi non TLS akan ditolak.

Pengecekan yang lain adalah dengan perintah telnet. Atau bisa juga via MXToolbox dengan menggunakan feature Test Email Server disini : http://mxtoolbox.com/diagnostic.aspx. Jika melihat informasi seperti dibawah, maka incoming email support koneksi TLS

250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN [922 ms]
MAIL FROM:<supertool@mxtoolbox.com>

# Aktivasi TLS Outgoing

Jika hasil pengecekan diatas belum terkonfigurasi TLS, silakan lakukan konfigurasi berikut agar pengiriman email jadi lebih aman dan terenkripsi. Konfigurasi dibawah ini untuk engine email yang menggunakan Postfix (Zimbra termasuk).

Ubah konfigurasi Postfix sehingga seperti berikut :

smtp_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtp_tls_security_level = may

Untuk penggunaan Zimbra, bisa jalankan perintah berikut untuk versi 8.0.x dan dibawahnya (versi 8.5/8.6 atau terbaru by default sudah aktif)

zmlocalconfig -e postfix_smtp_tls_security_level=may

Silakan uji coba pengiriman dan cek sesuai panduan pengecekan.

REKOMENDASI : By Default, Zimbra memiliki SSL Self Signed Certificate. SSL ini secara default memang sudah terenkripsi. Namun ada beberapa email server penerima tidak menerima TLS Connection apabila SSL tidak dikenal (Self Signed Certificate). Rekomendasinya adalah gunakan SSL yang dapat dikenali diseluruh aplikasi/server.

Jika butuh informasi perihal SSL yang dikenali diberbagai aplikasi/server, silakan hubungi Team Sales Excellent untuk harga dan penawarannya 😀 : https://www.excellent.co.id/kontak/

Silakan dicoba dan semoga bermanfaat 😀

Referensi :

– https://bugzilla.mozilla.org/show_bug.cgi?id=956714
https://en.wikipedia.org/wiki/STARTTLS