
Sebelum melakukan konfigurasi terhadap firewall, yang pertama harus dilakukan adalah menginstall paket firewalld.
# yum install firewalld # systemctl start firewalld # systemctl enable firewalld atau # sudo yum install firewalld # sudo systemctl start firewalld # sudo systemctl enable firewalld
Cek active zone(s):
# firewall-cmd --get-active-zones
Buka port 80:
# firewall-cmd --zone=public --add-port=80/tcp --permanent
Jangan lupa reload firewall service:
# firewall-cmd --reload
Cek apakah port 80 telah ditambahkan ke dalam iptables rules:
# iptables-save | grep 80
Untuk menambahkan source (misal 192.168.2.0/24) ke dalam zone (misal trusted) permanently, gunakan:
# firewall-cmd --permanent --zone=trusted --add-source=192.168.2.0/24 success # firewall-cmd --reload success
Kita juga dapat menambahkan source berdasarkan MAC address (misal 00:11:22:33:44:55) ke dalam zone (misal trusted) permanently:
# firewall-cmd --permanent --zone=trusted --add-source=00:11:22:33:44:55 success # firewall-cmd --reload success
Kita juga dapat membuat ipset dan menambahkan source berdasarkan ipset tersebut:
# firewall-cmd --permanent --new-ipset=iplist --type=hash:ip success # firewall-cmd --reload success # firewall-cmd --ipset=iplist --add-entry=192.168.1.11 success # firewall-cmd --ipset=iplist --add-entry=192.168.1.12 success # firewall-cmd --permanent--zone=trusted --add-source=ipset:iplist success # firewall-cmd --reload success
Untuk melihat list dari sources yang ada saat ini (misal yang zone trusted):
# firewall-cmd --permanent --zone=trusted --list-sources 192.168.2.0/24 00:11:22:33:44:55 ipset:iplist
Catatan: buang opsi –permanent jika hanya ingin menampilkan temporary settings. Contoh kasus misal kita ingin hanya allow connections ke server kita dari specific IP address (misal 1.2.3.4/32):
# firewall-cmd --zone=internal --add-service=ssh --permanent success # firewall-cmd --zone=internal --add-source=1.2.3.4/32 --permanent success # firewall-cmd --zone=public --remove-service=ssh --permanent success # firewall-cmd --reload success
Untuk menampilkan detail dari zone public:
# firewall-cmd --info-zone=public
Jika kita ingin menambahkan beberapa temporary services (misal http, https, and dns) pada satu waktu ke dalam internal zone:
# firewall-cmd --zone=internal --add-service={http,https,dns} success
Untuk menampilkan list dari services dalam default zone:
# firewall-cmd --list-services dhcpv6-client ssh Catatan: untuk mendapatkan particular zone, tambahkan opsi --zone.
Untuk mendapatkan informasi tentang service ftp :
# firewall-cmd --info-service=ftp
Untuk me-remove port atau service yang pernah ditambahkan:
# firewall-cmd --zone=public --remove-port=80/tcp # firewall-cmd --reload atau # firewall-cmd --zone=public --remove-service=http # firewall-cmd --reload
Selamat ngoprek!