Belajar UFW - Aturan Allow & Deny Dasar
Episode 4 of 23

Belajar UFW - Aturan Allow & Deny Dasar

Menguasai dua kata kunci inti UFW: allow dan deny. Membuat aturan port sederhana dan kombinasi port plus protokol TCP/UDP, memahami pola default deny incoming dan allow outgoing, serta memilih antara reject dan drop sesuai kebutuhan

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

Pendahuluan

Di episode 3 UFW sudah aktif dan SSH aman. Sekarang kita masuk ke inti pengelolaan firewall sehari-hari: aturan allow dan deny. Hampir semua pekerjaan UFW kalian — membuka port web, memblokir layanan mencurigakan, membatasi akses — adalah variasi dari dua kata kunci ini.

Mengapa episode ini penting? Karena aturan yang salah arah (allow vs deny), salah protokol (TCP vs UDP), atau salah port bisa membuka celah keamanan atau mematikan layanan produksi. Memahami pola pikir di balik allow/deny akan membuat kalian menulis ruleset yang bersih sejak awal — bukan menumpuk aturan lalu bertanya-tanya kenapa layanan rusak.

Anatomi Aturan UFW

Setiap aturan UFW pada dasarnya menjawab empat pertanyaan:

Anatomi aturan UFW
ufw [allow | deny | limit] [arah] [from SUMBER] [to TUJUAN] [port PORT] [proto PROTO]

Dalam episode ini kita fokus pada bentuk paling sederhana — hanya port dan protokol. Bentuk lengkap dengan source/destination menyusul di episode 5-6.

Aturan Allow Dasar

Allow Port Saja

Perintah paling sederhana untuk membuka sebuah port (mengizinkan TCP dan UDP):

Buka port 80 (TCP+UDP)
sudo ufw allow 80

Perhatikan: tanpa menyebut protokol, UFW membuka kedua protokol untuk port itu. Ini sering lebih permisif dari yang dibutuhkan — HTTP di port 80 misalnya hanya butuh TCP.

Allow Port + Protokol

Praktik terbaiknya: selalu sebutkan protokolnya. Gunakan tcp untuk layanan yang butuh koneksi andal (web, SSH, email), udp untuk layanan tanpa koneksi (DNS, DHCP, game streaming):

Buka port dengan protokol spesifik
sudo ufw allow 80/tcp
sudo ufw allow 53/udp
Output
Rule added

Aturan 80/tcp dan 53/udp adalah contoh paling umum sepanjang hidup kalian sebagai admin. Selalu tanya diri: apakah layanan ini benar-benar butuh UDP? Jika ragu, batasi ke TCP.

Membuka Layanan Populer

Beberapa layanan punya nama yang sudah dikenal UFW — shortcut dari application profiles yang akan dibahas di episode 7:

Allow dengan nama layanan
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https

ufw allow ssh sama dengan ufw allow 22/tcp. UFW menerjemahkan nama ke port dari file application profile di /etc/ufw/applications.d/.

Aturan Deny Dasar

deny memblokir lalu lintas. Contoh paling terkenal: port 23 (telnet, tidak aman) sebaiknya ditolak total:

Deny port 23 (telnet)
sudo ufw deny 23/tcp
Output
Rule added

Setelah aturan ini ada, koneksi telnet dari mana pun akan dibuang (drop) — tidak ada balasan ke pengirim, sehingga pemindai kesulitan mendeteksi keberadaan port.

Note

Ingat kembali perbedaan dari episode 0: UFW deny = drop (diam), sedangkan reject (kita pakai di aturan-aturan sistem) = kirim balasan "port tertutup". Drop cocok untuk menyembunyikan port; reject cocok untuk layanan yang memang harus tampak tertutup, seperti port yang tidak digunakan pada layanan publik.

Pola Default: Deny Incoming, Allow Outgoing

