Belajar UFW - Logging & Monitoring
Series/Belajar UFW/Episode 12
Episode 12 of 23

Belajar UFW - Logging & Monitoring

Mengaktifkan dan mengelola log UFW dengan level low, medium, dan high, membaca /var/log/ufw.log dan journal, mendeteksi port scan serta brute force dari pola log, dan memanfaatkan ufw show added untuk audit ruleset

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Sejauh ini kita sibuk menulis aturan — tapi sebuah firewall yang tidak menghasilkan log adalah kutukan hitam: kalian tidak tahu apa yang ditolak, siapa yang mencoba masuk, atau kapan serangan terjadi. Episode 12 menutup kesenjangan itu: logging & monitoring UFW.

Mengapa ini penting? Karena log adalah jendela ke perilaku jaringan. Dari log UFW kalian bisa melihat port scan yang datang, brute force yang gagal, atau kesalahan konfigurasi sendiri. Log yang benar juga menjadi bahan bakar fail2ban/CrowdSec dari episode 10 — dan sumber data untuk alerting (episode 21).

Mengaktifkan Logging

Perintah dasar:

Aktifkan logging
sudo ufw logging on

ufw logging on mengaktifkan logging pada level low. Level lengkap:

Level logging UFW
sudo ufw logging low
sudo ufw logging medium
sudo ufw logging high
sudo ufw logging off
LevelPaket yang DicatatKeterangan
offTidak adaHemat disk, buta terhadap ancaman
low (default on)Paket yang tidak cocok aturan (jatuh ke default)Cocok untuk produksi
mediumDi atas + paket yang cocok dengan aturan allow/denyLebih banyak noise
highHampir semua paket (tanpa rate limit)Verbose, hanya untuk debugging

Cek level aktif:

Level logging di status
sudo ufw status verbose
 
Status: active
Logging: on (low)

Note

Level low adalah pilihan seimbang untuk produksi: ia mencatat paket yang ditolak (yang paling penting untuk keamanan) tanpa membanjiri disk dengan kebisingan koneksi yang sah. Naikkan level hanya saat debugging.

Di Mana Log Disimpan

/var/log/ufw.log

Log utama UFW di sistem berbasis syslog:

Baca log UFW
sudo tail -n 20 /var/log/ufw.log

Contoh baris log:

Contoh baris log UFW
Aug 16 10:32:04 srv01 kernel: [UFW BLOCK] IN=eth0 OUT= MAC=... SRC=185.220.101.34
DST=203.0.113.5 LEN=60 TOS=0x00 PREC=0x00 TTL=53 ID=58043 PROTO=TCP SPT=38214
DPT=22 WINDOW=64240 RES=0x00 SYN URGP=0

Baca info pentingnya:

  • [UFW BLOCK] — aksi: BLOCK (ditolak), ALLOW (diizinkan).
  • SRC / DST — IP sumber dan tujuan.
  • DPT — port tujuan (di sini 22 = SSH).
  • PROTO — protokol (TCP/UDP/ICMP).
  • IN=eth0 — interface tempat paket masuk.

Journald

Di sistem dengan journald (default Ubuntu modern), log UFW juga bisa diakses:

Log UFW via journalctl
sudo journalctl -k -g UFW --since today

Mendeteksi Scan dan Brute Force dari Log

Pola Port Scan

Port scan klasik menyerang banyak port berbeda dari satu IP dalam waktu singkat. Cari dengan:

Cari IP dengan blok terbanyak
sudo grep "UFW BLOCK" /var/log/ufw.log | awk '{print $12}' | cut -d= -f2 | sort | uniq -c | sort -rn | head -10

Output yang sehat menunjukkan beberapa IP kecil; IP yang muncul ratusan kali dalam menit menandakan scan.

Pola Brute Force

Brute force SSH biasanya muncul sebagai DPT=22 berulang dari IP yang sama:

Cari brute force port 22
sudo grep "DPT=22" /var/log/ufw.log | awk '{print $12}' | cut -d= -f2 | sort | uniq -c | sort -rn | head -10

