Anda di halaman 1dari 7

IPTables memiliki 3 buah tabel, yaitu NAT, MANGLE dan FILTER.

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
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 di-DROP, LOG, ACCEPT atau REJECT.
Sumber : http://rootbox.or.id/tips/iptables.html
4. Jenis-jenis chain pada Tabel Filter IPTABLES :

INPUT chain – Mengurus paket yang masuk menuju firewall pada local server
OUTPUT chain – Mengurus paket yang keluar dari local server melewati firewall.
FORWARD chain – Mengurus paket yang akan ditujukan pada NIC di local server.
Sumber : http://www.thegeekstuff.com/2011/01/iptables-fundamentals/
5. 3 Jenis NAT :

 Full Cone NAT

Saat sebuah internal address (iAddr:iPort) dipetakan pada eksternal


address (eAddr:ePort), Paket apapun yang berasal dari iAddr:iPort akan
dikirim melalui eAddr:ePort. Eksternal Host apapun dapat mengirim
paket-paket ke iAddr:iPort dengan cara mengirimnya melalui
eAddr:ePort.

 Restricted Cone NAT

Saat sebuah internal address (iAddr:iPort) dipetakan pada eksternal


address (eAddr:ePort), Paket apapun yang berasal dari iAddr:iPort akan
dikirim melalui eAddr:ePort. Eksternal Host apapun dapat mengirim
paket-paket ke iAddr:iPort dengan cara mengirimnya melalui
eAddr:ePort hanya jika iAddr:iPort sebelumnya telah mengirim paket ke
hAddr:any. “Any” berarti suatu port apapun baik yang bersangkutan
maupun yang tidak bersangkutan.

 Port Restricted Cone NAT

Saat sebuah internal address (iAddr:iPort) dipetakan pada eksternal address (eAddr:ePort), Paket
apapun yang berasal dari iAddr:iPort akan dikirim melalui eAddr:ePort. Eksternal Host apapun dapat
mengirim paket-paket ke iAddr:iPort dengan cara mengirimnya melalui eAddr:ePort hanya jika
iAddr:iPort sebelumnya telah mengirim paket ke hAddr:Port. “Port” berarti suatu port tertentu yang
bersangkutan.
Sumber : https://en.wikipedia.org/wiki/Network_address_translation
6. Yang membedakan tabel Mangle dengan tabel lainnya adalah, tabel
Mangle digunakan untuk melakukan penghalusan (mangle) paket seperti
merubah TTL, QOS, dan MARK di header TCP. Sangat berbeda dengan
tabel Filter dan tabel NAT, dimana tabel Filter digunakan untuk
pemfilteran paket, sedangkan tabel NAT digunakan untuk melakukan
Network Address Translation.

Sumber: http://ojaramos.blogspot.com/2011/05/dasar-dasar-iptables.html
7. Chain Prerouting digunakan untuk merubah paket-paket NAT dimana
alamat tujuan dari paket-paket tersebut terjadi perubahan. Biasanya
dikenal dengan destination NAT atau DNAT. Atau dengan kata lain, Chain
Pre-routing merubah paket sesaat setelah paket masuk kedalam sistem,
namun belum dilakukan routing.

Chain Postrouting digunakan untuk merubah paket-paket NAT dimana


alamat sumber dari paket-paket tersebut terjadi perubahan. Biasanya
dikenal dengan source NAT atau SNAT. Atau dengan kata lain, Chain
Post-routing merubah paket sesaat setelah paket meninggalkan sistem.

Sumber: http://www.thegeekstuff.com/2011/01/iptables-fundamentals/
8. Terdapat 4 special property pada bagian Target, yaitu:

 ACCEPT: Digunakan agar firewall menerima paket.


 DROP: Digunakan agar firewall men-drop paket.
 QUEUE: Digunakan agar firewall mengoper paket kedalam userspace.
 RETURN: Digunakan agar firewall berhenti mengeksekusi rule selanjutnya pada chain yang
sama di suatu paket. Kontrol akan dikembalikan kepada pemanggil chain.
Sumber: http://www.thegeekstuff.com/2011/01/iptables-fundamentals/
9. Perbedaan diantara special property DROP dan REJECT adalah
sebagai berikut:

 DROP: Firewall akan menolak paket tanpa disertai pesan error kesalahan.
 REJECT: Firewall akan menolak paket dan memberitahukan error kesalahan kepada user
