Server menjalankan layanan web, FTP, dan DNS. Aturan iptables dibuat untuk membatasi akses masuk dan keluar paket, seperti mengijinkan paket terkait koneksi yang ada, membuka port 80 untuk layanan web, dan memblokir scanning TCP. Aturan juga mencatat dan memblokir semua paket masuk.
1. Anda mempunyai sebuah server yang menjalankan 3 layanan jaringan : Web, FTP dan DNS. Kemudian
utuk memperkuat keamanannya anda perlu menerapkan pembatasan paket yang masuk dan keluar
dari server anda. Buatlah aturan iptablesnya dengan kebijakan sebagai berikut :
1) Mengijinkan paket masuk yang sudah terbentuk dari koneksi sebelumnya
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j
ACCEPT
Opsi Penjelasan
-A INPUT -i eth0 Berlaku terhadap paket network yang
akan MASUK melalui interface eth0 ke
sistem kita.
-m state --state
ESTABLISHED,RELATED -j ACCEPT
Belaku untuk koneksi yang memiliki
state/ keadaan ESTABLISHED (paket
yang telah terasosiasi dengan suatu
koneksi) atau RELATED (paket yang
menginisialisasi koneksi baru namun
sebelumnya paket tersebut telah
terasosiasi dengan koneksi lama).
2) Mengijinkan seluruh paket keluar dari server
iptables -A OUTPUT -o eth0 -m state --state NEW,ESTABLISHED,RELATED -j
ACCEPT
Opsi Penjelasan
-A OUTPUT -o eth0 Berlaku terhadap paket network yang
akan KELUAR melalui interface eth0 ke
sistem kita.
-m state --state NEW,
ESTABLISHED,RELATED -j ACCEPT
Belaku untuk koneksi yang memiliki
state/ keadaan NEW(paket yang memulai
koneksi baru), ESTABLISHED (paket
yang telah terasosiasi dengan suatu
Yasin Abdullah - 2110165004
Ujian Akhir Semester Ganjil D3 & D4
Tahun Akademik 2016/2017
Program Studi Teknik Informatika
Departemen Teknik Informatika & Komputer
POLITEKNIK ELEKTRONIKA NEGERI SURABAYA
Kampus ITS Sukolilo, Surabaya 60111
Mata Kuliah : Praktikum Keamanan
Jaringan
Dosen : Ferry Astika Saputra
2. koneksi) atau RELATED (paket yang
menginisialisasi koneksi baru namun
sebelumnya paket tersebut telah
terasosiasi dengan koneksi lama).
3) Hanya mengijinkan masuknya paket ping request (ICMP echo request/ ICMP type 8)
iptables -A INPUT -p icmp --icmp-type 8 -m state --state
NEW,ESTABLISHED,RELATED -j ACCEPT
Opsi Penjelasan
-A INPUT -p icmp --icmp-type 8 Berlaku terhadap paket network yang
akan MASUK dengan jenis protokol
ICMP tipe 8 (echo request).
-m state --state
NEW,ESTABLISHED,RELATED -j ACCEPT
Belaku untuk koneksi yang memiliki
state/ keadaan NEW(paket yang memulai
koneksi baru), ESTABLISHED (paket
yang telah terasosiasi dengan suatu
koneksi) atau RELATED (paket yang
menginisialisasi koneksi baru namun
sebelumnya paket tersebut telah
terasosiasi dengan koneksi lama).
4) Hanya mengijinkan keluarnya paket ping request (ICMP echo reply/ ICMP type 0)
iptables -A OUTPUT -p icmp --icmp-type 0 -m state --state
ESTABLISHED,RELATED -j ACCEPT
Opsi Penjelasan
-A OUTPUT -p icmp --icmp-type 0 Berlaku terhadap paket network yang
akan KELUAR dengan jenis protokol
ICMP tipe 0 (echo reply).
-m state –state
ESTABLISHED,RELATED -j ACCEPT
Belaku untuk koneksi yang memiliki
state/ keadaan ESTABLISHED (paket
yang telah terasosiasi dengan suatu
koneksi) atau RELATED (paket yang
menginisialisasi koneksi baru namun
sebelumnya paket tersebut telah
terasosiasi dengan koneksi lama).
5) Membuka port layanan web
iptables -A INPUT -p tcp --destination-port 80 -j ACCEPT
3. Opsi Penjelasan
-A INPUT -p tcp --destination-
port 80
Berlaku terhadap paket network yang
akan MASUK dengan jenis protokol tcp
melalui port 80 (yang digunakan oleh web
server).
-j ACCEPT Belaku untuk keseruluhan state.
6) Melakukan blocking terhadap scanning dengan TCP flag :
a. SYN
b. FIN
c. URG
d. PSH
iptables -A INPUT -i eth0 --protocol tcp --tcp-flags SYN,FIN,URG,PSH
SYN,FIN,URG,PSH -j DROP
Opsi Penjelasan
-A INPUT -i eth0 Berlaku terhadap paket network yang
akan MASUK melalui interface eth0 ke
sistem kita.
--protocol tcp --tcp-flags
SYN,FIN,URG,PSH SYN,FIN,URG,PSH -
j DROP
Blocking berlaku untuk paket yang
mengandung tcp flas sbb: SYN,FIN,URG
dan PSH.
7) Melakukan pencatatan seluruh packet yang masuk
iptables -A INPUT -j NFLOG
tcpdump -i nflog
Penjelasan : kita dapat melakukan pencatatan seluruh paket yang masuk dengan
menggunakan tcpdump, dengan ini kita dapat melihat langsung melalui layar terminal.
8) Melakukan blocking seluruh packet
iptables -A INPUT -i eth0 -j DROP
Opsi Penjelasan
-A INPUT -i eth0 Berlaku terhadap paket network yang
akan MASUK melalui interface eth0.
-j DROP Blocking untuk keseruluhan state.
4. Percobaan
1. Melakukan instalasi paket.
2. Melihat kondisi sebelum diterapkannya firewall.
Terlihat bahwa secara default banyak layanan/ port yang terbuka, seperti yang
ditunjukkan pada gambar diatas.
5. 3. Melihat penerapan firewall yang dilakukan.
Detail konfigurasi
Hasil scanning
Pengujian ICMP type 8 dan 0 (PING)
Pengujian paket yang keluar dari server
6. Pengujian dengan tcp dump
Hasil menunjukkan bahwa dilakukan percobaan melalui host windows.
1. Pada soal nomor satu saya melakukan remote ssh ke server, kemudian setelah rules
diterapkan, koneksi masih tetap terjalin. Hal ini mengindikasikan bahwa koneksi
yang sudah terjalin (sebelum rules diterapkan) tidak di block oleh firewall.
2. Proses ping (ICMP echo request dan reply) berhasil terjalin antara kedua belah pihak
(host).
3. Kemudian berdasarkan pengujian firewall dengan menggunakan aplikasi nmap,
server hanya mengijinkan port 80 (terbuka) untuk mengakses layanan http.
4. Setelah itu saya melakukan pengujian keluarnya paket dengan aplikasi links dari
server, dan hasilnya adalah server dapat terhubung ke google.com.
Berdasarkan percobaan, saya dapat menyimpulkan bahwa pada firewall yang dilakukan
pengaturan atau ketentuan blocking sesuai dengan apa yang diharapkan diatas.