Baru-baru ini, salah satu end user meminta untuk mengaktifkan pengecekan SPF di Proxmox Mail Gateway (PMG) mereka. Permintaan ini sebenarnya cukup umum, mengingat pentingnya SPF untuk melawan email spoofing. Namun, ada satu kekhawatiran banyak email legitimate dari domain rekanan ditolak, karena sepengelaman saya banyak domain rekanan yang belum sepenuhnya compliant pengecekan SPF.
Awalnya, kami memang menonaktifkan pengecekan SPF untuk menghindari masalah ini. Namun, membiarkan email tanpa verifikasi SPF juga bukan pilihan yang aman karena rentan terhadap email spoofing.
Jadi, saya mengusulkan pendekatan metode lain, yaitu alih-alih menolak email yang pengecekan SPF-nya tidak lolos, saya ingin melakukan custom SpamAssassin yang digunakan PMG untuk memberikan skor 5 (Threshold spam score yang digunakan oleh end user untuk quarantine adalah 5) pada email yang tidak compliant. Dengan cara ini, email tersebut tidak reject, tetapi masuk ke quarantine dan bisa dilakukan release manual oleh administrator jika email valid dari rekanan.
Berikut adalah langkah-langkah yang saya lakukan untuk mencapai solusi ini:
Memastikan SPF Check Berfungsi dengan Benar
Masalah pertama adalah meskipun Use SPF pada Mail Proxy | Options sudah diaktifkan, tagging score SPF tidak muncul. Setelah melakukan beberapa uji coba, saya menemukan bahwa SpamAssassin gagal mendapatkan header EnvelopeFrom
yang dibutuhkan untuk melakukan lookup SPF dan terdapat error log SPF cannot use by DNS
. Dengan melakukan beberapa trial & error ternyata perlu mengaktifkan Use RBL checks pada Spam Detector | Options.
Rupanya, ada ketergantungan SpamAssassin PMG di mana RBL checks berfungsi sebagai trigger agar sistem dapat melakukan lookup SPF record pada DNS domain pengirim email. Dengan mengaktifkan RBL checks, EnvelopeFrom
berhasil didapat dan error log SPF cannot use by DNS
pun tidak muncul lagi.
Custom Score SPF Tagging di SpamAssassin
Setelah SPF check berfungsi, langkah selanjutnya adalah menyesuaikan score SPF tagging agar email tidak langsung reject namun masuk ke quarantine melalui menu Spam Detector | Custom Scores. Berikut adalah tagging yang disesuaikan scorenya:
Tagging | Score |
SPF_FAIL | 5.0 |
SPF_NEUTRAL | 5.0 |
SPF_NONE | 5.0 |
SPF_PASS | -0.1 |
SPF_NEUTRAL | 5.0 |
Menyesuaikan Threshold Quarantine di PMG
Terakhir, kita perlu menyesuaikan threshold quarantine pada menu Mail Filter sehingga email dengan spam score yang mencapai angka threshold atau lebih dikirim ke quarantine. Dengan skor pengecekan SPF yang gagal sebesar 5.0, saya menyesuaikan threshold di angka 5 (Spam Level 5). Ini memastikan setiap email yang gagal SPF langsung masuk ke quarantine.