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 :
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.
Sumber: http://www.thegeekstuff.com/2011/01/iptables-fundamentals/
8. Terdapat 4 special property pada bagian Target, yaitu:
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.
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.
FORWARD: Melakukan filter paket yang akan di forward dari NIC satu ke NIC yang lain
seperti fungsi pada router
OUTPUT: Digunakan untuk mentranslasikan address paket data yang berasal dari
firewall itu sendiri.
#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:
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