1. Latar Belakang Masalah
Dalam proses penggunaan email dengan domain sendiri (@zorin.my.id), ditemukan masalah serius pada pengiriman email keluar. Email yang dikirim tidak sampai ke penerima Gmail, bahkan tidak masuk ke folder spam, melainkan langsung ditolak oleh sistem mail server.
Masalah ini penting untuk didokumentasikan karena:
- Tidak menampilkan error yang umum dipahami pengguna awam
- Terjadi meskipun email dikirim secara manual
- Disebabkan oleh konfigurasi teknis yang tampak “sepele”, namun berdampak besar
2. Kondisi Awal Sistem
Konfigurasi awal sebelum masalah terjadi:
- Domain: zorin.my.id
- Alamat pengirim: budi@zorin.my.id
- Alamat penerima: akun Gmail
- Metode pengiriman: SMTP relay pihak ketiga (MailBaby)
- Jenis email: email teks biasa, non-massal, non-promosi
Secara kasat mata, tidak ada indikasi bahwa email tersebut melanggar aturan spam.
3. Error yang Muncul
Setelah email dikirim, sistem mengembalikan pesan bounce sebagai berikut:
Karakteristik error:
- 550 → error permanen
- rSPAM → rejected spam
- Email ditolak, bukan ditunda
- Email tidak diteruskan ke Gmail sama sekali
Ini menandakan bahwa penolakan terjadi di level SMTP relay / proteksi outbound, bukan oleh Gmail secara langsung.
4. Analisis Awal: Menentukan Arah Investigasi
Dari karakteristik error, dapat disimpulkan:
- Bukan masalah koneksi SMTP
- Bukan masalah akun email
- Bukan karena isi email vulgar atau promosi
- Sangat mungkin berkaitan dengan:
Reputasi domain
Autentikasi email (SPF, DKIM, DMARC)
Maka fokus analisis diarahkan ke DNS email domain.
5. Pemeriksaan Komponen Autentikasi Email
5.1 DKIM (DomainKeys Identified Mail)
Hasil pemeriksaan:
- DKIM aktif
- Selector valid
- Public key sesuai
- Tidak ada error tanda tangan
Kesimpulan:
DKIM berfungsi dengan baik dan bukan penyebab masalah.
5.2 SPF (Sender Policy Framework)
Hasil pemeriksaan:
- SPF record tersedia
- Server lokal diizinkan
- SMTP relay (MailBaby) sudah di-include
- Menggunakan softfail (~all)
Kesimpulan:
SPF valid dan tidak menyebabkan penolakan, meskipun masih bisa dirapikan secara sintaks.
5.3 DMARC (Titik Kritis)
Ditemukan kondisi berikut:
Dua record DMARC aktif secara bersamaan
Keduanya berada pada
_dmarc.zorin.my.id
Contoh kondisi:
Padahal menurut standar DMARC (RFC):
Hanya boleh ada satu record DMARC untuk satu domain
6. Dampak Teknis dari DMARC Duplikat
Akibat adanya dua record DMARC:
- Server penerima tidak dapat menentukan kebijakan DMARC yang sah
- DMARC dianggap invalid
- Domain kehilangan kredibilitas autentikasi
- SMTP relay meningkatkan skor spam
- Email ditolak langsung (rSPAM)
Catatan penting:
Kebijakan
p=nonetidak berfungsi jika DMARC itu sendiri tidak valid.
7. Tindakan Perbaikan (Remediation)
Langkah-langkah yang dilakukan:
- Menghapus salah satu record DMARC
- Menyisakan satu record DMARC yang lengkap dan valid
- Menggunakan kebijakan aman untuk domain baru (p=none)
- Menambahkan alamat laporan (rua & ruf)
DMARC final:
8. Verifikasi Teknis
Dilakukan pengecekan langsung dari terminal cPanel:
Hasil:
- Hanya satu record DMARC terdeteksi
- Record sesuai dengan konfigurasi yang diharapkan
- DNS sudah terpropagasi dengan benar
9. Pengujian Ulang Pengiriman Email
Setelah menunggu ±10 menit:
- Email dikirim ulang
- Subject dan isi email dibuat baru
- Tidak menggunakan attachment
- Dikirim ke akun Gmail berbeda
Hasil:
- Email berhasil terkirim
- Masuk ke inbox Gmail
- Tidak masuk folder spam
10. Kesimpulan Akhir
Masalah penolakan email pada domain zorin.my.id bukan disebabkan oleh konten email atau server rusak, melainkan oleh kesalahan konfigurasi DMARC berupa record ganda.
Walaupun DKIM dan SPF sudah benar, DMARC yang invalid cukup untuk membuat sistem proteksi SMTP menolak email secara permanen.
11. Pelajaran dan Rekomendasi untuk Ke Depan
- DMARC hanya boleh satu record
- DMARC invalid lebih berbahaya daripada DMARC tidak ada
- DKIM + SPF tanpa DMARC belum cukup
- Domain baru sangat sensitif terhadap kesalahan DNS
- SMTP relay lebih ketat daripada mail server lokal
- Selalu verifikasi DNS dengan dig, bukan hanya panel UI
- Lakukan pengujian email setiap perubahan DNS email
Checklist Email Domain di cPanel (Khusus Shared Hosting)
A. DNS & Autentikasi Email
| No | Item | Wajib | Keterangan |
|---|---|---|---|
| 1 | MX Record valid | ✅ | Mengarah ke mail server hosting |
| 2 | SPF hanya satu record | ✅ | Jangan ada SPF ganda |
| 3 | SPF mencakup server & SMTP relay | ✅ | Include sesuai provider |
| 4 | Jumlah lookup SPF ≤ 10 | ✅ | Hindari nested include |
| 5 | DKIM aktif (Email Deliverability) | ✅ | Status harus PASS |
| 6 | Selector DKIM sesuai domain | ✅ | Umumnya default |
| 7 | DMARC hanya satu record | ✅ | Tidak boleh duplikat |
| 8 | DMARC awal p=none | ✅ | Aman untuk domain baru |
| 9 | DMARC rua / ruf aktif | ⚠️ | Untuk monitoring |
| 10 | Verifikasi DNS via dig | ⚠️ | Jangan hanya percaya UI |
B. Konfigurasi Server (Shared Hosting Friendly)
| No | Item | Wajib | Keterangan |
|---|---|---|---|
| 1 | Hostname server valid (FQDN) | ✅ | Biasanya dikelola provider |
| 2 | Reverse DNS (PTR) sesuai | ✅ | Cek via provider |
| 3 | HELO/EHLO tidak generik | ⚠️ | Shared hosting biasanya sudah OK |
| 4 | TLS/SSL aktif | ✅ | Default Exim |
| 5 | SMTP AUTH aktif | ✅ | Default cPanel |
| 6 | Sinkronisasi waktu server | ⚠️ | Jarang bermasalah |
C. Pembuatan Akun Email di cPanel
| No | Item | Wajib | Keterangan |
|---|---|---|---|
| 1 | Username profesional | ✅ | admin@, support@ |
| 2 | Hindari nama acak | ✅ | Mengurangi spam score |
| 3 | Password kuat | ✅ | Hindari account hijack |
| 4 | Quota mailbox cukup | ⚠️ | Hindari email bounce |
| 5 | SpamAssassin aktif | ⚠️ | Default aman |
D. Praktik Pengiriman Email (Paling Sering Diabaikan)
| No | Item | Wajib | Keterangan |
|---|---|---|---|
| 1 | Jangan kirim massal di awal | ✅ | Shared IP sensitif |
| 2 | Lakukan warm-up email | ✅ | Kirim bertahap |
| 3 | Kirim email manual dulu | ✅ | Bangun reputasi |
| 4 | Usahakan ada reply | ⚠️ | Meningkatkan trust |
| 5 | Hindari attachment awal | ⚠️ | Risiko spam tinggi |
| 6 | Jangan forward email lama | ⚠️ | Header spam |
E. Konten & Format Email
| No | Item | Wajib | Keterangan |
|---|---|---|---|
| 1 | Bahasa natural & personal | ✅ | Hindari template kaku |
| 2 | Subject tidak promosi | ✅ | Hindari kata sensitif |
| 3 | From Name konsisten | ⚠️ | Jangan berubah-ubah |
| 4 | Signature jelas | ⚠️ | Meningkatkan legitimasi |
| 5 | Domain From = domain pengirim | ✅ | Wajib |
| 6 | Hindari URL shortener | ⚠️ | Spam trigger |
F. Pengujian & Monitoring
| No | Item | Wajib | Keterangan |
|---|---|---|---|
| 1 | Test kirim ke Gmail | ✅ | Paling ketat |
| 2 | Test ke Outlook / Yahoo | ⚠️ | Bandingkan hasil |
| 3 | Simpan bounce message | ✅ | Bahan analisa |
| 4 | Monitor DMARC report | ⚠️ | Deteksi dini |
| 5 | Audit DNS setelah perubahan | ⚠️ | Hindari konflik |
G. Keamanan Akun (Shared Hosting Risk)
| No | Item | Wajib | Keterangan |
|---|---|---|---|
| 1 | Password email unik | ✅ | Jangan sama dengan cPanel |
| 2 | Nonaktifkan akun tidak terpakai | ⚠️ | Kurangi risiko spam |
| 3 | Jangan pakai akun domain untuk testing massal | ✅ | Risiko blacklist |
| 4 | Monitor login mencurigakan | ⚠️ | Shared IP rentan |
Catatan Penting untuk Shared Hosting
- Reputasi IP dipakai bersama
- Satu akun spam → semua ikut terdampak
- Kesalahan kecil (DMARC ganda, SPF salah) bisa berakibat email ditolak total
- Validasi DNS lebih penting daripada isi email