1. Perbedaan Ubuntu dengan RHEL/CentOS
Pada Ubuntu:
- Backend firewall default adalah nftables
- UFW biasanya aktif
- Firewalld tidak selalu terinstall
Karena itu, sebelum menggunakan Firewalld, kita harus:
- Memastikan UFW dimatikan
- Menginstall Firewalld
- Mengaktifkan service Firewalld
2. Persiapan Awal (Sangat Penting)
2.1 Cek apakah UFW aktif
sudo ufw status
Jika aktif, nonaktifkan terlebih dahulu:
sudo systemctl stop ufw
sudo systemctl disable ufw
Ini penting agar tidak terjadi konflik rule firewall.
3. Instalasi Firewalld di Ubuntu 24.04
3.1 Update repository
sudo apt update
3.2 Install firewalld
sudo apt install firewalld -y
3.3 Aktifkan dan jalankan
sudo systemctl enable firewalld
sudo systemctl start firewalld
Cek status:
sudo systemctl status firewalld
Cek versi:
firewall-cmd --version
4. Konsep Dasar Firewalld (Wajib Dipahami)
Firewalld bekerja di atas:
- nftables (default Ubuntu modern)
Konsep utama:
- Zone
- Service
- Port
- Rich Rule
- Runtime vs Permanent
5. Konfigurasi Dasar Ubuntu Server Production
Misalnya server Anda digunakan untuk:
- SSH
- Web server (nginx / apache)
- Tidak ada database publik
5.1 Set default zone
sudo firewall-cmd --set-default-zone=public
5.2 Buka SSH (WAJIB sebelum lanjut)
sudo firewall-cmd --permanent --add-service=ssh
Jika Anda menggunakan port custom misalnya 2222:
sudo firewall-cmd --permanent --add-port=2222/tcp
5.3 Buka HTTP & HTTPS
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
5.4 Reload
sudo firewall-cmd --reload
5.5 Verifikasi
sudo firewall-cmd --list-all
6. Memahami Zone di Ubuntu
Cek zone:
sudo firewall-cmd --get-zones
Cek zone aktif:
sudo firewall-cmd --get-active-zones
Biasanya interface seperti ens18 atau eth0 berada di zone public.
7. Membuat Zone Khusus di Ubuntu
Contoh skenario:
Anda memiliki:
- Interface publik → ens18
- Interface internal → ens19
7.1 Buat zone baru
sudo firewall-cmd --permanent --new-zone=internal-net
7.2 Tambahkan interface
sudo firewall-cmd --permanent --zone=internal-net --add-interface=ens19
7.3 Buka hanya port database
sudo firewall-cmd --permanent --zone=internal-net --add-port=3306/tcp
7.4 Reload
sudo firewall-cmd --reload
Sekarang database hanya bisa diakses dari jaringan internal.
8. Membatasi SSH ke IP Tertentu (Best Practice Ubuntu VPS)
Langkah 1: Hapus ssh dari public
sudo firewall-cmd --permanent --remove-service=ssh
Langkah 2: Tambahkan rich rule
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="IP-ANDA" service name="ssh" accept'
Langkah 3: Reload
sudo firewall-cmd --reload
Sekarang hanya IP tersebut yang dapat SSH.
9. Rich Rule Advanced (Level Production)
9.1 Blokir IP penyerang
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="1.2.3.4" drop'
9.2 Rate limit SSH
sudo firewall-cmd --permanent --add-rich-rule='rule service name="ssh" limit value="3/m" accept'
9.3 Logging drop
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="1.2.3.4" log prefix="DROP-IP: " level="info" drop'
10. Lokasi Konfigurasi di Ubuntu
Konfigurasi berada di:
/etc/firewalld/
Zone file:
/etc/firewalld/zones/
Anda bisa melihat file XML untuk memahami struktur rule.
11. Logging dan Monitoring
Aktifkan log denied:
sudo firewall-cmd --set-log-denied=all
Cek log:
sudo journalctl -xe
Atau:
sudo journalctl -u firewalld
12. Best Practice Firewalld di Ubuntu 24.04
Untuk server production:
- Nonaktifkan UFW
- Gunakan zone public sebagai default
- Buka hanya port yang diperlukan
- Batasi SSH ke IP admin
- Jangan buka database ke internet
- Gunakan rich rule untuk proteksi tambahan
- Lakukan backup konfigurasi
Backup:
sudo cp -r /etc/firewalld /root/backup-firewalld
13. Perbandingan Singkat: UFW vs Firewalld
| Fitur | UFW | Firewalld |
|---|---|---|
| Mudah digunakan | Ya | Ya |
| Berbasis zone | Tidak | Ya |
| Rich rule advanced | Terbatas | Lengkap |
| Cocok untuk enterprise | Kurang | Ya |
Jika Anda ingin konfigurasi profesional, segmentasi jaringan, dan arsitektur multi-server, Firewalld lebih unggul.
14. Metode Latihan Agar Benar-benar Paham
Untuk benar-benar menguasai Firewalld di Ubuntu:
- Gunakan VPS lab
- Buat 2 VM tambahan
- Simulasikan:
- Web server
- App server
- Database server
- Gunakan nmap untuk testing
- Dokumentasikan setiap percobaan
Kesimpulan
Di Ubuntu 24.04, Firewalld berjalan di atas nftables dan memberikan kontrol firewall berbasis zone yang jauh lebih fleksibel dibanding UFW.
Dengan memahami:
- Zone
- Service
- Port
- Rich rule
- Runtime vs Permanent
Anda sudah berada di level sysadmin intermediate.