Mengatasi Zimbra 2FA Code Did Not Match – Beberapa hari yang lalu, saya beserta rekan saya berkunjung ke salah satu klien di daerah Jakarta untuk membahas Fitur pada Zimbra NE. Salah satu fitur yang dibahas saat itu yaitu Zimbra Two Factor Authentication.
Ketika itu klien ingin langsung mengimplementasikan fitur tersebut untuk beberapa akun dahulu untuk ujicoba. Nahh saat ujicoba tersebut, muncul pesan error “The code you entered did not match”
Kalau di cek di mailbox.log, ada muncul pesan TOTP Invalid.
2018-11-07 00:22:02,886 INFO [qtp998351292-150222:http://mail.hostname.id/service/soap/EnableTwoFactorAuthRequest] [[email protected];mid=1;ip=172.16.x.x;port=36708;ua=ZimbraWebClient - GC70 (Mac)/8.8.8_GA_1703;soapId=6497d60e;] SoapEngine - handler exception: authentication failed for [[email protected]], invalid TOTP code
Setelah ada pesan error tersebut, saya coba ulangi langkah-langkah untuk mengaktifkan fitur 2FA tersebut. Saya coba pelan-pelan untuk memasukkan key yang muncul untuk diinput pada google authenticator, kemudian saya juga pelan-pelan untuk memasukkan Kode OTP yang muncul pada google authenticator tersebut, namun hasilnya nihil, tetap dianggap code did not match/Invalid TOTP.
Saya coba cari referensi dari Wiki Zimbra, error tersebut katanya karena konfigurasi Date pada server tidak sesuai, dan disarankan untuk sinkronisasi saja ke NTP Server. Akhirnya saya coba lakukan hal tersebut.
1. Install paket ntpdate agar otomatis sync ke NTP server ketika server ada proses reboot.
Centos
yum install ntpdate -y
Ubuntu
apt-get install ntpdate -y
2. Edit file konfigurasi ntpdate agar menggunakan NTP Server Indonesia.
Centos
Untuk Centos, edit file berikut ini
vi /etc/ntp/step-tickers
Edit file tersebut menjadi seperti berikut ini.
# List of NTP servers used by the ntpdate service.
0.id.pool.ntp.org
Kemudian restart service dan set otomatis up ketika reboot.
service ntpdate restart chkconfig ntpdate on
Ubuntu
Untuk Ubuntu, edit file berikut ini.
vi /etc/default/ntpdate
Cari baris berikut ini dan set agar NTP nya mengarah ke NTP Server Indonesia.
# List of NTP servers to use (Separate multiple servers with spaces.)
# Not used if NTPDATE_USE_NTP_CONF is yes.
NTPSERVERS="0.id.pool.ntp.org"
Jika sudah, save dan jalankan command ntpdate-debian
# ntpdate-debian
7 Nov 00:42:37 ntpdate[16263]: adjust time server 202.65.114.202 offset 0.001242 sec
Alamat NTP Server Indonesia yaitu 0.id.pool.ntp.org.
Setelah menjalankan langkah-langkah diatas, konfigurasi date dan time sudah sinkron mengikuti konfigurasi date dan time pada NTP Server Indonesia.
Selanjutnya silakan dilanjut kembali untuk setup Zimbra Two Factor Authenticationnya, dan mestinya saat ini sudah success dan tidak muncul pesan error code did not match.
Mungkin cukup sekian, semoga bermanfaat
Rizky Pratama. Tinggal di Bekasi, Jawa Barat. Seorang IT di salah satu perusahaan IT. Pengguna Mac, Linux dan Windows
Selain sebagai penulis di blog ini, saya juga penulis di blog saya yang lain, yaitu https://pratama.biz.id