Loncat ke konten utama

Firewall Linux

Diperbarui: 29 Oktober 2026
By Willya Randika

Firewall Linux memutuskan paket jaringan mana yang boleh masuk, keluar, atau diteruskan. Di server modern, alat yang umum adalah UFW sebagai frontend sederhana, nftables, dan iptables legacy. Tujuannya bukan hanya memblokir serangan, tapi juga mengurangi port yang tidak sengaja terbuka.

Prinsip dasar

Gunakan default deny incoming dan allow hanya port yang diperlukan. Izinkan koneksi established dan related supaya sesi yang sudah berjalan tidak terputus. Batasi SSH berdasarkan IP kalau memungkinkan. Kalau server memakai IPv6, atur juga aturan IPv6 karena aturan IPv4 saja bisa meninggalkan celah.

Contoh UFW:

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw limit OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status verbose

ufw limit membatasi percobaan koneksi berulang pada port tersebut. Untuk akses yang lebih ketat, gunakan sudo ufw allow from 203.0.113.10 to any port 22 proto tcp, lalu hapus aturan SSH yang terbuka.

nftables

sudo nft add table inet filter
sudo nft add chain inet filter input '{ type filter hook input priority 0; policy drop; }'
sudo nft add rule inet filter input ct state established,related accept
sudo nft add rule inet filter input iif lo accept
sudo nft add rule inet filter input tcp dport { 22, 80, 443 } accept

Aturan dievaluasi berurutan. Tempatkan accept untuk koneksi established sebelum aturan drop. Simpan konfigurasi agar tetap ada setelah reboot.

Docker dan IPv6

Docker sering menambahkan aturan NAT sendiri yang melewati UFW. Port yang dipublikasikan dengan -p 5432:5432 bisa terbuka ke internet meskipun UFW memblokirnya. Bind ke 127.0.0.1:5432:5432, gunakan jaringan Docker, atau tambahkan aturan di rantai DOCKER-USER.

Uji dari mesin lain dengan nmap atau nc. Jangan hanya percaya ufw status. Untuk IPv6, pastikan family inet di nftables atau aturan ip6tables mencakup port yang sama.

Yang sering salah

Mengaktifkan firewall sebelum mengizinkan SSH bisa membuat Anda terkunci. Siapkan konsol provider. Membuka port database ke publik juga berbahaya. MySQL dan PostgreSQL cukup listen di localhost atau jaringan privat.

Firewall bukan satu-satunya keamanan. Tetap patch, gunakan 2FA, dan batasi login. Firewall melengkapi SSH, brute force protection, dan WAF.

FAQ

UFW atau nftables, mana yang sebaiknya dipakai?

UFW cukup untuk aturan sederhana dan mudah dibaca. nftables lebih fleksibel untuk aturan kompleks, NAT, dan logging. Jangan mencampur keduanya tanpa memahami konversinya.

Apakah firewall bisa menggantikan fail2ban?

Tidak sepenuhnya. Firewall membatasi port. Fail2ban bereaksi terhadap pola login gagal. Keduanya bisa dipakai bersama.

Mengapa port Docker tetap terbuka setelah UFW diaktifkan?

Docker menulis aturan sendiri di rantai NAT dan filter. Gunakan binding localhost, jaringan privat, atau aturan DOCKER-USER untuk mengontrolnya.

Disclaimer: Artikel WikiHosting disusun untuk tujuan edukasi dan referensi. Teknologi hosting terus berkembang, sehingga beberapa informasi teknis mungkin berubah seiring waktu.