Menutup port menggunakan iptables untuk mengamankan jaringan


Iptables merupakan aplikasi firewall yang ada pada sisitem operasi linux, yang berfungsi melakukan filter terhadap trafik yang melalui PC router sebelum memasuki jaringan local. Selain sebagai firewall iptables juga menjalankan fungsi NAT, dimana dengan proses masquerade maka ip local bisa tersambung ke jaringan internet.

Sebelumnya dalam blog ini juga pernah di bahas tentang iptables di artikel sebelumnya, bisa anda pelajari dalam artikel terserbut. Nah kali ini akan di bahas bagaimana menutup port yang ada pada sistem operasi linux dimana linux menjadi OS dari PC Router dengan topologi sebagai berikut.


Internet Indihome ------------------->PC Router Linux --------------->Klient


IP address dari internet 192.168.1.254

IP address eth0 192.168.1.1
IP address eth1 192.168.100.1
IP address komputer klient 192.168.100.2 sampai dengan 192.168.100.254

Langsung saja kita masuk di konfigurasi iptablesnya namun dengan syarat pc router telah di konfigurasi


1. Misalkan kita ingin membuka port 80 ip komputer 192.168.100.2


iptables  –A FORWARD –p tcp --dport 80 –s 192.168.100.2 –j ACCEPT


Jika kita ingin menutup port 80 maka status ACCEPT kita ubah menjadi DROP atau REJECT

2. Membolehkan port 53 untuk aplikasi DNS


iptables –I FORWARD –p tcp --dport 53 –j ACCEPT



iptables –I FORWARD –p udp --dport 53 –j ACCEPT

Nah disini kita gunakan 2 perintah karena DNS bisa perjalan pada protocol udp dan tcp.


3. Kita akan coba memblokir aplikasi seperti youtube.com maupun google.com


iptables -A INPUT -m string --algo kmp --string youtube -j REJECT

iptables -A FORWARD -m string --algo kmp --string youtube -j REJECT

string mendefinisikan kata kunci pembanding dengan option -m sedangkan algo kmp mendefinisikan algoritma kmp (Algoritma Knuth-Morris-Pratt) sebagai algoritma pencocokan string.


4. Melarang komputer klien dengan IP 192.168.100.2 mengakses port 22 (ssh) firewall yang memiliki IP 192.168.100.1


iptables -A INPUT -i eth1 -s 192.168.100.2  -d 192.168.100.1 -p tcp  --dport 22 -j REJECT


Option -s sebagai source ip address yakni 192.168.100.2 yang di blokir jika mengakses ip firewall 192.168.100.1 dengan menggunakan ssh port 22

5. Menutup koneksi berdasarkan ip address


iptables -A FORWARD -s 192.168.100.15 -d 0/0 -j REJECT


6.Menutup koneksi berdasarkan range ip address

iptables  -A  FORWARD  -m  iprange  --src-range  192.168.10.50-192.168.10.100  -d 0/0  -j  REJECT

Di atas tadi beberapa perintah iptables yang sering di pakai, nah kali ini kita akan coba menutup semua port dan hanya membuka port yang akan di pakai saja misalkan port 80,443, 53, 22.  Caranya kita akan membuat status di chain INPUT, FORWARD, OUTPUT menjadi DROP dari default konfigurasi ACCEPT.

Berikut langkahnya

1.iptables -I INPUT -s 192.168.100.2 –j ACCEPT
2.iptables -P INPUT  DROP
3.iptables -I OUTPUT –d 192.168.100.2 -j ACCEPT
4.iptables –P FORWARD DROP
5.iptables –A INPUT –p tcp –m multiport  --source-port 
  22,53,80,443 –j ACCEPT
6.iptables –A FORWARD –p tcp –m multiport --source-port
  22,53,80,443 –j ACCEPT
7.iptables –A OUTPUT –p tcp -m multiport --source-port
  22,53,80,443  –j ACCEPT
8.iptables –A FORWARD –p tcp –-dport 80 –s 192.168.100.2 –j ACCEPT
9.iptables –A FORWARD –p tcp –-dport 443 –s 192.168.100.2 –j ACCEPT
10.iptables –A FORWARD –p tcp –-dport 53 –s 192.168.100.2 –j ACCEPT
11.iptables –A FORWARD –p udp –-dport 53 –s 192.168.100.2 –j ACCEPT
12.iptables –A OUTPUT –p tcp –-dport 22 –s 192.168.100.2 –j ACCEPT
13.iptables –I INPUT –m state --state  RELATED,ESTABLISHED  -j ACCEPT
14.iptables –I FORWARD –m state --state  RELATED,ESTABLISHED -j ACCEPT
15.iptables –I OUTPUT –m state --state  RELATED,ESTABLISHED –j ACCEPT
16.iptables –P OUTPUT DROP

Untuk menyimpan iptables konfigurasi di atas bisa kita gunakan perintah 

iptables-save > /etc/myiptables.cfg

Untuk menjalankan secara otomatis hasil simpan konfigurasi iptables bisa kita gunakan perintah

pre-up iptables-restore < /etc/myiptables.cfg
post-down iptables-restore < /etc/myiptables.cfg

Konfigurasi di atas kita sisipkan di pico /etc/network/interfaces taruh di bagian paling bawah.

Nah selesai sudah konfigurasi kita lumayan banyak yah, perintah di atas di gunakan hanya untuk koneksi ip 192.168.100.2 jika semua ip di perbolehkan tinggal mengganti alamat network saja menjadi 192.168.100.0/24. Selamat mencoba semoga berguna tutorial ini.

Post a Comment

Previous Post Next Post