Nan[root] and Net[route]

“We can only see a short distance ahead, but we can see plenty there that needs to be done.” - Alan Turing

Jakarta/Indonesia:
Loading...

By Ferdinan Rizky • Aug 31, 2025 - 3 minute read

Integrasi CrowdSec ke Mikrotik

1. Persiapan di CrowdSec

  • Instal dan Konfigurasi CrowdSec
    Pastikan CrowdSec sudah terinstal dan berjalan dengan baik di server Anda. CrowdSec akan memonitor log dan mendeteksi aktivitas mencurigakan.

  • Buat Integrasi MikroTik di CrowdSec Console

    1. Masuk ke CrowdSec Console Anda.
    2. Pilih Integrations dan cari opsi untuk MikroTik.
    3. Buat integrasi baru. Anda akan diberikan kredensial (username dan password) serta URL API unik untuk integrasi ini.

    Penting: Catat informasi ini karena hanya akan ditampilkan sekali. URL ini akan menjadi sumber daftar blokir yang akan diambil oleh MikroTik.


2. Konfigurasi di MikroTik

Anda akan perlu membuat skrip di MikroTik yang akan mengambil daftar blokir dari API CrowdSec dan mengimpornya ke daftar alamat (address-list) di firewall MikroTik Anda.

Buat Skrip untuk Mengambil Daftar Blokir

Gunakan perintah /tool fetch untuk mengunduh daftar blokir dari URL API CrowdSec.
Contoh skrip (sesuaikan <integration_id>, <username>, dan <password> dengan informasi dari CrowdSec Console Anda):

mikrotik
:local name "[crowdsec]"
:local url "https://admin.api.crowdsec.net/v1/integrations/<integration_id>/content"
:local fileName "crowdsec_blocklist.rsc"

:log info "$name: Fetching blocklist from $url"

/tool fetch url="$url"     mode=https     dst-path=$fileName     http-auth-scheme=basic     user="<username>"     password="<password>"     idle-timeout="30s"

:if ([:len [/file find name=$fileName]] > 0) do={
    :log info "$name: Removing old ipv4 blocklist"
    /ip/firewall/address-list/remove [ find where list="crowdsec-integration" ];
    :log info "$name: Removing old ipv6 blocklist"
    /ipv6/firewall/address-list/remove [ find where list="crowdsec-integration" ];

    :log info "$name: Importing new blocklist"
    /import file-name=$fileName;
    :log info "$name: Import done"
} else={
  :log error "$name: Failed to fetch blocklist"
}
  • Simpan skrip ini di MikroTik Anda (misalnya di /system script).
  • Beri nama yang mudah diingat, contoh: fetch-crowdsec-blocklist.

Buat Scheduler untuk Menjalankan Skrip

Agar daftar blokir selalu diperbarui, buat scheduler di MikroTik untuk menjalankan skrip di atas secara berkala (misalnya, setiap 10 menit):

/system scheduler add   name="run-crowdsec-fetch"   start-time=startup   interval=10m   on-event="fetch-crowdsec-blocklist"   comment="Fetch CrowdSec blocklist periodically"

Buat Aturan Firewall

Tambahkan aturan firewall untuk memblokir IP yang ada di address-list hasil integrasi CrowdSec:

/ip firewall filter
add chain=input action=drop src-address-list=crowdsec-integration comment="Drop malicious IPs from CrowdSec (input)"
add chain=forward action=drop src-address-list=crowdsec-integration comment="Drop malicious IPs from CrowdSec (forward)"

Jika Anda menggunakan IPv6, tambahkan aturan serupa di /ipv6 firewall filter.


3. Verifikasi

  • Periksa log MikroTik untuk memastikan tidak ada error saat fetch dan import blocklist.
  • Cek /ip firewall address-list untuk memastikan crowdsec-integration sudah terisi.
  • Lakukan uji coba dari IP yang seharusnya terblokir (jika aman) untuk memastikan integrasi berfungsi.

Penting untuk Diperhatikan

  • Lokasi Skrip: Pastikan skrip tersimpan dengan benar di MikroTik Anda.
  • Hak Akses: User MikroTik yang digunakan harus punya hak akses membuat/mengedit skrip & firewall.
  • Resource Router: CrowdSec blocklist bisa besar → pastikan router cukup kuat (CPU/RAM). Untuk router kecil, batasi hanya skenario penting.
  • Whitelist: Buat whitelist IP terpercaya agar tidak ikut terblokir. Aturan whitelist harus di atas aturan drop.
  • Update Dokumentasi: Selalu cek CrowdSec Docs karena API bisa berubah sewaktu-waktu.

Conclusion

Integrasi CrowdSec dengan MikroTik memberikan lapisan perlindungan tambahan yang otomatis dan adaptif terhadap ancaman internet.
Dengan update blocklist berkala, router Anda akan selalu memiliki daftar IP berbahaya terbaru, sehingga serangan dapat dicegah sejak dini tanpa campur tangan manual.

  • ✅ Otomatisasi penuh melalui skrip + scheduler
  • ✅ Perlindungan real-time terhadap IP berbahaya
  • ✅ Dapat disesuaikan dengan resource router dan kebutuhan jaringan

References