Pembahasan 8
IPTABLES
Iptables
merupakan salah satu firewall popular dan powerfull yang tersedia di sistem
operasi Linux. Iptables merupakan aplikasi untuk administrasi filtering paket
dan Network Addres Translation (NAT) pada Ipv4. Iptables berfungsi untuk
konfigurasi, merawat dan memeriksa rules (tabel aturan) tentang filter paket IP
yang terdapat di karnel linux. Tiap-tiap tables memiliki beberapa built-in
(bawaan) chains kernel linuk dan chains buatan user sendiri. Setiap Chains
memiliki list/dafta aturan untuk mencocokan suatu paket yang datang setiap
aturan tersebut berfungsi memberikan keputusan eksekusi apa yang akan dilakukan
bila paket yang datang cocok dengan aliran yang telah dibuat.
Iptables
memiliki 4 tabel aturan yaitu filter, nat, mangle dan raw.
1. Filter
Untuk melakukan
pemfilteran/penyaringan paket data apakah paket tersebut akan di DROP, LOG,
ACCEPT atau REJECT
2. NAT
Melakukan
Network Address Translation yang merupakan pengganti alamat asal atau tujuan
dari paket data.
3. Mangle
Untuk
melakukan penghalusan (mangle) paket data seperti TTL, TOS, dan MARK
4. raw
Untuk mengkonfigurasi
pengecualian dari connection tracking bersama-sama dengan NOTRACK.
Pada table
terdapat chains (rantai) yang berisi rules / aturan yang berbeda-beda. Chains
pada table filter yaitu INPUT, FORWARD dan OUTPUT.
- INPUT untuk paket yang disiapkan untuk soket lokal atau komputer kita sendiri atau untuk mengatasi paket data yang masuk.
- FORWARD untuk paket yang diarahkan / routing ke box atau untuk mengalihkan paket yang datang.
- OUTPUT untuk paket yang di generate / dibuat sendiri atau untuk menghasilkan paket data yang akan diteruskan.
Contoh kegunaan
iptables:
Komputer A, B
dan C mengirim paket data kepada komputer D yang sudah dilengkapi iptables.
Pada konfigurasi iptables dibuat pernyataan bahwa hanya paket yang memiliki
huruf a yang boleh diterima komputer D, selain itu ditolak semua. Dan hasilnya,
hanya komputer a saja yang bisa mengirimkan paket dan diterima komputer D.
Dalam Iptables
terdapat perintah-perintah yang umum digunakan, yaitu:
1. –A
(Append)
Memiliki struktur –A [chain][aturan] yang berfungsi
menetapkan aturan kedalam chains, contoh: iptables –A INPUT –s 192.168.0.1
2. –D
(Delete)
Memiliki struktur -D [chain][aturan] atau
-D[chain][nomor urutan aturan] yang berfungsi untuk menghapus aturan dari
chains atau menghapus aturan berdasarkan urutan list didalam chains, contoh :
iptables –D INPUT (menghpus aturan pertama dalam chain INPUT)
3. –I
(Insert)
Memiliki struktur –I [chain][nomor urutan
aturan][aturan] yang berfungsi untuk memasukan aturan baru kedalam chain. Bila
nomor urutan aturanadalah I berarti aturan tersebut dimasukan keprioritas utama
dalam chain, contoh : iptables –I OUTPUT 2 –s 192.168.0.1
4. –R
(Replace)
Memiliki aturan –R [chain][nomor urutan
aturan][aturan baru] yang berfungsi untuk menimpa / me-replace aturan lama
dengan aturan baru dalam chain,
contoh : iptables –I OUTPUT 2 -s 192.168.0.1
(menimpa rule kedua dengan rule baru –s 192.168.0.1).
5. –L
(List)
Berfungsi untuk menampilkan daftar aturan-aturan
didalam chain, bila chain tidak disertakan maka akan muncul aturan dalam semua
chain, contoh : iptables –L INPUT
6. –F
(Flus)
Berfungsi untuk menghilangkan semua aturan pada
chain, contoh iptables –F FORWARD (menghapus semua aturandidalam chain FORWARD)
7. –N
(New)
Berfungsi untuk membuat chain baru, contoh :
iptables –N GET.
8. –X
(Delete Chain)
Berfungsi untuk menghapus chain, tetapi –X berbeda
dengan –D yang hanya berfungsi untuk menghapus rule saja. Untuk menghapus chain
dipastikan terlebih dahulu bahwa tudak ada aturan-aturan didalam chains
tersebut. Dapat digunakan flush untuk menghapus aturan-aturan didalam chains,
contoh iptables –X GET.
9. –E
( Rename Chain)
Berfungsi untuk mengganti nama chain yang ada
didalam iptables, contoh : iptables -E GET.
Parameter
Parameter
berfungsi untuk mengidentifikasi spesifikasi aturan dan digunakan untuk
mengikuti perintah umum seperti Add, Delete, Insert, Replace, dan Append.
Berikut adalah perintah dalam parameter :
1. -p
(protocol)
mengindentifikasikan
protokol dalam rule seperti tcp, udp, icmp. contoh : iptables –A INPUT –p tcp
2. -m
(match option)
Mirip dengan -p
tetapi modul yang digunakan dan bebas menentukan nama modul yang dipakai dan
mengvariasikannya dalam perintah selanjutnya.
contoh
: iptables -A INPUT –s 192.168.0.0/16 –m comment.
3. -s
source alamat hostname / ip. contoh : iptables -A INPUT -s 192.168.0.1
4. -d
destination / tujuan dari alamat ip. contoh : iptables -A INPUT -d 192.168.0.2
5. -j
(jump)
memberikan
keputusan setelah paket data cocok dengan aturan. Biasanya terdapat diakhir
perintah dan diikuti argumen perintah. contoh : iptables -A INPUT -s
192.168.0.2 –j DROP.
6. -i
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.2
7. -o
out-interface alias nama interface yang akan mengirim paket keluar (terbatas
pada chain FORWARD, OUTPUT dan POSTROUTING) . contoh : iptables -A INPUT -o
eth0 -s 192.168.0.2.
8. -c
counter untuk menghitung paket-paket yang lewat dari sebuah aturan. contoh : iptables -c -A INPUT -s 192.168.0.2
9. -n
numeric, menampilkan output numeric seperti hostname,ip, port, nama network.
contoh : iptables -L –n.
10. -v
verbose yang berarti menampilkan informasi secara keseluruhan alias dalam
bahasa indonesia terjemahan iptables -L -n -v
Paket-paket
yang masuk akan di periksa, apakah rusak, salah informasi atau tidak, kemudian
di berikan ke chain INPUT. Tergantung pada informasi yang terdapat didalam
header paket dan kebijakan dalam rulest, Keputusan yang diambil untuk suatu
paket dapat berupa :
1. ACCEPT
Menerima
paket dan diproses lebih lanjut oleh kernel
2. DROP
Menolak
paket tanpa pemberitahuan terlebih dahulu
3. REJECT
Mengembalikan
paket ke asalnya dngan pesan kesalahan ICMP
4. LOG
Melakukan
log (pencatatan) terhadap paket yang bersesuaian
5. RETURN
Untuk chain
user-defined akan dikembalikan ke chain yang memanggil, sedangkan untuk chain
INPUT, OUTPUT dan FORWARD akan dijalankan kebijakan default.
6. Mengirim
ke chain user-defined
Perintah-perintah
yang digunakan:
- Setting IP address kelas A
ifconfig
eth0 50.50.50.1 netmask 255.0.0.0
- Setting gateway 50.50.50.21
route
add default gw 50.50.50.21
- Koneksikan jaringan
ping
ip_address_tujuan
- Mengembalikan semua aturan pada posisi default
iptables
–F
- Melihat semua aturan yang ada
iptables
–L
- Memblok pengiriman data keluar
iptables
–A OUTPUT – d ip_user_tujuan -j DROP
- Mengirim direktori ke user lain.
scp
–r /home/bsi_nim/direktori ip_user_tujuan :/home/bsi_nim_user_lain
- Menolak kiriman data dari luar
iptables
–A INPUT – s ip_user_tujuan -j REJECT
- mengirim kembali file direktori
Tidak ada komentar:
Posting Komentar