SOAL PENDAHULUAN
1. Apakah
yang dimaksud dengan IPTABLES?
2. Bagaimana
Peraturan penulisan IPTABLES?
3. IPTABLES
memiliki berapa table? Sebut dan jelaskan?
4. Pada
table Filter terdapat 3 jenois chain, sebut dan jelaskan perbedaannya?
5. Sebut
dan Jelaskan 3 jenis NAT?
6. Apa
yang membedakan Mangle dengan table lain? Jelaskan!
7. Apa
tujuan dari penggunaan chain prerouting dengan chain postrouting? Jelaskan!
8. Pada
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
maksud IPTABLES dibawah ini.
iptables –A
FORWARD –s 0/0 –i eth0 –d 192.168.1.58 –o eth1 –p TCP –sport 1024:65535 –m
multiport –dports 80,443 –j ACCEPT
JAWABAN SOAL
PENDAHULUAN
1. 1. Iptables adalah suatu
tools dalam sistem operasi linux yang berfungsi sebagai alat untuk melakukan
filter (penyaringan) terhadap (trafic) lalulintas data. Secara sederhana
digambarkan sebagai pengatur lalulintas data. Dengan iptables inilah kita akan
mengatur semua lalulintas dalam komputer kita, baik yang masuk ke komputer,
keluar dari komputer, ataupun traffic yang sekedar melewati komputer kita.
2.
iptables -t [table] command [chain]
parameter target
contoh :
iptables -t filter -A INPUT -s 192.168.1.1 -j DROP
3.
·
filter : ini adalah
tabel default, mengandung INPUT, OUPUT, dan FORWARD (biasa di sebut chain
INPUT, chain OUTPUT, dan chain FORWARD)
·
nat : digunakan untuk
membuat gateway, SNAT untuk mengubah alamat IP pengirim, biasanya dijadikan
gateway menuju ke internet, DNAT kebalikan dari SNAT
·
mangle : digunakan
untuk menandai paket-paket untuk digunakan di proses-proses selanjutnya
4.
INPUT
Mengatur paket data yang memasuki firewall dari arah intranet maupun internet.
kita bisa mengelolakomputer mana saja yang bisa mengakses firewall. misal:
hanya komputer IP 192.168.1.100 yang bisa SSHke firewall dan yang lain tidak
boleh.
OUTPUT
Mengatur paket data yang keluar dari firewall ke arah intranet maupun internet.
Biasanya output tidak diset,karena bisa membatasi kemampuan firewall itu
sendiri.
FORWARD
Mengatur paket data yang melintasi firewall dari arah internet ke intranet
maupun sebaliknya. Policy forward paling banyak dipakai saat ini untuk mengatur
koneksi internet berdasarkan port, mac address dan alamat IP Selain aturan
(policy) firewall iptables juga mempunyai parameter yang disebut dengan TARGET,
yaitu status yang menentukkan koneksi di iptables diizinkan lewat atau tidak.
TARGET ada tiga macam yaitu:
ACCEPT
Akses diterima dan diizinkan melewati firewall
REJECT
Akses ditolak, koneksi dari komputer klien yang melewati firewall langsung
terputus, biasanya terdapatpesan “Connection Refused”. Target Reject tidak
menghabiskan bandwidth internet karena akses langsung ditolak, hal ini berbeda
dengan DROP.
DROP
Akses diterima tetapi paket data langsung dibuang oleh kernel, sehingga
pengguna tidak mengetahui kalau koneksinya dibatasi oleh firewall, pengguna
melihat seakan – akan server yang dihubungi mengalami permasalahan teknis. Pada
koneksi internet yang sibuk dengan trafik tinggi Target Drop sebaiknya jangan
digunakan.
5.
· PREROUTING
rantai - Alters paket sebelum routing. yaitu terjemahan Packet terjadi segera
setelah paket datang ke sistem (dan sebelum routing). Hal ini membantu untuk
menerjemahkan alamat ip tujuan paket ke sesuatu yang cocok routing pada server
lokal. Ini digunakan untuk DNAT (destination NAT).
· POSTROUTING
rantai - Alters paket setelah routing. yaitu terjemahan Packet terjadi ketika
paket meninggalkan sistem. Hal ini membantu untuk menerjemahkan alamat ip
sumber paket ke sesuatu yang mungkin cocok routing pada server desintation. Ini
digunakan untuk SNAT (source NAT).
· OUTPUT
chain - NAT untuk paket lokal yang dihasilkan pada firewall.
6.
Table Mangle Iptables adalah untuk perubahan
paket khusus. Ini mengubah QOS bit dalam header TCP. Tabel mangle memiliki
berikut built-in rantai.
·
rantai PREROUTING
·
rantai OUTPUT
·
rantai MAJU
·
rantai INPUT
·
rantai
POSTROUTING
7.
Prerouting chain, melakukan
NAT pada paket ketika alamat tujuan dari paket perlu diubah.
Postrouting chain, melakukan NAT pada paket
ketika alamat sumber dari paket perlu diubah.
8.
o ACCEPT IPTables menghentikan pemrosesan lanjutan, paket
ditangani oleh aplikasi akhir, atau oleh system operasi untuk pemrosesan.
LOG Melakukan pencatatan (log) informasi paket
ke daemon syslog
DNAT Digunakan untuk melakukan translasi alamat
IP tujuan, sebagai contoh menulis ulang alamat IP tujuan dari paket.
o SNAT Digunakan untuk melakukan translasi alamat IP sumber,
sebagai contoh menulis ulang alamat IP sumber dari paket. Alamat IP sumber
didefinisikan oleh sumber
o MASQUERADE Digunakan untuk melakukan translasi alamat
jaringan sumber. Defaultnya alamat IP sumber adalah alamat IP yang
digunakan oleh interface firewall.
9.
DROP IPTables menghentikan
pemrosesan lanjutan, dan paket akan ditolak.
REJECT Sama seperti DROP, tetapi juga akan
mengembalikan pesan kesalahan ke host yang mengirim paket yang ditolak.
10.
iptables –A FORWARD –s 0/0 –i eth0 –d 192.168.1.58 –o eth1 –p TCP –sport 1024:65535 –m multiport –dports 80,443 –j ACCEPT
-A : menambahkan spesifikasi aturan chain
FORWARD : untuk mengatur paket yang dirouting
melalui router bersangkutan (yang diberikan aturan iptables bersangkutan )
-s 0/0 : spesifikasi alamat asal, dimana 0/0
berarti mengatur untuk seluruh alamat asal yang melewati router bersangkutan
-i eth0 : merupakan nama interface dimana
paket diterima, dalam hal ini yang diatur yaitu paket yang melewati interface
eth0
-d 192.168.1.58 : merupakan tujuan dari paket, dalam hal ini yang diatur
yaitu paket yang memiliki ip tujuan 192.168.1.58
-o eth1 : mengatur nama interface yang akan
digunakan untuk mengirim atau melanjutkan paket, dalam hal ini paket yang
diatur akan dikirim melalui interface eth1.
-p TCP : mengatur aturan protokol yang
digunakan, dalam hal ini menggunakan protokol TCP.
–sport 1024:65535 : mengatur source port atau
port asal, dalam hal ini yaitu 1024:65535
–m multiport : merupakan match iption, dengan
nama maching module yaitu multiport
–dports 80,443 : mengatur port tujuan, dalam
hal ini port tujuannya yaitu 80, 433
–j ACCEPT : artinya jika paket sesui dengan
kriteria di atas, maka paket tersebut diijinkan lewat.
SOAL SHIFT
1. Semua
subnet tidak dapat mengakses TCP port 21, 443, 66 pada DMZ kecuali KEBUN_BIBIT
sedangkan port TCP yang diizinkan untuk mengakses DMZ adalah port 80, 8080, 22.
2. Mengijinkan
semua akses UDP ke DMZ.
3. Subnet DMZ
tidak dapat di PING dari luar selain subnet AJK dan jaringan internal.
4. Koneksi
kepada DMZ melalui ssh dibatasi sebanyak 5 koneksi.
5. Buatlah
sebuah perintah iptables untuk mengatasi synflood
6. Buatlah
sebuah perintah iptables untuk mengatasi force ssh attack.
7. Buatlah
perintah iptables untuk memblok paket scanning. Contoh: xmas, file scan.
8. Subnet
taman_bungkul hanya bisa diakses oleh subnet kebun_bibit, subnet plasa_surabaya
hanya bisa diakses ketika jam kerja (08.00 – 16.00), subnet sutos tidak bisa
melakukan koneksi ke YM dan Facebook serta tidak bisa melakukan streaming video
pada hari dan jam kerja (senin-jumat 07.00-17.00).
9. Selain DMZ
gunakan NAT untuk mengakses jaringan luar (tidak boleh menggunakan masquerade).
10. Catat semua
log yang di-drop oleh firewall.
JAWABAN
SOAL SHIFT
1.
iptables -A FORWARD -p tcp -i eth0 -s 10.10.4.0/28 -d
10.151.77.128/29 -m multiport --dport 21,443,66 -j ACCEPT
iptables -A FORWARD -p tcp -i eth0 -s 0.0.0.0/0 -d
10.151.77.128/29 -m multiport --dport 80,8080,22 -j ACCEPT
2.
iptables -A FORWARD -p udp -i eth0 -s 0.0.0.0/0 -d
10.151.77.128/29 -j ACCEPT
3.
iptables -A FORWARD -p icmp -i eth0 -s 10.10.0.0/20 -d 10.151.77.128/29 -j ACCEPT
iptables -A FORWARD -p icmp -i eth0 -s 10.151.76.0/24 -d
10.151.77.128/29 -j ACCEPT
4.
iptables -A FORWARD -p tcp -i eth1 -d 10.151.77.128/29 --syn
--dport 22 -m connlimit --connlimit-above 5 -j REJECT
5.
iptables -A FORWARD -p tcp --syn -m limit --limit 1/s
--limit-burst 3 -j REJECT
6.
iptables -I FORWARD -i eth0 -p tcp -m tcp --dport 22 -m state
--state NEW -m recent --set --name DEFAULT --rsource
iptables -I FORWARD -i eth0 -p tcp -m tcp --dport 22 -m state
--state NEW -m recent --update --seconds 180 --hitcount 4 --name DEFAULT
--rsource -j REJECT
7.
iptables -A FORWARD -p tcp ! --syn -m state --state NEW -j
REJECT
Force Fragments packets check
iptables -A FORWARD -f -j REJECT
XMAS packets
Incoming malformed XMAS packets REJECT them:
iptables -A FORWARD -p tcp --tcp-flags ALL ALL -j REJECT
REJECT all NULL packets
Incoming malformed NULL packets:
iptables -A FORWARD -p tcp --tcp-flags ALL NONE -j REJECT
Block Spoofing and bad addresses
8.
iptables -A FORWARD -p all -i eth0 -s ! 10.10.4.0/28 -d
10.10.7.0/26 -j REJECT
iptables -A FORWARD -p all -s 0/0 -d 10.10.14.0/23 -m time
--timestart 08:00 --timestop 16:00 -j ACCEPT
iptables -A FORWARD -p all -s 0/0 -s 10.10.0.0/23 -d
173.252.110.27 -m time --timestart 07:00 --timestop 17:00 -j REJECT
iptables -A FORWARD -p all -s 0/0 -s 10.10.0.0/23 -d
68.180.190.124 -m time --timestart 07:00 --timestop 17:00 -j REJECT
9.
iptables -t nat -A POSTROUTING -s 10.151.77.128/29 -o eth0 -j
SNAT --to-source 10.151.76.65
iptables -t nat -A POSTROUTING -s 10.10.0.0/20 -o eth0 -j
MASQUERADE
10.
iptables -N LOGGING
iptables -A INPUT -j LOGGING
iptables -A OUTPUT -j LOGGING
iptables -A LOGGING -m limit --limit 2/min -j LOG
--log-prefix "IPTables-Dropped: " --log-level 4
iptables -A LOGGING -j DROP