Table of Content

Tutorial Cara Setting Firewall CentOs dengan Beberapa Aturan Tertentu


Betariko.com - Penggunaan fitur firewall VPS Cloud dan on premies terbilang cukup penting. Karena memberikan kontrok network apa saja yang diizinkan, untuk mengakses fitur yang ada di server. 

FirewallD merupakan sejenis aplikasi atau software yang difungsikan sebagai media pengelola firewall di sistem operasi Linux, serta memberikan dukungan fitur zones untuk memberikan akses khusus dalam filtering koneksi. 

Tutorial Firewall Centos : Konsep FirewallD

Bisa dikatakan bahwa FirewallD menggunakan services dan zones, dibandingkan dengan fitur iptables yang menggunakan rules dan chain. Dengan memanfaatkan adanya Firewall dengan fitur berdasarkan pada services dan zones, diharapkan dapat mengontrok trafik dan koneksi jaringan apa saja yang boleh keluar dan masuk dari sistem server. 

Tutorial Firewall Centos : Install FirewallD

Sebenarnya secara default sistem operasi Centos sudah terinstall FirewallD bawaan, namun bisa setelah kamu cek tapi tidak terinstall maka perlu melakukan install manual dengan langkah-langkah dibawah ini:

yum install firewalld

Kemudian akfitkan service dari FirewallD pada saat booting langsung dijalankan

systemctl start firewalld
systemctl enable firewalld
systemctl status firewalld
Mengecek status firewall

firewall-cmd --state

Perintah membuat zone baru

firewall-cmd --permanent --new-zone=namazone

Perintah enghapus salah satu zone

firewall-cmd --permanent --delete-zone=namazone

Perintah semua zone

firewall-cmd --list-all-zones

Perintah menampilkan konfigurasi satu zone, misalnya zone public.

firewall-cmd --zone=public --list-all

Perintah Menampilan zona bawaan atau default zone

firewall-cmd --get-default-zone

PerintahMengganti zona bawaan atau default zone

firewall-cmd --set-default-zone=public

PerintahMenampilkan zones yang aktif

firewall-cmd --get-active-zone

Perintah Menambahkan interface pada zone

firewall-cmd --zone=public --add-interface=eth0

Perintah Mengubah interface pada zone

firewall-cmd --zone=public --change-interface=eth1

Perintah Menampilkan zone dari interface

firewall-cmd --get-zone-of-interface=eth0

Tutorial Firewall Centos : Konfigurasi Services

Perintah menampilkan nama services yang didukung oleh FirewallD

firewall-cmd --get-services

Perintah menampilkan services pada zone

firewall-cmd --zone=public --list-services

Perintah menambahkan service pada zone

firewall-cmd --zone=public --add-service=http

Kamu dapat menambahkan opsi –permanent agar service yang telah ditambahkan tetap ada setelah reboot

firewall-cmd --permanent --zone=public --add-service=http

Reload konfigurasi firewall setelah melakukan konfigurasi, tapi jika tanpa opsi –permanent konfigurasi itu akan hilang setelah reload.

firewall-cmd --reload

Perintah menghapus service

firewall-cmd --zone=public --remove-service=http

Seandainya bila nama services yang diharapkan masuk pada sebuah zone yang tidak tersedia secara default, maka kita dapat memanfaatkan nomor port dari services tersebut untuk menggunakannya pada nama service baru.

File pada deskripsi dari services terletak di direktori /usr/lib/firewalld/services/ dengan ektensi file xml.

Perintah membuka isi file ssh.xml

nano /usr/lib/firewalld/services/ssh.xml

Isinya

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>SSH</short>
  <description>Secure Shell (SSH) is a xxxxxxxxxxxxxxxxxxxxxxxxxxxxx.</description>
  <port protocol="tcp" port="22"/>
</service>

Membuat deskripsi service baru dengan mengcopy file service.xml yang sudah ada

cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/example.xml

Contoh isinya

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>Example Service</short>
  <description>This is just an example service. yyyyyyyyyyyyyyyyyyyyyyy.</description>
  <port protocol="tcp" port="7777"/>
  <port protocol="udp" port="8888"/>
</service>  

Tutorial Firewall Centos : Reload dan cek services

firewall-cmd --reload
firewall-cmd --get-services

Tutorial Firewall Centos : Konfigurasi Port

Perintah menampilkan port pada satu zone

firewall-cmd --zone=public --list-ports

Perintah menambahkan port dari protokol TCP atau UDP