Inilah fondasi keamanan seluruh series. Default policies UFW (dari episode 2) berarti:

  • Incoming → DROP: tidak ada koneksi masuk yang diizinkan kecuali kalian buka aturannya.
  • Outgoing → ACCEPT: server bebas mengirim lalu lintas keluar — update paket, koneksi keluar, semuanya jalan normal.
Default policies yang ideal
Default: deny (incoming), allow (outgoing), disabled (routed)

Konsekuensi praktis dari pola ini: untuk membuka sebuah layanan, kalian cukup menambahkan aturan allow — tidak perlu menulis aturan deny satu per satu untuk sisanya. Semua yang tidak diizinkan otomatis tertutup. Ini filosofi default deny yang akan kita pelajari mendalam di episode 9.

Allow dan Deny: Kasus Nyata

Bayangkan sebuah VPS yang menjalankan SSH (22), web server (80/443), dan DNS resolver (53/udp). Ruleset-nya:

Ruleset VPS contoh
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 53/udp
sudo ufw deny 23/tcp

Perhatikan pola yang konsisten: layanan diizinkan eksplisit, sisanya dibiarkan jatuh ke default DROP. deny 23/tcp di atas hanyalah penegasan visual — sebenarnya port 23 sudah tertutup oleh default policy. Itulah keindahan default deny: aturan deny eksplisit hanya dibutuhkan untuk menegaskan niat atau untuk alasan dokumentasi.

Hasil ufw status
Status: active
 
To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
443/tcp                    ALLOW       Anywhere
53/udp                     ALLOW       Anywhere
23/tcp                     DENY        Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
80/tcp (v6)                ALLOW       Anywhere (v6)
443/tcp (v6)               ALLOW       Anywhere (v6)
53/udp (v6)                ALLOW       Anywhere (v6)
23/tcp (v6)                DENY        Anywhere (v6)

Setiap aturan punya kembaran IPv6 — sekali lagi, keunggulan otomatisasi yang tidak perlu kalian tangani manual.

Common Pitfalls

Tiga kesalahan yang paling sering terjadi:

  1. Lupa protokol: ufw allow 80 membuka TCP dan UDP — lebih permisif dari yang dibutuhkan. Selalu sebutkan 80/tcp.
  2. Deny tidak membatalkan allow: urutan aturan itu penting. Jika ada allow 80/tcp lalu deny 80/tcp, hasilnya tergantung posisi di ruleset (episode 17 membahas ordering).
  3. Mengubah port layanan tapi lupa aturan firewall: mengubah SSH ke port 2222 tanpa ufw allow 2222/tcp = terkunci. Selalu sinkronkan perubahan layanan dengan aturan firewall.

Tip

Aturan praktis: buka port seminimal mungkin dan se-sesifik mungkin. ufw allow 80/tcp lebih baik dari ufw allow 80, dan jauh lebih baik daripada membuka port pada IP publik tanpa batas sumber. Ke arah yang lebih ketat kita akan berkembang di episode 5-6.

Penutup

Pada episode 4 ini, kalian telah menguasai dua kata kunci inti UFW.

Inti yang harus dibawa pulang:

  • ufw allow <port> membuka TCP+UDP; ufw allow <port>/tcp atau /udp lebih presisi dan selalu lebih baik.
  • ufw deny <port> menolak dengan drop; reject (balas tertutup) tersedia di aturan sistem.
  • Default policy deny incoming, allow outgoing membuat aturan deny eksplisit jarang diperlukan.
  • Selalu sebutkan protokol dan buka port seminimal mungkin.
  • Sinkronkan perubahan port layanan dengan aturan firewall agar tidak terkunci.

Di episode 5 selanjutnya, kita perluas cakupan aturan: port, range, dan interface — membuka range port seperti 6000:6010/tcp, membatasi aturan ke interface tertentu dengan allow in on eth0, dan menentukan IP sumber dengan from. Sampai jumpa di episode 5!

Belajar UFW - Aturan Allow & Deny Dasar | Belajar UFW