Aktivasi Two Factor Authentication (TFA) pada Zimbra OSE

Posted by

Salah satu fitur yang dibutuhkan pada email server untuk meningkatkan keamanan adalah Two Factor Authentication (TFA). TFA merupakan keamanan level kedua setelah user berhasil memasukkan username dan password. User akan dihadapkan pada menu baru atau tambahan autentikasi agar dapat login pada Zimbra. Entah itu login pada webmail, email klien desktop ataupun mobile devices. Jika password atau kode unik TFA tidak dimasukkan, maka user tersebut tidak dapat masuk. Meskipun username dan password yang dimasukkan sudah sesuai.

Fitur TFA ini sudah ada dan tersedia pada Zimbra Network Edition. Pengguna Zimbra NE sudah dapat mengaktifkan TFA dan memanfaatkannya.

Tapi ada kabar baik bagi pengguna Zimbra OSE. Baru-baru ini organisasi Zeta Alliance membuat project Open Source Two Factor Authentication server yang dapat digunakan pada Zimbra OSE. TFA server ini berjalan pada Docker container yang diinstall pada server Zimbra yang sama (jika menggunakan single server).

Project ini menggunakan LDAP Proxy yang disediakan oleh PrivacyIDEA. Jadi, username dan password dibaca oleh PrivacyIDEA dari Zimbra LDAP. Dan TFA token dibaca dari database PrivacyIDEA. User login menggunakan TFA dengan memasukkan username, password dan token. Atau hanya memasukkan username dan password saja apabila belum mengaktifkan TFA (dari webmail).

Secara topologi, kira-kira seperti berikut :

  • Pada bagian paling bawah merupakan mesin fisik atau virtual
  • Pada bagian kedua operating system
  • Pada bagian ketiga aplikasi Zimbra dan Docker
  • Diatas Docker, terdapat container PrivacyIDEA yang merupakan server TFA

Alur komuniksi antara Zimbra dengan PrivacyIDEA kurang lebih seperti berikut :

  • Zimbra dikonfigurasi External Authentication LDAP pada server PrivacyIDEA
  • PrivacyIDEA melakukan query username dan password pada LDAP internal Zimbra
  • Konfigurasi Fall Back To Local pada Zimbra dinonaktifkan

Jadi, semua user harus login menggunakan external authentication LDAP melalui PrivacyIDEA. PrivacyIDEA melakukan query pada internal LDAP Zimbra untuk mengecek apakah username dan password yang dimasukkan cocok. Kemudian memasukkan token TFA dari database PrivacyIDEA

Instalasi TFA Server

Jalankan perintah berikut dan tunggu hingga selesai

wget https://raw.githubusercontent.com/Zimbra-Community/zimbra-foss-2fa/master/2fa-installer.sh -O /tmp/2fa-installer.sh
chmod +rx /tmp/2fa-installer.sh
/tmp/2fa-installer.sh

Konfigurasi TFA pada User

  • Pastikan pada mobile devices sudah terinstall aplikasi Google Authenticator. Klik link berikut : https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2 bagi pengguna Android.
  • Login pada webmail. Pilih Preferences -> 2FA Account Security -> Click here to continue setup
  • Masukkan nama konfigurasi TFA. Misalnya setup-tfa. Klik OK. Maka akan muncul QR Code yang harus discanning oleh aplikasi Google Authenticator
  • Buka aplikasi Google Authenticator pada mobile devices kemudian scanning QR Code tersebut
  • Logout dari webmail dan login kembali. Masukkan username, password dan generate token yang dihasilkan oleh aplikasi Google Authenticator

Berikut beberapa gallery konfigurasi TFA

Konfigurasi TFA melalui webmail
QR Code ketika mengaktifkan TFA
Tampilan webmail disertai isian Token 2FA

Catatan : User yang bertindak sebagai admin (user yang dapat login pada Zimbra Admin) masih dapat login tanpa memasukkan token hasil dari generate Authenticator

Jangan lupa untuk mensupport project tersebut dengan melakukan donasi melalui link berikut : https://fundrazr.com/51S949?ref=ab_f6Tyre_ab_4LukOuBkyP04LukOuBkyP0. Informasi project yang lain dapat dilihat pada website https://zetalliance.org/

Silakan dicoba dan semoga bermanfaat šŸ™‚

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.