MODUL 16 FIREWALLS (ADINUSA)

Modul 16 membahas tentang Firewalls dalam administrasi sistem Linux.
Firewalls
Firewall digunakan untuk mengontrol akses masuk dan keluar dari sistem serta jaringan lokal. Ini merupakan fitur keamanan penting dalam jaringan modern guna mencegah intrusi dan serangan siber. Dengan firewall, pengguna dapat mengatur tingkat kepercayaan pada lalu lintas jaringan berdasarkan antarmuka tertentu atau alamat IP.
Di akhir modul ini, Anda akan mampu:
- Memahami konsep firewall dan pentingnya dalam sistem keamanan.
- Mengenali berbagai alat yang tersedia, baik melalui command line maupun antarmuka grafis.
- Memahami cara kerja firewalld dan perintah firewall-cmd.
- Mempelajari cara mengelola zones, sources, services, dan ports dalam firewall.
Apa Itu Firewall?
Firewall adalah sistem keamanan jaringan yang memantau dan mengontrol lalu lintas jaringan berdasarkan aturan tertentu. Firewall dapat berbentuk perangkat keras atau perangkat lunak, ditemukan dalam router jaringan, komputer individu, atau node jaringan. Beberapa firewall juga memiliki kemampuan routing.
Packet Filtering
Sebagian besar firewall bekerja dengan mekanisme Packet Filtering, di mana setiap paket data yang dikirim melewati jaringan dianalisis berdasarkan:
- Header (informasi alamat tujuan dan sumber, jenis paket, dan protokol)
- Payload (isi data yang dikirim)
- Footer (informasi tambahan terkait transmisi)
Paket data yang melewati firewall dapat:
- Diterima atau ditolak berdasarkan isi dan aturan tertentu.
- Dimodifikasi sebelum diteruskan.
- Dialihkan ke alamat lain.
- Diperiksa untuk alasan keamanan.
Generasi Firewall
- Firewall Awal (1980-an): Berbasis Packet Filtering, hanya memeriksa isi paket tanpa mempertimbangkan koneksi yang sedang berlangsung.
- Firewall Stateful: Dapat mengenali status koneksi (baru, sudah ada, atau tidak valid), mencegah serangan berbasis flooding.
- Application Layer Firewall: Mampu mengenali aplikasi dan protokol yang digunakan, serta memblokir lalu lintas yang mencurigakan.
Antarmuka dan Alat Firewall
Konfigurasi firewall dapat dilakukan dengan:
- Command line tools: Seperti
iptables,firewall-cmd,ufw. - Graphical interfaces: Seperti
system-config-firewall,firewall-config,gufw,yast.
Alat berbasis command line lebih fleksibel tetapi sering kali lebih sulit dipelajari dibandingkan GUI. Dalam modul ini, akan lebih difokuskan pada penggunaan paket firewalld, yang mencakup firewall-cmd dan firewall-config.
firewalld dan firewall-cmd
- firewalld adalah Dynamic Firewall Manager yang menggunakan zona firewall untuk mendefinisikan tingkat kepercayaan untuk antarmuka jaringan atau koneksi.
- Mendukung IPv4 dan IPv6.
- Memisahkan perubahan antara runtime (sementara) dan permanent (persisten).
- firewalld juga mendukung antarmuka untuk layanan atau aplikasi untuk menambahkan aturan firewall.
- File konfigurasinya disimpan di:
/etc/firewalld/usr/lib/firewalld- File di
/etc/firewalldmemiliki prioritas lebih tinggi dan sebaiknya digunakan oleh administrator sistem.
firewall-cmd
- firewall-cmd adalah alat CLI untuk mengelola firewalld.
- Perintah dasar untuk melihat bantuan:
firewall-cmd --help - Contoh opsi penting:
--state→ Menampilkan status firewall.--reload→ Memuat ulang firewall tanpa kehilangan informasi status.--complete-reload→ Memuat ulang firewall dan menghapus informasi status.--runtime-to-permanent→ Menyimpan konfigurasi runtime sebagai konfigurasi permanen.
Catatan Penting
- firewalld menggantikan iptables sebagai layanan firewall yang lebih modern.
- Tidak boleh menjalankan firewalld dan iptables secara bersamaan, karena dapat menyebabkan konflik.
firewalld Service Status
- firewalld adalah layanan yang harus berjalan untuk bisa mengonfigurasi firewall.
- Bisa diaktifkan/dinonaktifkan serta dimulai/dihentikan dengan perintah berikut:
sudo systemctl [enable|disable] firewalld sudo systemctl [start|stop] firewalld - Untuk memeriksa status layanan firewalld:
atausudo systemctl status firewalld
Jika firewalld aktif, outputnya akan menampilkan running.sudo firewall-cmd --state
Mengaktifkan IP Forwarding (IPv4)
- Jika memiliki lebih dari satu antarmuka jaringan saat menggunakan IPv4, IP forwarding harus diaktifkan dengan salah satu cara berikut:
atausudo sysctl net.ipv4.ip_forward=1echo 1 > /proc/sys/net/ipv4/ip_forward - Perintah
echotidak bersifat persisten, artinya akan hilang setelah reboot. - Untuk membuatnya permanen, tambahkan baris berikut ke
/etc/sysctl.conf:net.ipv4.ip_forward=1 - Kemudian jalankan:
agar perubahan diterapkan tanpa perlu rebootsudo sysctl -p
Konsep Zona dalam FirewallD
FirewallD menggunakan zona yang memiliki tingkat kepercayaan berbeda untuk lalu lintas jaringan:
- drop → Semua paket masuk dibuang tanpa balasan.
- block → Semua koneksi masuk ditolak, hanya koneksi dari dalam sistem yang diperbolehkan.
- public → Tidak mempercayai komputer lain, hanya koneksi yang dipilih diperbolehkan.
- external → Digunakan untuk masquerading (misalnya pada router).
- dmz (Demilitarized Zone) → Beberapa layanan diizinkan untuk publik.
- work → Dipercaya tetapi tetap membatasi koneksi masuk.
- home → Mirip dengan work tetapi lebih mempercayai jaringan.
- internal → Mirip dengan work.
- trusted → Semua koneksi diperbolehkan.
Manajemen Zona
Beberapa perintah dasar dalam manajemen zona menggunakan firewall-cmd:
-
Melihat zona default:
sudo firewall-cmd --get-default-zone -
Melihat zona aktif:
sudo firewall-cmd --get-active-zones -
Melihat semua zona yang tersedia:
sudo firewall-cmd --get-zones -
Mengubah zona default:
sudo firewall-cmd --set-default-zone=trusted -
Menetapkan interface ke zona tertentu secara sementara:
sudo firewall-cmd --zone=internal --change-interface=eno1 -
Menetapkan interface secara permanen:
sudo firewall-cmd --permanent --zone=internal --change-interface=eno1(Mengubah konfigurasi di
/etc/firewalld/zones/internal.xml) -
Melihat informasi lengkap tentang suatu zona:
sudo firewall-cmd --zone=public --list-all
Kesimpulan
- FirewallD menggunakan konsep zona untuk mengelola lalu lintas jaringan berdasarkan tingkat kepercayaan.
- Konfigurasi dilakukan menggunakan perintah firewall-cmd.
- Interface jaringan dapat dikaitkan dengan zona tertentu baik secara sementara maupun permanen.
- Pengelolaan port dan layanan dapat dilakukan dengan mudah menggunakan firewall-cmd.
Source Management
-
Zona (Zone) dalam firewalld dapat dikaitkan dengan:
- Alamat sumber tertentu (IP address).
- Antarmuka jaringan yang terhubung ke zona.
-
Jika suatu paket tidak sesuai dengan aturan yang telah ditetapkan dalam zona, maka secara default akan masuk ke zona default (biasanya public).
Menambahkan Sumber ke Zona (Permanen)
Untuk menambahkan alamat IP atau subnet ke zona tertentu secara permanen, gunakan perintah berikut:
sudo firewall-cmd --permanent --zone=trusted --add-source=192.168.100.22/24
- Ini berarti semua perangkat dengan alamat IP dalam 192.168.1.x akan dimasukkan ke dalam trusted zone.
Menghapus atau Mengubah Sumber dalam Zona
- Untuk menghapus sumber dari zona, gunakan:
sudo firewall-cmd --permanent --zone=trusted --remove-source=192.168.100.22/24 - Untuk memindahkan sumber ke zona lain, gunakan:
sudo firewall-cmd --permanent --zone=trusted --change-source=192.168.100.22/24
Melihat Daftar Sumber dalam Zona
Gunakan perintah berikut untuk melihat alamat sumber yang telah terikat ke zona tertentu:
sudo firewall-cmd --permanent --zone=trusted --list-sources
- Jika opsi
--permanentdihapus, maka hanya konfigurasi runtime saat ini yang ditampilkan.
Service Management dalam Firewalld
Setelah menetapkan antarmuka jaringan dan alamat ke zona tertentu, kita perlu menentukan layanan (services) dan port mana yang diizinkan dalam setiap zona.
Melihat Layanan yang Tersedia
Gunakan perintah berikut untuk melihat daftar layanan yang dapat dikonfigurasi:
sudo firewall-cmd --get-services
- Ini akan menampilkan daftar layanan yang dapat dikonfigurasi, seperti http, https, ssh, dns, dhcp, mysql, dll.
Melihat Layanan yang Diizinkan dalam Zona Tertentu
Untuk melihat layanan yang saat ini dapat diakses dalam suatu zona (misalnya public), gunakan:
sudo firewall-cmd --list-services --zone=public
- Contoh output:
dhcpv6-client ssh
Menambahkan Layanan ke Zona
Jika ingin menambahkan layanan ke suatu zona secara permanen, gunakan:
sudo firewall-cmd --permanent --zone=home --add-service=dhcp
- Ini akan mengizinkan layanan dhcp dalam zona home.
Setelah menambahkan layanan, lakukan reload agar perubahan berlaku:
sudo firewall-cmd --reload
Menambahkan Layanan Kustom
Jika layanan tidak ada dalam daftar default, Anda bisa menambahkannya dengan mengedit file di:
/etc/firewalld/services/
Ini memungkinkan Anda untuk mendefinisikan aturan layanan khusus.
Port Management dalam Firewalld
Manajemen port dalam Firewalld hampir sama dengan manajemen layanan. Alih-alih menambahkan layanan, kita dapat secara spesifik mengizinkan akses ke port tertentu.
Menambahkan Port ke Zona
Untuk menambahkan port ke zona tertentu, gunakan:
sudo firewall-cmd --zone=home --add-port=21/tcp
- Perintah ini membuka port 21 dengan protokol TCP dalam zona home.
Melihat Daftar Port yang Diizinkan dalam Zona
Gunakan perintah berikut untuk melihat daftar port yang sudah diizinkan dalam suatu zona:
sudo firewall-cmd --zone=home --list-ports
- Output:
21/tcp(jika sebelumnya kita telah menambahkan port ini).
Mengetahui Layanan yang Menggunakan Port Tertentu
Untuk mengetahui layanan yang menggunakan suatu port (misalnya port 21), gunakan:
grep "21/tcp" /etc/services
- Output:
ftp 21/tcp, yang menunjukkan bahwa port 21 digunakan untuk FTP.
Kesimpulan
- Manajemen port mirip dengan manajemen layanan, tetapi kita menambahkan port tertentu daripada layanan yang sudah terdaftar.
- Port harus ditentukan dengan protokolnya (TCP atau UDP).
- Untuk permanen, tambahkan opsi
--permanentdan reload konfigurasi:sudo firewall-cmd --permanent --zone=home --add-port=21/tcp sudo firewall-cmd --reload

Komentar
Posting Komentar