Apa yang bisa kami bantu?

A. Pendahuluan

Iptables adalah sebuah utilitas pengendalian firewall dalam sistem operasi Linux yang digunakan untuk mengatur dan mengontrol lalu lintas data pada sebuah server. Iptables bersifat user-space, atau diatur oleh pengguna, dan berfungsi dalam berbagai keperluan keamanan jaringan, termasuk pemblokiran akses dari IP tertentu, membatasi akses ke port tertentu, mencegah serangan DDoS, atau menyesuaikan aturan lalu lintas jaringan lainnya. Pada artikel ini, kita akan menerapkan iptables menggunakan OS Ubuntu 22.04.

 

B. Persiapan/Install

Pada Iptables terdapat beberapa rules yang bisa diterapkan, yaitu sebagai berikut.

  1. ACCEPT: Perintah ini berguna untuk mengizinkan packet diteruskan.
  2. DROP: Perintah ini berguna untuk tidak mengizinkan packet diteruskan.



Kemudian pada artikel ini nantinya juga akan menggunakan filter

  1. INPUT: Perintah ini berguna untuk mengontrol packet yang akan masuk ke server.
  2. FORWARD: Perintah ini berguna memfilter packet yang akan diteruskan ke chain lain.
  3. OUTPUT: Perintah ini berguna untuk memfilter packet yang akan keluar dari server.

 

Proses install iptables

  1. Akses langsung ke server melalui SSH
  2. Jalankan perntah berikut untuk instalasi secara bertahap.
sudo apt-get update
sudo apt-get install iptables
Gambar 1 - Install iptables

 

  1.  Setelah berhasil install iptables, lakukan pengecekan aturan iptables dengan jalankan command berikut:
sudo iptables -L -v

Penjelasan

-L : digunakan untuk mengecek semua aturan

-v : digunakan untuk menampilkan info aturan dalam format yang lebih detail.

 

Output yang akan tampil saat pertama kali jalankan command di atas adalah seperti berikut:

Gambar 2 - cek iptables berhasil terinstall

 

Terlihat bahwa iptables sudah berhasil terinstall dan belum terdapat rule yang dibuat. Setelah itu kita akan lanjutkan pada penerapan iptables.

 

 

C. Penerapan

Pada artikel ini nantinya akan mencoba untuk menerapkan rule ACCEPT dan DROP ke dalam chain. Untuk tambahkan rule bisa dengan perintah -A (Tambah) setelah perintah iptables, berikut contohnya:

sudo iptables -A

Selain -A, anda bisa tambahkan command dengan format opsi lain seperti berikut:

sudo iptables -A <chain> -i <interface> -p <protocol (tcp/udp) > -s <source> --dport <port no.>  -j <target>

Penjelasan:

-i (interface): interface jaringan yang ingin difilter trafficnya, seperti eth0, lo, ppp0 dan lainnya.

-p (protocol): Protocol jaringan yang ingin difilter, seperti  tcp, udp,  icmp dan lainnya.

-s (source): Asal traffic berasal, bisa tambahkan nama host ataupun alamat IP Public.

-dport (destination port): port tujuan protokol yang umumnya didefinisikan dengan angka. Seperti 22 (SSH), 25 (SMTP) 443 (HTTPS), 995 (POP3) dan lainnya.

-j (target): nama target (ACCEPT, DROP), target ini perlu ditambahkan setiap membuat aturan baru.

 

1. Menambahkan rule pada koneksi SSH, HTTP, HTTPS

Pada percobaan ini kita akan mencoba untuk menambahkan port 22 (SSH), 80 (HTTP) dan 443 (HTTPS). Untuk tambahkan port perlu tentukan protokol (-p) dan port yang sesuai (-dport). Silakan jalankan command di bawah ini secara bertahap:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Gambar 3 - tambahkan rule

 

Setelah jalankan command di atas, lakukan pengecekan apakah rule sudah berhasil ditambahkan dengan jalankan commannd berikut:

sudo iptables -L -v
Gambar 4 - pengecekan rule yang ditambahkan

 

Anda bisa juga menambahkan rule agar tidak perbolehkan koneksi dengan mengubah ACCEPT menjadi DROP. Berikut command yang bisa dijalankan:

sudo iptables -A INPUT -p tcp --dport 22 -j DROP
sudo iptables -A INPUT -p tcp --dport 80 -j DROP
sudo iptables -A INPUT -p tcp --dport 443 -j DROP
Gambar 5 - Rule tidak izinkan koneksi

 

 2. Menambahkan filter packet dari sumber IP

Jika anda menggunakan iptables, akan memungkinkan untuk filter packet berdasarkan IP Public atau rentang IP Public. Sebagai contoh pada artikel ini menggunakan IP 192.168.1.5, berikut comamand yang digunakan:

sudo iptables -A INPUT -s 192.168.1.5 -j ACCEPT
Gambar 6 - Tambah filter packet dari sumber IP

 

Jika anda ingin menolak packet dari sumber IP Public tertentu, bisa jalankan command berikut:

sudo iptables -A INPUT -s 192.168.1.5 -j DROP
Gambar 7 - Menambahkan filter untuk tolak packet dari sumber IP

 

Jika ingin menghapus packet rentang IP Public, bisa menggunakan opsi -m dan modul iprange. kemudian tentukan range IP Public dengan -src-range. Bisa jalankan command berikut:

sudo iptables -A INPUT -m iprange --src-range 192.168.1.500-192.168.1.700 -j DROP

 

 3. Hapus seluruh aturan

Apabila anda ingin menghapus seluruh aturan dan ingin mulai dari awal bisa jalankan command -F (flush) seperti berikut:

sudo iptables -F
Gambar 8 - Hapus seluruh konfigurasi Iptables

 

4. Menyimpan konfigurasi iptables

Apabila anda ingin menyimpan konfigurasi dan melakukan perubahan yang sudah dibuat. Bisa dilakukan dengan menjalankan command berikut:

sudo iptables-save > /etc/iptables/rules.v4

 

Setelah simpan konfigurasi iptables, saat server direstart nantinya konfigurasi iptables yang disimpan perlu kita muat ulang dengan jalankan command berikut:

sudo iptables-restore < /etc/iptables/rules.v4

 

Apabila ingin mengotomatiskan proses pemuatan, Anda bisa menggunakan  iptables-persistent dan bisa diinstall dengan jalankan command berikut:

sudo apt-get install iptables-persistent

 

Saat proses install iptabes-persistent nantinya akan diminta untuk menyimpan konfigurasi iptables ipv4 dan bisa langsung klik yes. Kemudian bisa dilanjutkan saja sampai proses instalasinya selesai

Gambar 9 -  Instalasi iptables-persistent

 

 

D. Penutup

Iptables beroperasi dengan mendefinisikan seperangkat aturan atau 'rules' yang menentukan bagaimana lalu lintas data harus ditangani. Setiap paket data yang melewati jaringan akan diperiksa berdasarkan aturan-aturan ini dan kemudian diteruskan, diblokir, atau diubah sesuai dengan yang telah ditentukan.

Selamat! Anda sudah bisa menggunakan iptables. Semoga artikel ini dapat membantu Anda. Temukan bantuan lainnya melalui Knowledge Base Biznet Gio. Jika Anda masih memiliki kendala silahkan hubungi support@biznetgio.com atau (021) 5714567.