Senin, 29 Agustus 2016

Pengertian IP Tables Pada Debian

 
 
 Assalamualaikum Wr.Wb
 
Pada kesempatan kali ini saya akan share tentang ip tables di debian.

IPTables atau Netfilter adalah aplikasi yang digunakan pada sistem operasi berbasis Unix like sebagai software untuk menyeleksi koneksi yang terjadi antara pc kita dengan pc lain dalam suatu jaringan (berupa LAN maupun WAN).
Dengan iptables ini kita dapat mengatur semua lalu lintas dalam komputer kita, baik yang masuk ke komputer, keluar dari komputer, ataupun visitors yang sekedar melewati komputer kita. Yang paling penting adalah bahwa dengan IPTables ini kita bisa membuat aturan (rule) untuk arus lalulintas information. Aturan-aturan itu dapat mencakup banyak hal, seperti besar information yang boleh lewat, jenis paket/datagram yang dapat diterima, mengatur visitors berdasar asal dan tujuan information, sending, NAT, course-plotting, pengelolaan slot, dan plan.

IPTables memiliki 4 Tabel aturan. Penggunannya disesuaikan dengan sifat dan karakteristik masing-masing. Fungsi dari masing-masing tabel tersebut sebagai berikut :
 
NAT : Secara umum digunakan untuk melakukan System Deal with Interpretation. NAT adalah penggantian area 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 di DROP, LOG, ACCEPT atau REJECT
 
RAW : Untuk mengkonfigurasikan pengecualian dari connectiontracking bersama2 dengan NOTRACK
 
Chain pada IPTables:

INPUT = Semua paket yang ditujukan untuk Kordinator komputer/komputer kita sendiri untuk mengatasi paket data yang masuk.
 
FORWARD = Semua paket yang bukan dari atau untuk komputer kordinator, tetapi melalui komputer coordinator. Tabel ini digunakan jika komputer sebagai switch.
 
OUTPUT = Untuk paket yang digenerate / dibuat sendiri atau untuk menghasilkan paket data yang akan diteeruskan.
 