pengirim.
Sumber: http://ojaramos.blogspot.com/2011/05/dasar-dasar-iptables.html
10. Penjelasan IPTABLES tersebut adalah sebagai berikut:

 -A FORWARD
IPTABLES tersebut akan ditambahkan kedalam chain FORWARD. Chain
FORWARD itu sendiri adalah chain yang digunakan untuk paket yang akan
dirouting.

 -s 0/0
Memberlakukan aturan bahwa paket yang masuk harus berasal dari
alamat 0/0, yang berarti paket dari semua alamat dapat masuk (karena
address 0 netmask 0).

 -i eth0
Merupakan nama interface tempat paket tersebut masuk. Berarti, paket
yang diterima masuk melalui interface eth0.

 -d 192.168.1.58
Merupakan alamat tujuan. Berarti, aturan ini berlaku bagi paket yang
mempunyai alamat tujuan 192.168.1.58

 -o eth1
Merupakan nama interface tempat paket tersebut keluar. Berarti, paket
yang diterima akan dikeluarkan melalui interface eth1.

 -p TCP
Merupakan protocol dari aturan IPTABLES atau aturan bagi paket yang
akan dicek. Protocol yang digunakan adalah protocol TCP.

 –sport 1024:65535
Merupakan port sumber dari paket. Aturan yang diberlakukan adalah, port
sumber dari paket berasal dari port dengan rentang 1024 hingga 65535.
 -m multiport –dports 80,443
Merupakan aturan dimana paket TCP yang diterima memiliki port tujuan
80 atau 443.

 -j ACCEPT
Merupakan target dari aturan IPTABLES ini. Targetnya adalah ACCEPT,
dimana jika paket tersebut sesuai dengan aturan-aturan IPTABLES ini,
maka paket akan diterima oleh Firewall.

Iptables adalah aplikasi yang ada pada sistem operasi linux yang berfungsi melakukan
filter terhadap trafik pada jaringan. Jadi firewall yang ada pada sistem operasi Linux ini
dijalankan oleh iptabes.

Selain menjalankan sebagai firewall, iptables juga berfungsi menjalankan fungsi NAT.
NAT itu sendiri merupakan internet gateway yang menghubungkan jaringan lokal
dengan jaringan internet.

Secara default Iptables ini sudah terinstall pada sistem operasi dengan basis Fedora
dan RedHat.

Tabel Aturan Pada Iptables


Pada Iptables ada beberapa tabel aturan yang perlu diperhatikan, sebagai berikut:

 Filter – Menentukan paket yang akan di DROP, LOG, ACCEPT, atau REJECT.
 NAT – Mentranslasikan (merubah) alamat asal atau tujuan dari sebuah paket.
 Mangle – Melakukan penghalusan (mangle) pada paket data seperti TTL,
TOS, dan MARK.
Setiap tabel diatas memiliki rule-rule atau aturan yang disebut chain.

Filter memiliki 3 buah chain:

FORWARD: Melakukan filter paket yang akan di forward dari NIC satu ke NIC yang lain
seperti fungsi pada router

INPUT: Melakukan filter paket yang ditujukan untuk firewall.


OUTPUT: Melakukan filter paket yang akan keluar dari firewall.

NAT memiliki 3 buah chain:

PRE-ROUTING: Digunakan untuk mentranslasikan address sebelum proses routing


terjadi, yaitu merubah IP tujuan dari paket data biasanya disebut dengan Destination
NAT atau DNAT.

POST-ROUTING: Digunakan untuk mentraslasikan address setelah proses routing


terjadi, yaitu merubah source IP dari paket data biasanya disebut dengan Source NAT
atau SNAT.

OUTPUT: Digunakan untuk mentranslasikan address paket data yang berasal dari
firewall itu sendiri.

Mangle memiliki 5 buah chain:

Untuk mange sendiri mempunya 5 buah chain, yaitu PREROUTING, POSTROUTING,


INPUT, OUTPUT, FORWARD.
Semua chains diperuntukkan untuk TCP Packet Quality of Service sebelum proses
routing dijalankan.

Aturan Membuat Iptables


Perintah dasar pada iptables pada dasarnya memiliki ketentuan. Iptables sendiri bisa
dikatakan sebagai tabel IP sesuai dengan namanya. Sistem hanya akan menjalankan
rule yang ada pada tabel. Rule yang ada pada iptables dapat dimodifikasi (tambah,
edit, hapus) sesuai dengan kebutuhan. Berikut ini adalan command dasar dan
parameter yang digunakan untuk membuat rule pada iptables.

