Dalam dunia email, mengelola lalu lintas pesan menjadi hal yang semakin penting, terutama ketika berbicara tentang keamanan dan efisiensi. Dengan semakin banyaknya email yang masuk dan keluar dari server setiap hari, perlu adanya kontrol yang ketat untuk menghindari situasi yang tidak diinginkan, seperti spam atau penyalahgunaan sumber daya server.
Di sinilah CBPolicyd hadir sebagai alat yang sangat berguna dalam mengelola dan mengontrol lalu lintas email pada server Zextras Carbonio CE. Salah satu fitur andalannya adalah Rate Limiting, yang memungkinkan untuk mengatur batasan jumlah email yang dapat dikirimkan oleh pengguna atau domain dalam periode waktu tertentu. Dengan mengimplementasikan Rate Limit, dapat menjaga kualitas layanan email, mengurangi risiko penyalahgunaan, dan memastikan sumber daya server tetap efisien.
Dalam tulisan ini, akan dijelaskan langkah-langkah untuk mengimplementasikan Rate Limit pada Zextras Carbonio CE menggunakan CBPolicyd. Sebelum hal tersebut dilakukan, silakan ikuti panduan instalasi dan aktivasi CBPolicyd terlebih dahulu pada tautan berikut: zextras-carbonio-ce-instalasi-dan-aktivasi-cbpolicyd
– Akses CBPolicyd WebUI : http://IP-CARBONIO-CE:1080/webui/index.php
– Pilih menu Quotas | Configure. Pada bagian Action, pilih Add
– Sesuaikan isian yang ada sesuai dengan kebutuhan
Name : Rate Limit Track : sender:user@domain Period : 3600 Link to policy : Default Verdict : Defer (delay) Data : Informasi yang diberikan pada user ketika quota terpenuhi. Contoh : Sorry, your quotas to sending email has been full. please try again later Stop processing here: Yes
– Setelah sesuai, klik Submit Query
– Pilih kembali menu Quotas | Configure. Pilih policy yang baru saja dibuat. Pada bagian Action, pilih Change. Edit Disabled menjadi No. Kemudian Submit Query
– Pilih kembali menu Quotas | Configure. Pilih policy yang baru saja dibuat. Pada bagian Action, pilih Limits.
– Setelah masuk pada menu Quota Limits, pada bagian Action pilih Add. Sesuaikan isian yang ada sesuai dengan kebutuhan
Type : Message Count Counter Limit : 200
– Setelah sesuai, klik Submit Query
– Pilih kembali menu Quotas | Configure. Pilih policy yang baru saja dibuat. Pada bagian Action, pilih Limits
– Setelah masuk pada menu Quota Limits, pilih Quota Limit yang baru saja dibuat. pada bagian Action pilih Change. Edit Disabled menjadi No. Kemudian Submit Query
– Selesai
Sekarang, server Zextras Carbonio CE sudah terpasang rate limit dengan ketentuan maksimum 200 email per user per jam. Berikut adalah sample log kiriman email yang terhitung oleh CBPolicyd
[2023/09/09-15:08:20 - 4785] [CORE] INFO: module=Quotas, mode=update, host=127.0.0.1, helo=mail.imanudin.web.id, from=zextras@imanudin.web.id, to=zextras@imanudin.web.id, reason=quota_update, policy=1, quota=3, limit=4, track=Sender:zextras@imanudin.web.id, counter=MessageCount, quota=2.00/200 (1.0%) [2023/09/09-15:08:21 - 4785] [CBPOLICYD] INFO: Got request #3 (pipelined)
Jika quota sudah terpenuhi, pada log akan muncul pesan seperti berikut
Sep 9 15:14:47 mail postfix/smtpd[16469]: NOQUEUE: reject: RCPT from localhost[127.0.0.1]: 450 4.7.1 <zextras@imanudin.web.id>: Sender address rejected: Sorry, your quotas to sending email has been full. please try again later; from=<zextras@imanudin.web.id> to=<zextras@imanudin.web.id> proto=ESMTP helo=
Jika membutuhkan informasi terkait solusi Zextras (Instalasi dan Implementasi), dapat menghubungi Team Aktiva melalui form: https://www.aktiva.co.id/kontak/ atau email ke sales@aktiva.co.id
Silakan dicoba dan semoga bermanfaat 🙂