IPTables memiliki tiga macam daftar aturan bawaan dalam tabel penyaringan,
daftar tersebut dinamakan rantai firewall (firewall chain) atau sering disebut chain saja.
Ketiga chain tersebut adalah INPUT, OUTPUT dan FORWARD.
Pada diagram tersebut, lingkaran menggambarkan ketiga rantai atau chain. Pada saat
sebuah paket sampai pada sebuah lingkaran, maka disitulah terjadi proses penyaringan.
Rantai akan memutuskan nasib paket tersebut. Apabila keputusannnya adalah DROP,
maka paket tersebut akan didrop.
Tetapi jika rantai memutuskan untuk ACCEPT, maka
paket akan dilewatkan melalui diagram tersebut.
Sebuah rantai adalah aturanaturan
yang telah ditentukan. Setiap aturan menyatakan
“jika paket memiliki informasi awal (header) seperti ini, maka inilah yang harus
dilakukan terhadap paket”. Jika aturan tersebut tidak sesuai dengan paket, maka aturan
berikutnya akan memproses paket tersebut. Apabila sampai aturan terakhir yang ada,
paket tersebut belum memenuhi salah satu aturan, maka kernel akan melihat kebijakan
bawaan (default) untuk memutuskan apa yang harus dilakukan kepada paket tersebut.
Ada dua kebijakan bawaan yaitu default DROP dan default ACCEPT.
Jalannya sebuah paket melalui diagram tersebut bisa dicontohkan sebagai berikut:
Perjalanan paket yang diforward ke host yang lain:
1. Paket berada pada jaringan fisik, contoh internet.
2. Paket masuk ke interface jaringan, contoh eth0.
3. Paket masuk ke chain PREROUTING pada table Mangle. Chain ini berfungsi untuk
memangle
(menghaluskan) paket, seperti merubah TOS, TTL dan lainlain.
4. Paket masuk ke chain PREROUTING pada tabel nat. Chain ini berfungsi utamanya
untuk melakukan DNAT (Destination Network Address Translation).
5. Paket mengalami keputusan routing, apakah akan diproses oleh host lokal atau
diteruskan ke host lain.
6. Paket masuk ke chain FORWARD pada tabel filter. Disinlah proses pemfilteran
yang utama terjadi.
7. Paket masuk ke chain POSTROUTING pada tabel nat. Chain ini berfungsi
utamanya untuk melakukan SNAT (Source Network Address Translation).
8. Paket keluar menuju interface jaringan, contoh eth1.
9. Paket kembali berada pada jaringan fisik, contoh LAN.
Perjalanan paket yang ditujukan bagi host lokal:
1. Paket berada dalam jaringan fisik, contoh internet.
2. Paket masuk ke interface jaringan, contoh eth0.
3. Paket masuk ke chain PREROUTING pada tabel mangle.
4. Paket masuk ke chain PREROUTING pada tabel nat.
5. Paket mengalami keputusan routing.
6. Paket masuk ke chain INPUT pada tabel filter untuk mengalami proses
penyaringan.
7. Paket akan diterima oleh aplikasi lokal.
Perjalanan paket yang berasal dari host lokal :
1. Aplikasi lokal menghasilkan paket data yang akan dikirimkan melalui jaringan.
2. Paket memasuki chain OUTPUT pada tabel mangle.
3. Paket memasuki chain OUTPUT pada tabel nat.
4. Paket memasuki chain OUTPUT pada tabel filter.
5. Paket mengalami keputusan routing, seperti ke mana paket harus pergi dan melalui
interface mana.
6. Paket masuk ke chain POSTROUTING pada tabel NAT.
7. Paket masuk ke interface jaringan, contoh eth0.
8. Paket berada pada jaringan fisik, contoh internet.
9. Sintaks IPTables.
IPTables memiliki 3 buah tabel, yaitu NAT, MANGLE dan FILTER. Penggunannya
disesuaikan dengan sifat dan karakteristik masingmasing.
Fungsi dari masingmasing
tabel tersebut sebagai berikut :
NAT : Secara umum digunakan untuk melakukan Network Address Translation. NAT
adalah penggantian field alamat asal atau alamat tujuan dari sebuah paket.
MANGLE : Digunakan untuk melakukan penghalusan (mangle) paket, seperti TTL,
TOS dan MARK.
FILTER : Secara umum, inilah pemfilteran paket yang sesungguhnya.. Di sini bisa
dintukan apakah paket akan diDROP,
LOG, ACCEPT atau REJECT.
Sunday, May 17, 2009
IPTables
Posted by Adi Wahyu Permana on Sunday, May 17, 2009
0 comment:
Post a Comment