firewall-cmd --zone=public --add-port=5001/udp 
firewall-cmd --zone=public --add-port=5001/tcp

Perintah menambahkan range port

firewall-cmd --zone=public --add-port=4990-4999/udp

Perintah menghapus port centos

firewall-cmd --zone=public --remove-port=5001/tcp

Tutorial Firewall Centos : Port Forwarding

Port Forwarding merupakan sebuah pengalihan sebuah koneksi dari satu bagian port ke port yang lainnya, seandainya klien menggunakan akses port 53 kemudian akan diteruskan melalui port xxxxx.

firewall-cmd --zone=public --add-forward-port=port=53:proto=tcp:toport=xxxxx

Perintah forward port ke server lain

Aktifkan masquerade pada beberapa zone, lalu kamu dapat menambahkan rule forward.

firewall-cmd --zone=public --add-masquerade
firewall-cmd --zone=public --add-forward-port=port=53:proto=tcp:toport=5353:toaddr=1.x.x.x

Seandainya kamu menginginkan untuk hapus beberapa masquerade ubah opsi –add-masquerade kemudian ubah menjadi –remove-masquerade

Tutorial Firewall Centos : Rich Rules

Rich Rules merupakan sebuah aturan pada firewall Centos yang terbilang cukup luas, sehingga tidak hanya memberikan masukkan terhadap beberapa nama service saja namun juga memberikan informasi IP address tertentu.

Perintah menampilkan rich-rules

firewall-cmd --list-rich-rules
Izinkan koneksi jaringan dari IP 192.167.0.14

firewall-cmd --zone=public --add-rich-rule 'rule family=ipv4 source address=192.167.0.14 accept'
Tolak koneksi jaringan dari IP 192.167.2.10 pada port 22

firewall-cmd --zone=public --add-rich-rule 'rule family=ipv4 source address=192.167.2.10 port port=22 protocol=tcp reject'

Memberikan izin  koneksi TCP dari IP 10.12.0.3 untuk mengakses port 53 yang kemudian diteruskan ke port 6532

firewall-cmd --zone=public --add-rich-rule 'rule family=ipv4 source address=10.12.0.3 forward-port port=53 protocol=tcp to-port=6532'

Memberikan izin  koneksi TCP pada port 53 yang diteruskan ke IP 172.33.4.2 port 5353 (Masquerade harus aktif pada zone)

firewall-cmd --zone=public --add-rich-rule 'rule family=ipv4 forward-port port=53 protocol=tcp to-port=5353 to-addr=172.33.4.2'

Memberikan izin network 192.167.0.0/24 mengakses https

firewall-cmd --zone=public --add-rich-rule 'rule family=ipv4 source address=192.167.0.0/24 service name=https accept'

Kamu dapat menambahkan beberapa opsi –permanent agar rule tetap ada dan dapat digunakan bila reload dan reboot sistem dilakukan. Seandainya kamu ingin menghapus rich rule, ganti opsi –add-rich-rule kemudian rubah menjadi –remove-rich-rule.

Tutorial Firewall Centos : IP Set

IP Set merupakan beberapa bagian dari kelas IP address yang digunakan sebagai source rule firewall.

Perintah untuk menampilkan IP Set

firewall-cmd --get-ipsets

Perintah untuk membuat IP Set baru dengan nama blacklist

firewall-cmd --permanent --new-ipset=blacklist --type=hash:ip
firewall-cmd --reload

Perintah untuk menambah IP address pada IP Set blacklist

firewall-cmd --ipset=blacklist --add-entry=192.167.1.11
firewall-cmd --ipset=blacklist --add-entry=192.167.1.12  

Perintah untuk menghapus IP address dari IP Set

firewall-cmd --ipset=blacklist --remove-entry=192.167.1.12

Perintah untuk menampilkan info IP Set

firewall-cmd --info-ipset=blacklist

Perintah untuk menampilkan IP address dari IP Set

firewall-cmd --ipset=blacklist --get-entries

Perintah untuk IP Set yang sudah dibuat kemudian dimasukkan ke dalam sebuah rule sebagai source

firewall-cmd --add-rich-rule='rule source ipset=blacklist drop'

Perintah untuk menghapus IP Set

firewall-cmd --permanent --delete-ipset=blacklist
firewall-cmd --reload

Demikian semoga ulasan cara setting firewall linux Centos dapat memberikan manfaat bagi kamu yang ingin melakukan penyesuaian pada firewall server Linux Centos. 

Hasil yang baik, berawal dari proses yang baik.