Migrasi Database Bayes SpamAssassin pada Carbonio

Tulisan ini menjelaskan proses export dan import database Bayes SpamAssassin pada lingkungan Carbonio.
Proses ini dilakukan untuk mempertahankan hasil training SpamAssassin agar tidak perlu dilakukan ulang ketika terjadi perubahan infrastruktur, seperti migrasi server atau penambahan node MTA (Mail Transfer Agent) baru.

Dengan memigrasikan database Bayes, MTA baru dapat langsung memiliki kualitas dan akurasi filtering spam yang sama seperti MTA yang telah berjalan sebelumnya, sehingga potensi lolosnya email spam ke inbox pengguna dapat diminimalkan.

Kapan Proses Ini Digunakan

Proses ini direkomendasikan pada kondisi berikut:

  • Migrasi infrastruktur Carbonio ke server atau environment baru
  • Penambahan node MTA baru ke dalam cluster Carbonio
  • Re-install atau rebuild server MTA
  • Scaling infrastructure untuk kebutuhan performa dan high availability

Penjelasan Singkat

SpamAssassin menggunakan metode Bayesian filtering untuk mempelajari pola email spam dan non-spam berdasarkan histori email yang telah dianalisis.

Ketika sebuah MTA baru ditambahkan ke dalam infrastruktur Carbonio, SpamAssassin pada node tersebut masih berada dalam kondisi fresh (belum terlatih). Kondisi ini dapat menyebabkan:

  • Akurasi filtering spam menjadi rendah
  • Banyak email spam lolos ke inbox pengguna
  • Penurunan kualitas layanan email pada fase awal operasional

Untuk menghindari hal tersebut, sangat disarankan untuk memigrasikan database training Bayes SpamAssassin dari MTA yang telah terlatih ke MTA yang baru.

Skenario Penggunaan

Skenario 1 Migrasi Infrastruktur

Jika kalian melakukan migrasi dari infrastruktur Carbonio lama ke infrastruktur baru, database Bayes SpamAssassin dari server lama dapat diexport dan diimport ke server baru.

Skenario 2 Penambahan MTA Baru

Jika infrastruktur Carbonio sudah memiliki MTA dengan SpamAssassin yang telah terlatih (Node A), dan akan ditambahkan MTA baru (Node B), maka database Bayes dari Node A dapat dipindahkan ke Node B agar kualitas filtering tetap konsisten di seluruh node.

Prosedur Migrasi Bayes Database

Step 1 Export Database Bayes dari MTA Sumber

Pada MTA sumber, jalankan perintah berikut sebagai user root:

/opt/zextras/common/bin/sa-learn \
  --dbpath /opt/zextras/data/amavisd/.spamassassin \
  --backup > /tmp/bayes.db

Perintah ini akan mengekspor seluruh database Bayes SpamAssassin ke dalam satu file backup.

Step 2 Transfer File ke MTA Tujuan

Masih dari MTA sumber, transfer file hasil export ke MTA tujuan:

scp /tmp/bayes.db root@{remotehost}:/tmp/

Ganti {remotehost} dengan hostname atau IP address dari MTA tujuan.

Step 3 Import Database Bayes ke MTA Baru

Pada MTA tujuan, jalankan perintah berikut sebagai user root:

chown zextras:zextras /tmp/bayes.db

/opt/zextras/common/bin/sa-learn \
  --dbpath /opt/zextras/data/amavisd/.spamassassin \
  --restore /tmp/bayes.db

Langkah ini akan mengembalikan seluruh data training SpamAssassin ke MTA baru.

Step 4 Restart Service Antispam

Agar perubahan diterapkan, lakukan restart service antispam:

Jika dijalankan sebagai user zextras:

zmantispamctl restart

Jika menggunakan Ubuntu 24.04 atau RHEL 9 (systemd):

systemctl restart carbonio-mailthreat

Penutup

Dengan melakukan migrasi database Bayes SpamAssassin, node MTA baru pada Carbonio dapat langsung menggunakan hasil training yang sama tanpa harus menunggu proses pembelajaran ulang.

Proses ini sangat direkomendasikan untuk menjaga konsistensi proteksi spam, meningkatkan kualitas filtering email, serta meminimalkan gangguan terhadap pengguna saat perubahan infrastruktur dilakukan.

Leave a Reply

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