Ketika kalian melihat IP mendominasi dengan puluhan upaya, saatnya mempertimbangkan ban manual atau memastikan fail2ban/CrowdSec dari episode 10 bekerja.

Follow Real-time

Pantau langsung:

Pantau log secara real-time
sudo tail -f /var/log/ufw.log

Memblokir IP Mencurigakan dari Log

Setelah menemukan IP penyerang, blokir — baik sementara (dan bersihkan nanti) atau permanen:

Blokir IP mencurigakan
sudo ufw deny from 185.220.101.34
sudo ufw status
Hapus blokir jika perlu
sudo ufw delete deny from 185.220.101.34

Warning

Berhati-hatilah memblokir IP dari log: scanner yang "polos" (misalnya vendor keamanan, crawler) juga akan tercatat sebagai BLOCK. Blokir permanen hanya untuk IP yang jelas-jelas menyerang berulang; untuk sisanya, biarkan fail2ban yang menangani dengan ban terbatas.

Audit Ruleset: ufw show

Selain log, UFW punya perintah untuk memeriksa ruleset dari sudut berbeda:

Show aturan yang ditambahkan
sudo ufw show added
Output ufw show added
Added user rules (see 'ufw status' for running firewall):
ufw allow 22/tcp
ufw allow 80/tcp
ufw limit 443/tcp

ufw show added menampilkan perintah asli yang kalian ketik — berguna untuk merekonstruksi ruleset dari awal, misalnya untuk dokumentasi (episode 21) atau migrasi ke server lain (episode 16).

Perintah lain yang berguna:

Show ruleset mentah backend
sudo ufw show raw

ufw show raw menampilkan ruleset lengkap (termasuk before/after) dalam format backend — jendela ke apa yang sebenarnya dieksekusi kernel, berguna untuk debugging lanjutan di episode 18.

Rotasi dan Retensi Log

Log yang tidak dirotasi akan memakan disk. Ubuntu menangani rotasi lewat logrotate secara otomatis. Verifikasi konfigurasi:

Cek rotasi log UFW
cat /etc/logrotate.d/ufw
/etc/logrotate.d/ufw (contoh)
/var/log/ufw.log
{
  rotate 4
  weekly
  missingok
  notifempty
  compress
}

Artinya: rotasi mingguan, simpan 4 rotasi, kompresi rotasi lama. Jika log kalian sangat padat (level high), pertimbangkan rotate harian.

Common Pitfalls

  1. Level high ditinggalkan menyala: membanjiri disk dan CPU. Kembalikan ke low setelah debugging selesai.
  2. Lupa bahwa deny juga bisa di-log: level low hanya mencatat BLOCK; jika kalian butuh tahu siapa yang di-allow, naikkan ke medium.
  3. Parsing log tanpa rate-limit awareness: satu serangan bisa menghasilkan ribuan baris dalam detik — selalu agregasi (uniq -c), jangan baca mentah.
  4. Memblokir IP tanpa verifikasi: pastikan IP memang menyerang, bukan IP kalian sendiri atau layanan yang dipakai.

Penutup

Pada episode 12 ini, kalian telah menguasai logging dan monitoring.

Inti yang harus dibawa pulang:

  • ufw logging on = level low; tersedia low/medium/high/off.
  • Log ada di /var/log/ufw.log dan bisa diakses via journalctl -k -g UFW.
  • Baca pola: [UFW BLOCK], SRC, DPT, PROTO untuk deteksi scan/brute force.
  • ufw show added merekonstruksi perintah ruleset; ufw show raw menampilkan ruleset backend.
  • Rotasi log ditangani logrotate; jaga level low di produksi.

Di episode 13 selanjutnya, kita masuk konfigurasi yang paling dinantikan: Port Forwarding & NAT — menambahkan aturan NAT di /etc/ufw/before.rules, mengubah DEFAULT_FORWARD_POLICY menjadi ACCEPT, mengaktifkan IP forwarding, dan meneruskan port 80/443 ke VM atau container. Sampai jumpa di episode 13!

Belajar UFW - Logging & Monitoring | Belajar UFW