Belajar iptables

Iptables Firewall
Iptables Firewall

Penjelasan Tentang iptables


Iptables adalah suatu tools firewall dalam sistem operasi linux yang berfungsi sebagai alat untuk melakukan filter (penyaringan) terhadap (trafic) lalulintas data. Dengan iptables inilah kita bisa mengatur semua lalulintas dalam komputer kita, baik yang masuk ke komputer, keluar dari komputer, ataupun traffic yang sekedar melewati komputer kita.

Prinsip dasar firewall iptables adalah mengatur akses internet berdasarkan alamat IP Adress,port aplikasi dan MAC address atau alamat fisik kartu jaringan. Firewall Iptables packet filtering memiliki tiga rantai (CHAIN) aturan (policy), yaitu:

INPUT
Mengatur paket data yang memasuki firewall dari arah intranet maupun internet. Kita dapat mengatur komputer mana saja yang bisa mengakses firewall. misal: hanya komputer IP 192.168.10.100 yang bisa meremot menggunakan SSH ke firewall dan yang komputer lain tidak diperbolehkan.

OUTPUT
Mengatur paket data yang keluar dari firewall ke arah intranet maupun internet. Biasanya output tidak diset,karena bisa membatasi kemampuan firewall itu sendiri.

FORWARD
Mengatur paket data yang melintasi firewall dari arah internet ke intranet maupun sebaliknya. Policy forward paling banyak dipakai saat ini untuk mengatur koneksi internet berdasarkan port, mac address dan alamat IP Selain aturan (policy). 

Firewall iptables juga mempunyai parameter yang disebut dengan TARGET, yaitu status yang menentukkan koneksi di iptables diizinkan lewat atau tidak. TARGET yang paling banyak di pakai ada tiga macam yaitu:

a. ACCEPT
Akses diterima dan diizinkan melewati firewall

b. REJECT
Akses ditolak, koneksi dari komputer klien yang melewati firewall langsung terputus, biasanya terdapatpesan “Connection Refused”. Target Reject tidak menghabiskan bandwidth internet karena akses langsung ditolak, hal ini berbeda dengan DROP.

c.DROP
Akses diterima tetapi paket data langsung dibuang oleh kernel, sehingga pengguna tidak mengetahui kalau koneksinya dibatasi oleh firewall, pengguna melihat seakan – akan server yang dihubungi mengalami permasalahan teknis. Pada koneksi internet yang sibuk dengan trafik tinggi Target Drop sebaiknya jangan digunakan.

Berikut ini contoh penggunaan firewall iptables untuk mengelolak akses internet.
Policy INPUT
·         IP Firewall                  = 192.168.10.1/24
·         IP Administrator       = 192.168.10.100/24
·         IP Umum                     = 192.168.10.2/24 sd 192.168.10.50/24

1. Membatasi port number

iptables -A INPUT -i eth1 -s 192.168.10.2 -d 192.168.10.1 -p tcp -dport 22-j REJECT

melarang komputer klien dengan IP 192.168.10.2 mengakses port 22 (ssh) firewall yang memiliki IP 192.168.10.1

2.Membatasi koneksi berdasarkan range IP
iptables -A FORWARD -m iprange -src-range 192.168.10.20-192.168.10.30 
-d 0/0 -j REJECT

Membatasi koneksi range ip 192.168.10.20 sd 192.168.10.30 

3.Membatasi koneksi internet berdasarkan MAC Address kartu jaringan

iptables -A FORWARD -m mac -mac-source 00:30:18:AC:14:41 -d 0/0 -j REJECT

Membatasi koneksi komputer yang mempunyai MAC Address
00:30:18:AC:14:41

4. Menghapus semua aturan yang ada 
iptables ‐F

5. Menghapus tabel NAT

iptables -F -t nat

6. Menghapus tabel mangle 

iptables -F -t mangle

7. Mengatur policy untuk tabel INPUT, FORWARD, OUTPUT dengan target DROP 
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

8.  Mengatur policy untuk tabel INPUT, FORWARD, OUTPUT dengan target ACCEPT

iptables -P INPUT ACCEPT
iptables -P FORWARD  ACCEPT
iptables -P OUTPUT  ACCEPT

9. Melihat semua aturan

iptables -L --line-numbers

10. Membolehkan akses port 22 komputer IP 192.168.10.10
iptables -A INPUT -p tcp --dport 22 -s 192.168.10.10 -j ACCEPT

11. Membolehkan akses port 80 komputer dengan ip  192.168.10.2
iptables  –A FORWARD –p tcp --dport 80 –s 192.168.10.2 –j ACCEPT


NAT (Network Address Translation) 
Network Address Translation, atau NAT. Fungsi utama dari NAT adalah untuk melakukan translasi alamat dari satu IP ke alamat IP yang lain, biasanya dipakai pada internet gateway. Selain melakukan translasi alamat IP. 

Iptables juga bisa melakukan NAT alamat Port aplikasi, bisa disebut juga dengan Port Address Translation (PAT). PAT digunakan untuk membangun beberapa server seperti mail, web, database maupun datacenter yang diakses melalui internet hanya dengan satu alamat IP publik.

Tabel NAT
Selain sebagai IP Filtering / Firewall, iptables juga bisa difungsikan untuk translasi alamat, ditandai dengan opsi -t nat pada perintah iptables. 

iptables -t nat

Prinsip dasar NAT di bagi menjadi dua bagian, yang pertama adalah chain POSTROUTING, yaitu melakukan NAT paket data yang keluar dari firewall, kebanyakan postrouting dipakai untuk translasi alamat IP.

Yang kedua adalah chain PREROUTING, untuk melakukan NAT paket data yang memasuki firewall, kebanyakan digunakan untuk transparency proxy server dan membangun beberapa server dengan satu IP publik.


1. POSTROUTING
Translasi alamat yang keluar dari firewall, berarti kita melihat paket data yang keluar dari kartu LAN.


iptables -t NAT -A POSTROUTING -o eth0 -s 192.168.10.0/24 -d 0/0 -j SNAT -to 202.122.50.55

iptables -t NAT -A POSTROUTING -o eth0 -s 192.168.10.0/24 -d 0/0 -j MASQUERADE

Arti dari perintah diatas jaringan subnet 192.168.10.0/24 jika menghubungi web server yang berada di internet dikenali dari IP 202.122.50.55. 

Target MASQUERADE berarti IP NAT disesuaikan dengan alamat IP kartu LAN eth0, jika IP eth0 dirubah kita tidak perlu merubah settingan iptables.

2. PREROUTING
Translasi alamat yang memasuki jaringan, kita juga bisa membelokkan paket data ke port tertentu untuk membangun server internet hanya dengan satu IP publik.

iptables -t nat -A PREROUTING – eth0 -p tcp -dport 25 -j DNAT -to 192.168.10.20:25
iptables -t nat -A PREROUTING – eth0 -p tcp -dport 110 -j DNAT -to 192.168.10.20:110
iptables -t nat -A PREROUTING – eth0 -p tcp -dport 80 -j DNAT -to 192.168.10.30:80

Pada contoh diatas kita mempunyai 2 server, 192.168.10.20 (mail server) dan 192.168.10.30 (web server). Koneksi dari internet ke port 25 dan 110 secara otomatis diarahkan ke alamat IP 192.168.10.20 (IP Lokal / LAN). Akses port 80 (web server) diarahkan ke IP lokal 192.168.10.30.

1 Comments

Previous Post Next Post