Managing Firewall in Linux with UFW (+GUFW)
UFW adalah singkatan bahasa Inggris dari Uncomplicated Firewall. Boleh dibilang, ufw merupakan replacement dari program manajemen firewall yang lebih “senior” (dan tentu saja -sedikit- lebih kompleks), yaitu iptables. Nah, karena UFW adalah tool yang berbasis command line interface (CLI), jadi, GUFW adalah versi graphical user interface (GUI) dari UFW. Singkatnya, GUFW adalah singkatan dari GUI UFW.
Sebentar, lalu apa itu firewall?
Mari sejenak melihat definisi dari kamus bahasa Inggris online yang cukup populer, Merriam Webster berikut:
Firewall: “computer hardware or software that prevents unauthorized access to private data (as on a company’s local area network or intranet) by outside computer users (as of the Internet).”1
Definisinya sudah benar, tapi belum lengkap. Jadi, mari kembali lihat definisi lain, misalnya seperti yang dikatakan oleh Kaspersky di laman websitenya yang saya kutip berikut:
Firewall: “a computer network security system that restricts internet traffic in to, out of, or within a private network.”2
Nah, dari referensi kedua definisi tersebut, saya menyimpulkan definisi firewall sebagai “software komputer yang digunakan untuk mencegah atau membatasi lalu lintas internet ke luar jaringan, ke dalam jaringan, maupun di dalam jaringan”.
Instalasi
Seperti biasa, ufw sebagai tool standard, dapat di-install di setiap distro linux via package manager-nya masing-masing.
| Distro | Command |
|---|---|
| Debian/Ubuntu | sudo apt install ufw |
| Arch Linux | sudo pacman -Sy ufw |
| Fedora | sudo dnf install ufw |
| Opensuse | sudo zypper install ufw |
Penggunaan
Sebelum ke penggunaan, ada beberapa hal penting yang perlu diketahui terlebih dahulu3.

