Membatasi jumlah pengiriman email pada Exim
Salah satu hal penting yang berpengaruh terhadap tingkat pengantaran email adalah reputasi alamat IPnya. Kalau IP VPS anda disalahgunakan oleh klien untuk mengirimkan email secara massal maka tak lama kemudian pasti masuk blacklist, ini berpengaruh ke website – website lain dalam satu alamat IP yang sama. Nah… kasusnya sekarang saya memakai VestaCP untuk control panelnya dan ingin membatasi jumlah atau frekuensi pengiriman email dalam waktu tertentu per user. Biar tidak kebablasan.
Di VestaCP menggunakan Exim sebagai MTA (Mail Transfer Agent) jadi kita akan mengedit konfigurasinya (exim.conf
) untuk menambahkan peraturan limit SMTP. Saya contohkan ingin membatasi 100 email saja per jam per pengguna bila lewat SMTP dan 50 bila tidak, tinggal tambahkan kode berikut:
acl_not_smtp = acl_not_smtp
begin acl
acl_not_smtp:
deny message = Kiriman email melebihi batas - $sender_rate / $sender_rate_period
ratelimit = 50 / 1h / leaky
accept
acl_check_rcpt:
deny message = Kiriman email SMTP terlalu banyak - $sender_rate / $sender_rate_period
ratelimit = 100 / 1h / leaky
accept hosts = net-lsearch;/etc/exim/whitelist
Setelah itu silahkan restart proses Exim dan seharusnya aturannya sudah diterapkan. Apabila kuota emailnya sudah habis maka akan muncul pesan error dalam lognya.