IPTables atau Netfilter adalah aplikasi yang digunakan pada sistem operasi berbasis Linux sebagai program untuk menyeleksi koneksi yang terjadi antara computer kita dengan computer lain dalam suatu jaringan (berupa LAN maupun WAN).
Dengan iptables inilah kita dapat mengatur semua lalu lintas dalam komputer kita, baik yang masuk ke komputer, keluar dari komputer, ataupun traffic yang sekedar melewati komputer kita. Yang paling penting adalah bahwa dengan IPTables ini kita bisa membuat aturan (rule) untuk arus lalulintas data. Aturan-aturan itu dapat mencakup banyak hal, seperti besar data yang boleh lewat, jenis paket/datagram yang dapat diterima, mengatur traffic berdasar asal dan tujuan data, forwarding, NAT, redirecting, pengelolaan port, dan firewall.
IPTables memiliki 4 buah table. Penggunannya disesuaikan dengan sifat dan karakteristik masing-masing. Fungsi dari masing-masing tabel tersebut sebagai berikut :
- NAT : Secara umum digunakan untuk melakukan Network Address Translation. NAT adalah
- MANGLE : Digunakan untuk melakukan penghalusan (mangle) paket, seperti TTL, TOS dan
- FILTER : Secara umum, inilah pemfilteran paket yang sesungguhnya.. Di sini bisa dintukan apakah
- RAW : Untuk menglonfigurasi pengecualian dari connection traking bersama - sama dengan
Chain pada IPTables:
- INPUT – Semua paket yang ditujukan untuk host komputer.
- OUTPUT – Semua paket yang berasal dari host komputer.
- FORWARD – Semua paket yang bukan dari atau untuk komputer host, tetapi melalui komputer host.
Setelah kita mengetahui konsep dasar dari iptables, penjelasanselanjutnya mengenai sintaks dari iptables. Untuk dapatmengimplementasikan iptables ke mesin Linux sebagai firewall kita harusmengetahui aturan penulisan ( sintaks ) dari iptables tersebut.Beikut ini sintaks dari iptables
iptables [command] [chain] [options] [target]
[command]Command
pada baris perintah IPTABLES akan memberitahu apayang harus dilakukan terhadap lanjutan sintaks perintah. Umumnyadilakukan penambahan atau penghapusan sesuatu dari tabel atau yang lain.
Beberapa contoh dari :
command-A—append
Perintah ini menambahkan aturan pada akhir chain. Aturan akanditambahkan di akhir baris pada chain yang bersangkutan, sehingga akandieksekusi terakhir.
-D--delete
Perintah ini menghapus suatu aturan pada chain. Dilakukan dengan caramenyebutkan secara lengkap perintah yang ingin dihapus atau denganmenyebutkan nomor baris dimana perintah akan dihapus.
-R--replace
Penggunaannya sama seperti --delete, tetapi command ini menggantinyadengan entry yang baru.
-I--insert
Memasukkan aturan pada suatu baris di chain. Aturan akan dimasukkan padabaris yang disebutkan, dan aturan awal yang menempati baris tersebut akandigeser ke bawah. Demikian pula baris-baris selanjutnya
-F--flush
Perintah ini mengosongkan aturan pada sebuah chain. Apabila chain tidakdisebutkan, maka semua chain akan di-flush.
-N--new-chain
Perintah tersebut akan membuat chain baru
[chain]
Chain melakukan filtering semua paket data yang baik yang masukmaupun yang keluar ke dalam firewall. Dari ketiga chain dibawah inilah kitadapat membuat sebuah sistem filtering yang sesuai dengan kebutuhan.
Mengatur paket data yang melintasi firewall dari arah internet keintranet maupun sebaliknya. Policy forward paling banyak dipakai saatini untuk mengatur koneksi internet berdasarkan port, mac addressdan alamat IP.
[option]Option
digunakan dikombinasikan dengan command tertentu yangakan menghasilkan suatu variasi perintah.
Beberapa contoh dari option
-p--protocol
Digunakan untuk mengecek tipe protokol tertentu. Contoh protokol yangumum adalah TCP, UDP, ICMP dan ALL. Daftar protokol bisa dilihat pada/etc/protocols.Tanda inversi juga bisa diberlakukan di sini, misal kita menghendaki semuaprotokol kecuali icmp, maka kita bisa menuliskan --protokol ! icmp yangberarti semua kecuali icmp. menunjukkan protokol. Untukmengindentifikasikan protokol dalam rule seperti tcp, udp, icmp,dstdiperlukan parameter ini.Contoh: iptables -A INPUT -p tcp
-s--source
Kriteria ini digunakan untuk mencocokkan paket berdasarkan alamat IP asal.Alamat di sini bisa berberntuk alamat tunggal seperti 192.168.1.1, atau suatualamat network menggunakan netmask misal 192.168.1.0/255.255.255.0,atau bisa juga ditulis 192.168.1.0/24 yang artinya semua alamat 192.168.1.x.Kita juga bisa menggunakan iinversi.
-d--destination
Digunakan untuk mecocokkan paket berdasarkan alamat tujuan.Penggunaannya sama dengan match –src.
-i--in-interface
Match ini berguna untuk mencocokkan paket berdasarkan interface di manapaket datang. Match ini hanya berlaku pada chain INPUT, FORWARD danPREROUTING.
-o--out-interface
Berfungsi untuk mencocokkan paket berdasarkan interface di mana paketkeluar. Penggunannya sama dengan --in-interface. Berlaku untuk chainOUTPUT, FORWARD dan POSTROUTING
-j--jump
yaitu jump. Berfungsi untuk memberikan keputusan setelah paket data cocokdengan aturan. Biasanya terdapat di akhir perintah dan diikuti argumenperintah. Contoh : iptables -A INPUT -s 192.168.0.2 -j DROP.
[target]
Target atau jump adalah perlakuan yang diberikan terhadap paket-paket yang memenuhi kriteria di rule iptable atau match.
-j ACCEPT
Akses diterima dan diizinkan melewati firewall
-j DROP
Mengesampingkan paket data yang datang dan tidak memberikanreply. Sehingga paket yang datang langsung dibuang begitu saja tanpamemberikan balasan report kepada pengirim paket. Untuk menanganimasalah tersebut, Solusi yang lebih baik gunakan REJECT.
-j REJECT
REJECT pada dasarnya sama seperti DROP. Menolak paket data yangdatang. Perbedaan REJECT dengan DROP, REJECT memberikan pesanerror kepada client yang mengakses.
Perintah - Perintah yang Digunakan :
1. Setting IP Address kelas A
ifconfig eth0 50.50.50.1 netmask 255.0.0.0
2. Setting gateway 50.50.50.21
route add default gw 50.50.50.21
3. koneksikan Jaringan
ping ip_address_tujuan
4. Mengembalikan semua aturan pada posisi default
IPTables -F
5. Melihat semua aturan yang ada
IPTables -L
6. Memblok Pengiriman data keluar
iptables -A Output -d ip_user_tujuan -j DROP
Tidak ada komentar:
Posting Komentar