Konfigurasi Firewall Iptables pada Ubuntu Server 20.04 LTS

Setelah saya share config firewall menggunakan UFW dan Firewalld di postingan sebelumnya. Saat ini akan saya share sedikit beberapa konfigurasi firewall menggunakan iptables.

Iptables merupakan salah satu firewall yang bagus dimana sudah termasuk framework netfilter di linux.

Berikut beberapa rule pada iptables.

  1. Mangle
    a. Rules untuk memodifikasi paket
  2. NAT (Network Add Translation)
    a. PREROUTING
    b. POSTROUTING
  3. FILTER
    a. INPUT
    b. OUTPUT
    c. FORWARD

Iptables juga dapat digunakan untuk menspesifikkan rule dengan protokol, sehingga jika Anda ingin block koneksi internet dari VM, hal tersebut juga bisa dilakukan.

Konfigurasi Iptables
Untuk melihat rule iptables yang sudah dikonfigurasikan bisa menjalankan perintah:

sudo iptables -L 

Apabila Anda ingin flush atau menghapus rule iptables yang sudah pernah dibuat, bisa menjalankan perintah:

sudo iptables -F

Policy pada ipables terdiri dari:

  1. ACCEPT: Mengizinkan trafik
  2. DROP: Menolak trafik

Sebagai contoh, jika policy pada rule iptables INPUT drop, maka firewall akan menolak semua trafik/koneksi internet dari dalam keluar.

Apabila Anda ingin mengizinkan trafik internet keluar bisa menggunakan perintah berikut:

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Mengizinkan semua trafik outbound:

sudo iptables -A OUTPUT -j ACCEPT

Sedangkan jika Anda ingin mengizinkan port HTTP dan HTTPS VM agar bisa diakses dari luar bisa menggunakan rule berikut:

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

Kemudian, jika Anda ingin mengizinkan port SSH bisa menggunakan perintah:

sudo iptables -A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT 

Note: Sesuaikan dengan port SSH yang Anda gunakan.

Sedangkan jika Anda ingin menolak trafik dari IP tertentu yang mengakses ke VM Anda bisa menggunakan perintah:

sudo iptables -A INPUT -s x.x.x.x -j DROP

Note: Untuk x.x.x.x bisa diisikan dengan IP Addressnya.

Apabila Anda ingin mengimplementasikan rule diatas, silakan membuat rule berikut terlebiih dahulu.

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 

Berikut perintah yang sering digunakan pada iptables.

Atribut Keterangan
-A Append, opsi ini digunakan untuk menambahkan rule baru
-I Insert, opsi ini digunakan untuk memasukkan rule baru
-D Delete, opsi ini digunakan untuk menghapus rule
-L Melihat daftar rule
-L --line-numbers Menunjukkan nomor setiap baris rule
-F Menghapus semua rule
-F CHAIN Menghapus rule dengan spesifik CHAIN
-N CHAIN_NAME Membuat CHAIN baru
-X CHAIN Menghapus sebuah CHAIN
-N CHAIN_NAME Membuat CHAIN baru
iptables -A CHAIN -s Spesifik sumber IP Address
iptables -A CHAIN -p Spesifik protokol
iptables -A CHAIN -p tcp –dport Spesifik port

Iptables memiliki banyak tips dan trik lagi, ini hanya beberapa sample yang dimiliki iptables saja. Jika Anda ingin mempelajari lebih jauh tentang iptables bisa merujuk ke link berikut.

Referensi lain:
https://help.ubuntu.com/community/IptablesHowTo

Semoga bermanfaat dan barokah 🙂

Verified by MonsterInsights