- Firewall seperti
ufwbisa dipasang di perangkat apapun, seperti PC, laptop, dan server (khususnya yang bersistem operasi Linux). - Aturan utama firewall umumnya hanya 2: deny & allow.
- Traffic yang dilarang (deny) atau diizinkan (allow) juga hanya ada 2 tipe: incoming & outgoing.
- Ada traffic khusus pada perangkat yang biasa digunakan sebagai router misalnya, yaitu routed. (Tidak dibahas dalam artikel ini).
Perintah Umum
Berikut adalah commands atau perintah-perintah untuk mengaktifkan, mematikan, dan melihat status ufw.
Enable
ufw tidak otomatis berjalan setelah instalasi selesai. Jadi, untuk menjalankan firewall via ufw kita perlu mengetikkan perintah berikut:
sudo ufw enableOutputnya:
Firewall is active and enabled on system startupDisable
Untuk menon-aktifkan ufw,
sudo ufw disableOutputnya:
Firewall stopped and disabled on system startupStatus
Jika ingin melihat status ufw saat ini, gunakan perintah:
sudo ufw statusOutputnya, jika ufw sedang aktif:
Status: activeDan jika sedang tidak aktif:
Status: inactiveKita juga bisa melihat rule yang sudah ditambahkan ke ufw berdasarkan nomor urutnya:
sudo ufw status numberedOutputnya:
Status: active
To Action From -- ------ ----[ 1] Anywhere DENY IN 192.168.0.101[ 2] Anywhere DENY IN 192.168.0.0/24[ 3] 80 ALLOW IN Anywhere[ 4] 443 ALLOW IN Anywhere[ 5] 22 ALLOW IN Anywhere[ 6] 80 (v6) ALLOW IN Anywhere (v6)[ 7] 443 (v6) ALLOW IN Anywhere (v6)[ 8] 22 (v6) ALLOW IN Anywhere (v6)Terlihat bahwa rule untuk memblokir subnet ditambahkan pada urutan ke dua di
ufw. Artinya, setiap rule baru yang dibuat, akan ditambahkan di urutan berikutnya. Selain itu,ufwsebagai firewall membaca dan memprioritaskan rule berdasarkan urutan nomor yang paling rendah terlebih dahulu (0,1,2,3,…dst).
Berdasarkan status ufw tersebut, kita tahu bahwa aturan atau rule ufw sangat sederhana, dia hanya mencatat 3 hal:
- tujuan paketnya (from)
- apa yang harus diperbuat (action), dan
- sumber paketnya (to).
Delete
Kita juga bisa menghapus rule yang sudah dibuat. Setidaknya, ada 2 cara untuk menghapus rule di ufw:
- Rule dihapus berdasarkan nomor urutnya.
Caranya,
- lihat nomor rule yang akan dihapus dengan perintah
sudo ufw status numbered. - hapus rule yang diinginkan dengan perintah:
sudo ufw delete 6Outputnya:
Deleting: deny 22Proceed with operation (y|n)? y
Rule deleted (v6)- Rule dihapus berdasarkan rule itu sendiri.
Caranya,
- lihat nomor rule yang akan dihapus dengan perintah
sudo ufw status numbered. - hapus rule yang diinginkan dengan perintah:
sudo ufw delete deny sshOutput:
Rule deletedRule deleted (v6)Reset
Perintah reset mirip dengan perintah delete. Namun, perintah reset lebih “bar-bar” karena akan menghapus seluruh rule yang sudah dibuat dan mengubahnya ke default. Perintahnya:
sudo ufw resetOutput:
Resetting all rules to installed defaults. Proceed with operation (y|n)? yDeny
Kita akan memblokir traffic/packet/access menggunakan perintah deny di ufw.
Ip Address
Gunakan perintah berikut untuk memblokir ip address. Dengan perintah tersebut, semua paket dari (incoming) dan ke (outgoing) ip address tersebut akan diblokir.
sudo ufw deny from 192.168.0.101Outputnya:
Rule addedKita bisa memastikan bahwa rule tersebut sudah ditambahkan ke dalam ufw melalui perintah sudo ufw status, yang outputnya:
Status: active
To Action From-- ------ ----Anywhere DENY 192.168.0.101Subnet
Kita juga bisa memblokir subnet tertentu, melalui perintah:
sudo ufw deny from 192.168.0.0/24Outputnya:
Rule addedDengan rule ini, paket-paket yang berasal dari subnet 192.168.0.0/24 akan diblok.
Lagi, kita bisa gunakan perintah sudo ufw status untuk melihat rule yang sudah dibuat:
Status: active
To Action From-- ------ ----Anywhere DENY 192.168.0.101Anywhere DENY 192.168.0.0/24Interface
Kita juga bisa memblokir paket yang datang (incoming) di interface tertentu. Misalnya, saya memblokir paket yang masuk melalui interface enp0s3:
sudo ufw deny in on enp0s3Outputnya:
Rule addedRule added (v6)Dengan rule ini, paket apapun yang datang ke interface enp0s3 akan diblok.
Di outputnya, terlihat ada 2 rule yang ditambahkan,
- Rule added: untuk ipv4
- Rule added: untuk ipv6
Statusnya rule ufw sekarang:
Status: active
To Action From-- ------ ----Anywhere DENY 192.168.0.101Anywhere DENY 192.168.0.0/24Anywhere on enp0s3 DENY AnywhereAnywhere (v6) on enp0s3 DENY Anywhere (v6)Kita juga bisa memvariasikan rule ini pada opsi yang lain, misalnya untuk ip address atau subnet yang spesifik.
Apps
Kita juga bisa memblokir koneksi dari atau ke spesifik aplikasi (ssh, http, ftp, etc) dengan perintah:
sudo ufw deny sshOutputnya:
Rule addedRule added (v6)Dengan rule ini, akses ssh dari manapun akan ditolak / diblok.
Status:
Status: active
To Action From-- ------ ----Anywhere DENY 192.168.0.101Anywhere DENY 192.168.0.0/24Anywhere on enp0s3 DENY Anywhere22 DENY AnywhereAnywhere (v6) on enp0s3 DENY Anywhere (v6)22 (v6) DENY Anywhere (v6)Kita juga bisa melihat apa saja applikasi yang tersedia di ufw dengan perintah:
sudo ufw app listOutput:
Available applications: AIM Bonjour CIFS DNS Deluge IMAP IMAPS IPP KTorrent Kerberos Admin Kerberos Full Kerberos KDC Kerberos Password LDAP LDAPS LPD MSN MSN SSL Mail submission NFS POP3 POP3S PeopleNearby SMTP SSH Socks Telnet Transmission Transparent Proxy VNC WWW WWW Cache WWW Full WWW Secure XMPP Yahoo qBittorrent svnservePort
Kalau kita ingin memblokir akses ke port tertentu, kita bisa gunakan perintah:
sudo ufw deny 21Output:
Rule addedRule added (v6)Dengan rule ini, akses ke port 21 dari manapun akan ditolak / diblok.
Status:
Status: active
To Action From-- ------ ----Anywhere DENY 192.168.0.101Anywhere DENY 192.168.0.0/24Anywhere on enp0s3 DENY Anywhere22 DENY Anywhere21 DENY AnywhereAnywhere (v6) on enp0s3 DENY Anywhere (v6)22 (v6) DENY Anywhere (v6)21 (v6) DENY Anywhere (v6)Allow
Kita akan mengizinkan traffic/packet/access menggunakan perintah allow di ufw. Mostly, perintahnya sama dengan yang ada di bagian “deny”. Bedanya, kita mengganti perintah deny dengan allow.
Ip Address
Kita bisa mengizinkan akses dari ip address dengan perintah:
sudo ufw allow from 192.168.0.101Output:
Rule addedDengan perintah ini, akses dari ip address 192.168.0.101 akan diizinkan ke komputer kita.
Status:
Status: active
To Action From-- ------ ----Anywhere ALLOW 192.168.0.101Subnet
Untuk mengizinkan paket yang datang dari subnet tertentu, gunakan perintah:
sudo ufw allow from 192.168.0.0/24Output:
Rule addedDengan perintah ini, akses dari ip address berapapun dari subnet 192.168.0.0/24 akan diizinkan ke komputer kita.
Status:
Status: active
To Action From-- ------ ----Anywhere ALLOW 192.168.0.101Anywhere ALLOW 192.168.0.0/24Interface
Jika kita ingin mengizinkan akses ke interface di komputer kita, perintahnya adalah:
sudo ufw allow in on enp0s3Output:
Rule addedRule added (v6)Dengan perintah ini, akses dari manapun akan diizinkan ke interface enp0s3.
Status:
Status: active
To Action From-- ------ ----Anywhere ALLOW 192.168.0.101Anywhere ALLOW 192.168.0.0/24Anywhere on enp0s3 ALLOW AnywhereAnywhere (v6) on enp0s3 ALLOW Anywhere (v6)Kita juga bisa memvariasikan rule ini pada opsi yang lain, misalnya untuk ip address atau subnet yang spesifik.
Apps
Beberapa aplikasi juga dapat diizinkan aksesnya via ufw, dengan perintah:
sudo ufw allow sshOutput:
Rule addedRule added (v6)Dengan perintah ini, komputer manapun dapat mengakses ssh di komputer kita.
Status:
Status: active
To Action From-- ------ ----Anywhere ALLOW 192.168.0.101Anywhere ALLOW 192.168.0.0/24Anywhere on enp0s3 ALLOW Anywhere22 ALLOW AnywhereAnywhere (v6) on enp0s3 ALLOW Anywhere (v6)22 (v6) ALLOW Anywhere (v6)Kita juga bisa melihat apa saja applikasi yang tersedia di ufw dengan perintah:
sudo ufw app listOutput:
Available applications: AIM Bonjour CIFS DNS Deluge IMAP IMAPS IPP KTorrent Kerberos Admin Kerberos Full Kerberos KDC Kerberos Password LDAP LDAPS LPD MSN MSN SSL Mail submission NFS POP3 POP3S PeopleNearby SMTP SSH Socks Telnet Transmission Transparent Proxy VNC WWW WWW Cache WWW Full WWW Secure XMPP Yahoo qBittorrent svnservePort
Port tertentu di komputer kita juga dapat dibuka izin aksesnya dengan perintah:
sudo ufw allow 21Output:
Rule addedRule added (v6)Dengan perintah ini, kita memberikan izin kepada siapapun untuk dapat mengakses port 21 di komputer kita.
Status:
Status: active
To Action From-- ------ ----Anywhere ALLOW 192.168.0.101Anywhere ALLOW 192.168.0.0/24Anywhere on enp0s3 ALLOW Anywhere22 ALLOW Anywhere21 ALLOW AnywhereAnywhere (v6) on enp0s3 ALLOW Anywhere (v6)22 (v6) ALLOW Anywhere (v6)21 (v6) ALLOW Anywhere (v6)Help
Seperti tools CLI yang lainnya, jika kita bingung bagaimana cara menggunakan ufw atau perintah apa saja yang tersedia di ufw, kita bisa gunakan perintah berikut untuk mencari bantuan:
ufw --helpAtau
ufw -hFootnotes
Support & Share
If this article helped you, please share or support!