Komputer A, B, dan C mengirim paket data kepada komputer D yang sudah dilengkapi iptables.Sintaks IPTables : iptables command
-A
yaitu append. Memiliki struktur -A [chain] [aturan]. Berfungsi untuk menetapkan aturan ke dalam chains. Contoh : iptables -A INPUT -s 192.168.0.10
-D
yaitu delete aturan. Memiliki struktur -D [chain] [aturan] atau -D [chain] [nomor urutan aturan]. Berfungsi untuk menghapus aturan dari chains atau menghapus aturan berdasarkan urutan list didalam chains. Contoh : iptables -D INPUT 1 ( menghapus aturan pertama dalam chain INPUT )
-I
yaitu insert. Memiliki struktur -I [chain] [nomor urutan aturan] [aturan]. Berfungsi untuk memasukan aturan baru kedalam chain. Bila nomor urutan aturan adalah 1 berarti aturan tersebut dimasukkan ke prioritas utama dalam chain.
Contoh : iptables -I OUTPUT 2 -s 192.168.0.10
-R
yaitu replace. Memiliki struktur -R [chain] [nomor urutan aturan] [aturan baru]. Berfungsi untuk menimpa / me-replace aturan lama dengan aturan baru dalam chain.
Contoh : iptables -I OUTPUT 2 -s 192.168.0.10 ( menimpa rule kedua dengan rule baru -s 192.168.0.10
-L
yaitu list. Memiliki struktur -L [chain]. Berfungsi untuk menampilkan daftar aturan-aturan didalam chain. Bila chain tidak disertakan maka akan muncul aturan dalam semua chain.
Contoh : iptables -L INPUT
-F
yaitu flush. Memiliki struktur -F [chain]. Berfungsi untuk menghilangkan semua aturan pada chain.
Contoh: iptables -F FORWARD ( menghapus semua aturan didalam chain FORWARD )
-N
yaitu new. Memiliki struktur -N [chain]. Berfungsi untuk membuat chain baru.
Contoh: iptables -N GET
-X
yaitu delete chain. Memiliki struktur -X [chain]. Berfungsi untuk menghapus chain dan ini berbeda dengan -D yang berguna untuk menghapus rule saja. Untuk menghapus chain, dipastikan terlebih dahulu bahwa tidak ada aturan-aturan didalam chain tersebut. Dapat digunakan flush untuk menghapus aturan-aturan di dalam chains,
Contoh: iptables -X GET
-E
yaitu rename chain. Memiliki struktur -E [chain lama] [chain baru]. Berfungsi untuk me-rename / mengganti nama chain yang ada didalam iptables.
Contoh: iptables -E GET PUT
Setelah kita mengetahui perintah-perintah pada iptables, yang kira perlu pahami berikutnya adalah parameter. Kita melihat contoh perintah “iptables -I OUTPUT 2 -s 192.168.0.10″. Disini, -s merupakan parameter. Kegunaan parameter adalah untuk mengidentifikasikan spesifikasi aturan dan digunakan untuk mengikuti perintah umum seperti add, delete, insert, replace dan append.
-p
yaitu menunjukkan protokol. Untuk mengindentifikasikan protokol dalam rule seperti tcp, udp, icmp,dst diperlukan parameter ini.
Contoh: iptables -A INPUT -p tcp
-m
yaitu match option. Mirip dengan -p tetapi perbedaannya adalah modul yang digunakan. Bila pada -p menggunakan modul yang bersifat spesifik tetapi berbeda dengan -m. Dengan menggunakan parameter ini, kita bebas menentukan nama module yang dipakai dan meng-variasikannya dalam perintah selanjutnya.
Contoh : iptables -A INPUT -s 192.168.0.10/20 -m comment –comment “IP yang di-blok” ( berarti modul comment berisi perintah –comment “IP yang di-blok” )
-s
yaitu source alamat hostname / ip.
Contoh : iptables -A INPUT -s 192.168.0.10
-d
yaitu destination / tujuan dari alamat ip.
Contoh: iptables -A INPUT -d 192.168.0.20
-j
yaitu jump. Berfungsi untuk memberikan keputusan setelah paket data cocok dengan aturan. Biasanya terdapat di akhir perintah dan diikuti argumen perintah.
Contoh : iptables -A INPUT -s 192.168.0.21 -j DROP.
-i
yaitu in-interface alias nama interface yang menerima kiriman paket ( terbatas pada chain INPUT, FORWARD dan PREROUTING saja ).
Contoh: iptables -A INPUT -i eth0 -s 192.168.0.21
-o
yaitu out-interface alias nama interface yang akan mengirim paket keluar (terbatas pada chain FORWARD, OUTPUT dan POSTROUTING).
Contoh : iptables -A INPUT -o eth1 -s 192.168.0.21
-c
yaitu counter untuk menghitung paket-paket yang lewat dari sebuah aturan. Penulisan parameter ditulis sebelum command semacam APPEND,INSERT,REPLACE,dst.
Contoh : iptables -c -A INPUT -s 192.168.0.21
-n
yaitu numeric. Parameter ini akan menampilkan output numeric seperti hostname,ip, port, nama network,dst.
Contoh: iptables -L -n
-v
yaitu verbose yang berarti menampilkan informasi secara keseluruhan alias dalam bahasa indonesia terjemahannya “bertele-tele”.
Contoh: iptables -L -n -v
Sekarang kita sudah mendapatkan gambaran tentang penggunaan berbagai command dalam iptables. Lalu apa yang kurang? Argumen! argumen dibutuhkan untuk menentukan tindakan apa yang akan dilakukan setelah paket tersebut cocok dengan aturan pada iptables. Ada beberapa argument seperti:
ACCEPT,
Menerima paket data yang datang.
DROP
mengesampingkan paket data yang datang dan tidak memberikan reply. Sehingga paket yang datang langsung dibuang begitu saja tanpa memberikan balasan report kepada pengirim paket.
REJECT
menolak paket data yang datang. Berbeda dengan DROP, REJECT mengembalikan kembali paket yang telah dikirimkan tanpa flag / report.
LOG
Melakukan log ( pencatatan) terhadap paket yang bersesuaian
RETURN
Untuk chain user-definedakan dikembalikan ke chain yang memanggil, sedangkan untuk chain INPUT, OUTPUT, dan FORWARD akan dijalankan kebijakan default
DENY
menolak paket data yang datang dengan memberikan informasi. Berbeda dengan REJECT, DENY akan memberikan flag / informasi kepada pengirim paket bahwa paket yang dikirimkan telah ditolak.
 
Demikian tutorial tentang IP tables di debian
Semoga bermanfaat. 
 
Referensi

Wassalamualaikum Wr.Wb