#Command

Berikut ini command dasar yang digunakan untuk membuat rule menggunakan
iptables.
-A, –append == Menambahkan aturan di akhir chain. Aturan ditambahkan di akhir
baris chain yang bersangkutan, sehingga dieksekusi terakhir kali.
-D, –delete == Menghapus satu aturan chain. Dengan mendefinisikan perintah/rule
yang ingin dihapus secara lengkap atau menyebutkan nomor baris perintah yang akan
dihapus.
-R, –replace == Menggantikan aturan chain dengan aturan baru.
-I, –insert == Memasukkan aturan pada suatu baris di chain. Aturan akan dimasukkan
ke baris yang ditulis, dan aturan yang tadinya ada di baris tersebut akan bergeser ke
bawah bersama dengan baris-baris selanjutnya.
-L, –list == Menampilkan semua aturan pada tabel.
-F, –flush == Perintah ini mengosongkan aturan pada sebuah chain.
-N, –new-chain == Membuat chain baru.
-X, –delete-chain == Menghapus chain yang dituliskan. Dengan catatan, tidak boleh
ada aturan lain yang bersangkutan dengan chain tersebut.
-P, –policy == Membuat kebijakan default pada chain. Jika ada paket yang tidak
memenuhi aturan pada baris yang diinginkan, paket akan diperlakukan sesuai dengan
kebijakan default ini.
-E, –rename-chain == Mengubah nama chain.

#Parameter

Berikut ini adalah parameter-parameter yang digunakan pada saat akan membuat satu
aturan/rule mnggunakan iptables.

-p, –protocol == mengidentifikasikan protocol dalam rule seperti tcp, udp, icmp.
-m, –match-option == mirip dengan –p tetapi modul yang digunakan dan bebas
menentukan nama modul yang dipakai dan mengvariasikannya dalam perintah
selanjutnya.
-s, –source == alamat hostname/ip.
-d, –destination == tujuan dari alamat ip.
-j, –jump == memberikan keputusan setelah paket data cocok dengan aturan.
-i, –in-interface == alias nama iterface yang menerima kiriman paket (terbatas pada
chai INPUT, FORWARD dan PREROUTING saja).
-o, –out-interface == alias nama interface yang akan mengirim paket keluar (pada
chain FORWARD, OUTPUT dan POSTROUTING).
-c, –counter == untuk menghitung paket-paket yang lewat dari sebuah aturan.
-n, –numeric == menampilkan output numeric seperti hostname, ip, port, nama
network.
-v, –verbose == yang berarti menampilkan informasi secara keseluruhan alias dalam
bahasa indonesia terjemahan.

Contoh:

#iptables -A INPUT -p tcp –dport: ssh -j ACCEPT

Dari contoh diatas dapat kita artikan sebagai berikut:

Menambahkan pada chain (-A INPUT) pada trafik yang lewat


Melakukan pengecekan hanya untuk protokol TCP (-p TCP)
Apabila protokol benar maka dilakukan pengecekan untuk tujuan port nya, dalam contoh ini tujuan port
untuk ssh (port 22)
Apabila semuanya terpenuhi maka koneksi terbangun.

#iptables -I INPUT -s 9.8.7.6/32 -j DROP

Dari contoh diatas dapat kita artikan sebagai berikut:

Menambahkan pada chain INPUT (Melakukan blok pada IP attacker)


Melakukan pengecekan sumber IP yang datang dari IP 9.8.7.6
Apabila IP tersebut cocok maka langsung dilakukan DROP pada paket tersebut.

#iptables -I FORWARD -p udp –dport 1434 -j DROP

Dari contoh diatas dapat kita artikan sebagai berikut:

Menambahkan pada chain FORWARD (memfilter paket yang menuju server yang dapat diakses oleh NIC
lain) dan contoh diatas merupakan contoh untuk melakukan blok pada WORM
Melakukan pengecekan protokol yang digunakan, pada rule diatas harus UDP
Kemudian tujuan port yaitu 1434 MsSQL
Dan yang terakhir dilakukan aksi DROP pada paket tersebut

Sekian dan terima kasih.

Anda mungkin juga menyukai