Soal
1.
Apakah yang
dimaksud dengan IPTABLES?
2.
Bagaimana
aturan penulisan dalam IPTABLES?
3.
IPTABLES
mempunyai berapa table? Sebutkan dan jelaskan!
4.
Pada table
Filter, terdapat 3 jenis chain, sebutkan dan jelaskan perbedaannya!
5.
Sebutkan dan
jelaskan 3 jenis NAT!
6.
Apa yang
membedakan Mangle dengan table yang lain? Jelaskan!
7.
Apa tujuan
dari penggunaan Chain Prerouting dengan Chain Postroting? Jelaskan!
8.
Dalam
penulisan IPTABLES, pada bagian Target, terdapat special property. Sebutkan dan jelaskan apa saja special property tersebut! (minimal 4)
9.
Beberapa
special property dari bagian Target adalah DROP dan REJECT, jelaskan dan
sebutkan perbedaannya!
10.
Jelaskan
contoh IPTABLES berikut ini:
Jawaban
1.
IPTables
merupakan salh satu firewall popular dan powerfull yang tersedia di sistem
oprasi Linux. Fungsi IPTables adalah untuk konfigurasi, merawat dan memeriksa
rules tables (tabel aturan) tentang filter paket IP yang terdapat di kernel
linux.
2.
# iptables
[-t table] command [match] [target/jump]
[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.
[option]
Option digunakan
dikombinasikan dengan command tertentu yang akan menghasilkan suatu variasi
perintah.
[Generic Matches]
Pendefinisian
kriteria yang berlaku secara umum. Dengan kata lain, sintaks generic matches
akan sama untuk semua protokol. Setelah protokol didefinisikan, maka baru
didefinisikan aturan yang lebih spesifik yang dimiliki oleh protokol tersebut.
Hal ini dilakukan karena tiap-tiap protokol memiliki karakteristik yang
berbeda, sehingga memerlukan perlakuan khusus.
[Implicit
Matches]
Match yang
spesifik untuk tipe protokol tertentu. Implicit Match merupakan sekumpulan rule
yang akan diload setelah tipe protokol disebutkan. Ada 3 Implicit Match berlaku
untuk tiga jenis protokol, yaitu TCP matches, UDP matches dan ICMP matches.
[target]
Target atau jump
adalah perlakuan yang diberikan terhadap paket-paket yang memenuhi kriteria di
rule iptable atau match.
3.
IPTables
memiliki 4 tabel aturan yaitu filter, nat, mangle dan raw.
1.
Filter
Untuk
melakukan pemfiteran/penyaringan paket data apakah paket tersebut akan di DROP,
LOG, ACCEPT atau REJECT
2.
Nat
Melakukan
Network Address Translation yang merupakan pegganti 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 NOTRACK
4.
Pada table
terdapat chains (rantai) yang berisi rules/aturan yang berbeda-beda. Chains
pada table filter, yaitu:
1.
INPUT
Untuk
paket yang disiapkan untuk soket lokal atau komputer kita sendiri atau untuk
mengatasi paket data yang masuk
2.
FORWARD
Untuk
paket yang diarahkan/routing ke box atau untuk mengalihkan paket yang datang
3.
OUTPUT
Untuk
paket yang generate/dibuat sendiri atau untuk menghasilkan paket data yang akan
diteruskan
5.
Tiga jenis
NAT:
1. Statik,
Translasi Static terjadi ketika sebuah alamat lokal (inside) di petakan ke
sebuah alamat global/internet (outside). Alamat lokal dan global dipetakan satu
lawan satu secara Statik.
2. Dinamik NAT
dengan Pool (kelompok), Translasi Dinamik terjadi ketika router NAT diset untuk
memahami alamat lokal yang harus ditranslasikan, dan kelompok (pool) alamat
global yang akan digunakan untuk terhubung ke internet. Proses NAT Dinamik ini
dapat memetakan bebarapa kelompok alamat lokal ke beberapa kelompok alamat
global.
3. Masquerading
NAT, NAT ini menerjemahkan semua IP address tak terdaftar pada jaringan dan
dipetakan kepada satu IP address terdaftar. Agar banyak client bisa mengakses
Internet secara bersamaan, router NAT menggunakan nomor port untuk bisa
membedakan antara paket-paket yang dihasilkan oleh atau ditujukan komputer yang
berbeda. Asosiasi antara client dengan IP tak terdaftar dengan kombinasi IP
address terdaftar dan nomor port didalam router NAT hanya berlangsung saat
terjadi satu kesempatan koneksi saja, setelah itu dilepas.
6.
Table Mangle:
tabel yang bertanggung jawab untuk melakukan penghalusan (mangle) paket seperti
merubah quality of service (QOS), TTL, dan MARK di header TCP. Biasanya tabel
ini jarang digunakan di lingkungan SOHO.
7.
Rantai
Pre-Routing: Merubah paket-paket NAT dimana alamat tujuan dari paket-paket
tersebut terjadi perubahan. Biasanya dikenal dengan destination NAT atau DNAT.
Rantai
Post-Routing: Merubah paket-paket NAT dimana alamat sumber dari paket-paket
tersebut terjadi perubahan. Biasanya dikenal dengan source NAT atau SNAT.
8.
ACCEPT berarti
menerima paket dan diproses lebih lanjut oleh kernel. DROP berarti menolak
paket tanpa pemberitahuan lebih dulu. QUEUE berarti mengirim paket ke userspace
(jika di support oleh kernel). RETURN berarti untuk chain user-defined akan
dikebalikan ke chain yang memanggil, sedangkan untuk chain INPUT, OUTPUT dan
FORWARD akan dijalankan kebijakan default
9.
Dengan DROP, Target
ini men-drop paket dan menolak untuk memproses lebih jauh. Dalam beberapa kasus
mungkin hal ini kurang baik, karena akan meninggalkan dead socket antara client
dan server. Paket yang menerima target DROP benar-benar mati dan target tidak
akan mengirim informasi tambahan dalam bentuk apapun kepada client atau server.
–j DROP / –jump
DROP
Secara umum,
REJECT bekerja seperti DROP, yaitu memblok paket dan menolak untuk memproses
lebih lanjut paket tersebut. Tetapi, REJECT akan mengirimkan error message ke
host pengirim paket tersebut. REJECT bekerja pada chain INPUT, OUTPUT dan
FORWARD atau pada chain tambahan yang dipanggil dari ketiga chain tersebut.
iptables –A
FORWARD –p tcp –dport 22 –j REJECT –reject-with icmp-host-unreachable
Ada beberapa
tipe pesan yang bisa dikirimkan yaitu icmp-net-unreachable,
icmp-host-unreachable, icmp-port-unreachable, icmp-proto-unrachable,
icmp-net-prohibited dan icmp-host-prohibited.
10.
Iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT artinya Memberikan akses dari jaringan internal yang terhubung melalui eth0 ke jaringan eksternal yang terhubung melalui eth1. eth0 terhubung ke ip 192.168.1.58, sedangkan eth1 terhubung ke
-s : source digunakan untuk mencocokkan paket berdasarkan alamat IP asal/sumber.
-p TCP artinya protocol yang dapat digunakan pada eth1 hanya TCP
-- sport 1024:65535 artinya dapat menggunakan port yang berada dalam range 1024 hingga 65535
-m multiport --dports 90,443 artinya koneksi yang masuk dari luar ke dalam masuk melalui multiple ports, yaitu port 90 dan port 443