Beberapa Tips Troubleshoot Email di Zimbra

Masalah yang kadang muncul di Zimbra Server ada beberapa kendala yang terjadi. Misalnya email dari luar tidak dapat masuk ke Zimbra, atau sebaliknya (email dari Zimbra tidak sampai ke email di luar). Ada beberapa pengecekan yang dapat dilakukan untuk mengidentifikasi dan menyelesaikan kendala-kendala ini.

Case 1:Email tidak masuk ke server Zimbra

image host

Misalnya kita sudah menyiapkan server Zimbra baru dan coba/testing kirim email dari luar (misal Gmail) ke Zimbra yang baru. Berikut ini langkah pemeriksaannya:

  • Cek DNS MX Record. Pastikan MX record sudah dikonfigurasi dengan benar. MX Record adalah “papan penunjuk” untuk email. Record ini berfungsi sebagai informasi, server mana yang bertanggung jawab sebagai penerima email pada domain.
    Misalnya kita kirim email ke akun@domain.xyz (misal domain kita namanya domain.xyz), server pengirim (misalnya Google) akan memeriksa MX record milik domain.xyz. Tanpa MX record yang valid, pengirim tidak tahu lokasi server Zimbra yang benar.
    image host
    Jalankan perintah berikut dari server Zimbra:

      host -t mx domain.xyz
    

    Output yang diharapkan akan terlihat seperti:

      domain.com mail is handled by 10 mail.domain.xyz
    
  • Periksa alamat IP. Alamat IP (A Record) merupakan alamat fisik dari server Zimbra. Tanpa alamat IP yang sesuai, email dari luar tidak dapat mengirimkan email hanya dari nama domain saja.
    Jika perintah host -t a menampilkan IP yang salah atau bahkan kosong, server luar tidak akan pernah menemukan lokasi server Zimbra kita.
  • Periksa file /etc/hosts. File ini merupakan “buku telepon lokal” di server Zimbra. Fungsinya untuk memberi tahu server tentang identitas/domain dan alamat IP-nya sendiri tanpa perlu tanya/request ke DNS Internet. Contoh format konfigurasi yang sesuai:
      127.0.0.1   localhost.localdomain localhost
      192.168.1.17   mail.domain.xyz mail
    
  • Periksa firewall. Pastikan default port (25) terbuka. Port ini adalah “gerbang” untuk menerima email dari luar. Kita bisa gunakan perintah telnet untuk cek apakah port-nya dapat diakses atau tidak (dari luar server cobanya).
      telnet mail.domain.xyz 25
    

    Untuk cek konfigurasi iptables, gunakan perintah iptables -L -n

Case 2: Email dari Zimbra Tidak Terkirim ke Luar

image host

  • Tes SMTP ke server eksternal. Beberapa server luar memblokir port 25 untuk mencegah spam. Perintah telnet juga dapat digunakan untuk mengetahui apakah server tujuan aksesnya (port 25) dibuka atau tidak.
      telnet server-tujuan.com 25
    

    Jika test telnet gagal, bisa saja karena server tujuan aksesnya ditutup oleh mereka. Akibatnya, Zimbra tidak dapat menghubungi server tujuan untuk mengirimkan email.

  • Periksa konfigurasi relay. Periksa apakah server menggunakan zimbraMtaRelayHost atau tidak.
      zmprov gacf zimbraMtaRelayHost
      zmprov gs `zmhostname` zimbraMtaRelayHost
    
    • zmprov gacf: Memeriksa konfigurasi Relay Host secara global untuk seluruh server.
    • zmprov gs: Memeriksa konfigurasi Relay Host khusus pada server fisik tempat menjalankan perintah tersebut.

      Apabila ISP memblokir port 25, kita bisa menggunakan SMTP relay dari provider lain agar tetap bisa mengirimkan email ke tujuan.

  • Cek log Zimbra. Sebenarnya cara ini juga bisa digunakan untuk identifikasi kendala email masuk. File /var/log/zimbra.log adalah CCTV yang merekam semua lalu lintas email. Perintah grep di atas akan membongkar jejak digital email user001@yahoo.com. Dari sana, kita bisa melihat alasan pasti mengapa email gagal, seperti pesan Connection timed out, User unknown, atau Relay access denied.

Case 3: MTA Tidak Aktif

Saat menjalankan zmcontrol status dan melihat MTA tidak berjalan. Saat mencoba zmmtactl start, Postfix tetap tidak berjalan.

image host

  • Periksa port 25 (lagi). Pengecekan bertujuan untuk melihat apakah ada aplikasi/service lain yang menggunakan port 25. Kita bisa cek dengan menggunakan perintah berikut:
      lsof -i :25
    

    Di Linux, terdapat service email seperti Postfix/Sendmail yang juga menggunakan port 25. Apabila Postfix/Sendmail/aplikasi lainnya sedang menggunakan port tersebut, Postfix dari Zimbra akan bentrok dan gagal dijalankan.

  • Periksa hak akses Postfix (postfix check). Semua folder di dalamnya harus dimiliki oleh user zimbra. Jika ada folder (seperti defer tempat menyimpan email yang tertunda) yang hak aksesnya berubah, misalnya tidak sengaja berganti ke root, Postfix akan menolak untuk keselamatan sistem. Contoh outputnya:
      postsuper: fatal: scan_dir_push: open directory defer/F: Permission denied
    

Tools untuk Troubleshooting Zimbra

  • mailq & postqueue. Tool ini dapat digunakan untuk melihat antrian email yang tertunda pengirimannya pada server. Jika ingin memaksa server agar segera mengirimkan semua email yang tertahan di antrean, kita bisa mengombinasikannya dengan perintah postqueue -f.
  • zmqstat. Digunakan untuk menghitung dan menampilkan jumlah email di antrian (active, deferred, incoming, hold) dalam angka ringkas.
  • zmmsgtrace. Digunakan untuk melacak status email. Cukup memasukkan alamat pengirim atau Message-ID untuk mengetahui detail waktu, status, dan apakah email tersebut sukses atau ditolak oleh server tujuan.
  • /var/log/zimbra.log. Pusat log sistem yang mencatat aktivitas di mail server. Gunakan perintah tail -f untuk memantau eror, peringatan (warning), atau kegagalan transaksi email yang sedang terjadi secara langsung (real-time).

Untuk tulisan kali ini sampai di sini dulu ya. Sampai jumpa. Bye.

By Zaidan

Leave a Reply

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