2. Pengertian Firewall
2
Firewall adalah sebuah software atau hardware atau kombinasi
keduanya maupun sistem itu sendiri untuk mencegah akses yang tidak
k d
i t
it
di i t k
h k
tid k
berhak ke suatu jaringan sehingga ada suatu mekanisme yang
bertujuan untuk melindungi, baik dengan menyaring, membatasi atau
bahkan menolak suatu hubungan/kegiatan (dari luar kedalam atau dari
g
g
(
dalam ke luar) suatu segmen pada jaringan pribadi dengan jaringan luar
yang bukan merupakan ruang lingkupnya berdasarkan aturan-aturan
yang ditetapkan.
Segmen tersebut dapat merupakan sebuah jaringan workstation
workstation,
server,router, atau local area network (LAN) maupun wireless.
3. Konsep Firewall
3
ï‚— Tujuan untuk melindungi, dengan :
Menyaring
M
i
hubungan /kegiatan suatu segmen pada
jaringan pribadi dengan jaringan luar yang
ï‚¡ membatasi
bukan merupakan ruang lingkupnya
ï‚¡ menolak
ï‚— S
Segmen tersebut d
t
b t dapat merupakan sebuah workstation, server, router, atau
t
k
b h
k t ti
t
t
local area network (LAN) anda
ï‚¡
4. Konfigurasi Sederhana
4
p (jaringan local) <==> firewall <==> internet (j
pc (j
g
)
(jaringan lain)
g
)
Boleh lewat mbak ?
Nih surat-suratnya
Anak kecil ga boleh
keluar.. sudah malam
Firewall
5. Karakteristik Firewall
5
ï‚— Seluruh hubungan/kegiatan dari dalam ke luar , harus
melewati firewall
firewall.
ï‚¡
Hal ini dapat dilakukan dengan cara memblok/membatasi baik
secara fisik semua akses terhadap jaringan Lokal, kecuali melewati
y
jaringan y g memungkinkan.
g yang
g
firewall. Banyak sekali bentuk j
ï‚— Hanya Kegiatan yang terdaftar/dikenal yang dapat
melewati/melakukan hubungan,
ï‚¡
hal ini dapat dilakukan dengan mengatur policy pada konfigurasi
keamanan lokal. Banyak sekali jenis firewall yang dapat dipilih
k
l k l
k k li j i fi
ll
d
di ilih
sekaligus berbagai jenis policy yang ditawarkan.
ï‚— Firewall itu sendiri haruslah kebal atau relatif kuat
terhadap serangan/kelemahan
serangan/kelemahan.
ï‚¡
hal ini berarti penggunaan sistem yang dapat dipercaya dan dengan
Operating system yang relatif aman.
6. Teknik Yang Digunakan
6
ï‚— Service control (kendali terhadap layanan)
ï‚¡
berdasarkan tipe-tipe layanan yang digunakan di Internet dan boleh diakses
tipe tipe
baik untuk kedalam ataupun keluar firewall. Biasanya firewall akan mencek no
IP Address dan juga nomor port yang di gunakan baik pada protokol TCP dan
UDP, bahkan bisa dilengkapi software untuk proxy yang akan menerima dan
menterjemahkan setiap permintaan akan suatu layanan sebelum
mengijinkannya. Bahkan bisa jadi software pada server it sendiri , seperti
iji k
B hk bi j di
ft
d
itu
di i
ti
layanan untuk web ataupun untuk mail.
ï‚— Direction Control (kendali terhadap arah)
ï‚¡
berdasarkan arah dari berbagai permintaan (request) terhadap layanan yang
akan dikenali dan diijinkan melewati firewall.
k dik
li d diiji k
l
i fi
ll
ï‚— User control (kendali terhadap pengguna)
ï‚¡
berdasarkan pengguna/user untuk dapat menjalankan suatu layanan, artinya
ada user yang dapat dan ada y g tidak dapat menjalankan suatu servis,hal ini
y g p
yang
p
j
,
di karenakan user tersebut tidak di ijinkan untuk melewati firewall. Biasanya
digunakan untuk membatasi user dari jaringan lokal untuk mengakses keluar,
tetapi bisa juga diterapkan untuk membatasi terhadap pengguna dari luar.
ï‚— Behavior Control (kendali terhadap p
p perlakuan)
ï‚¡
berdasarkan seberapa banyak layanan itu telah digunakan. Misal, firewall dapat
memfilter email untuk menanggulangi/mencegah spam.
9. I. Rules Based Firewall
9
ï‚— Rule Firewall dibuat agar sesuai dengan aturan
yang telah dibuat.
ï‚— Rule berdasarkan pada:
ï‚¡
Routing b d fil
R i based filters (Wh – siapa)
(Who
i
)
Pengirim dan penerima
 berasal dari mana ?
 Mau ke mana ?
 Tidak peduli mau ngapain di sana

ï‚¡
Content based filters (What – mau apa)
(
p )
No port TCP/IP dan layanan
 Apa yang akan kamu lakukan di sana ?
 Tidak semudah yang nomer 1, sebab kadang-kadang bisa ditipu
kadang kadang
seorang client

10. Dua pendekatan aturan
10
ï‚— Default allow
Mengijinkan semua lewat kecuali yang terdaftar
ï‚— Default deny
ï‚¡ Semua dilarang lewat kecuali yang terdaftar
ï‚¡
11. II. Packet Filtering
11
ï‚— Packet Filtering diaplikasikan dengan cara mengatur semua
packet IP baik yang menuju, melewati atau akan dituju oleh
menuju
packet tersebut.
ï‚— pada tipe ini packet tersebut akan diatur apakah akan di
terima dan diteruskan , atau di tolak
tolak.
ï‚— penyaringan packet ini di konfigurasikan untuk menyaring
packet yang akan di transfer secara dua arah (baik dari
atau ke jaringan lokal)
lokal).
ï‚— Biasa dikenal sebagai packet inspection
ï‚¡
Menginspeksi header IP, TCP, UDP, ICMP dan no port
12. PACKET FILTERING
12
Contohnya: packet bertujuan ke server kita menggunakan IP 202.159.121.38 dengan port 80
(
(atribut y g dimiliki p
yang
paket tsb)
)
An abbreviated packet…
Source
SrcPort Destination DestPort
204.210.251.1 8104
128.146.2.205
31337
A Cisco packet filter
access-list 2640 deny any 128.146.2.0 0.0.0.255 gt 1023
13. Packet Filtering Example
13
1. If source IP address = 10.*.*.*, DENY [private IP address range]
2.
2 If source IP address = 172 16 * * to 172 31 * * DENY [private IP
172.16.*.* 172.31.*.*,
address range]
3. If source IP address = 192.168.*.*, DENY [private IP address range]
4
4. If source IP address = 60.40.*.*, DENY [firm’s internal address range]
4
,
[f
g ]
5. If source IP address = 1.2.3.4, DENY [black-holed address of attacker]
6. If TCP SYN=1 AND FIN=1, DENY [crafted attack packet]
,
[ f
p
]
7. If destination IP address = 60.47.3.9 AND TCP destination port=80 OR
443, PASS [connection to a public webserver]
8. If ICMP Type = 0, PASS [allow incoming echo reply messages]
9. If TCP destination port = 20, DENY [FTP data connection]
10. If TCP destination port = 21, DENY [FTP supervisory control
connection]
14. Packet Filtering Example
14
11. If TCP destination port = 23, DENY [Telnet data connection]
12.
12 If TCP destination port = 135 through 139 DENY [NetBIOS
139,
connection for clients]
13. If TCP destination port = 513, DENY [UNIX rlogin without
password]
14. If TCP destination port = 514, DENY [UNIX rsh launch shell without
login]
15. If TCP destination port = 22, DENY [SSH for secure login, but some
versions are insecure]
16. If UDP destination port=69, DENY [Trivial File Transfer Protocol;
no login necessary]
17. If TCP SYN=1 AND ACK=0, DENY [attempt to open a connection
from the outside]
f
th
t id ]
18. If TCP RST=1, DENY [do not allow outgoing resets; used in host
scanning]
DENY ALL
15. Packet Filtering Example
15
ï‚— DENY ALL
ï‚¡
Rule yang terakhir
ï‚¡
Men-drop semua p
p
paket y g tidak diijinkan oleh rule
yang
j
sebelumnya
ï‚¡
Dalam ACL sebelumnya, rule 9-18 tidak diperlukan karena
Deny All akan membloknya.
D
k
bl k
16. Packet Filtering
16
ï‚— Kelebihan dari tipe ini adalah mudah untuk di
implementasikan, transparan untuk pemakai,
lebih cepat
ï‚— Kelemahannya :
Cukup rumitnya untuk menyetting paket yang akan
difilter secara tepat, serta lemah dalam hal authentikasi
ï‚¡ M d h terjadi miskonfigurasi
Mudah j di i k fi
i
ï‚¡ Sukar melakukan konfigurasi terhadap protokol yang
dinamis
ï‚¡ Tidak dapat menangani content-based filtering (remove
e-mail attachments, javascript, ActiveX)
ï‚¡
17. Packet Filtering
17
ï‚— Serangan y g mungkin terjadi
g yang
g
j
ï‚¡ IP address spoofing :

ï‚¡
Source routing attacks :

ï‚¡
intruder (penyusup) dari luar dapat melakukan ini dengan cara
menyertakan/menggunakan ip address jaringan lokal yang telah
diijinkan untuk melalui firewall
firewall.
tipe ini tidak menganalisa informasi routing sumber IP, sehingga
memungkinkan untuk membypass firewall.
Tiny F
Ti Fragment attacks :
k

intruder (penyusup) membagi IP kedalam bagian-bagian (fragment) yang
lebih kecil dan memaksa terbaginya informasi mengenai TCP header.
Serangan jenis ini di design untuk menipu aturan penyaringan yang
bergantung k
b
t
kepada i f
d informasi d i TCP h d P
i dari
header. Penyerang b h
berharap
hanya bagian (fragment) pertama saja yang akan di periksa dan sisanya
akan bisa lewat dengan bebas. Hal ini dapat di tanggulangi dengan cara
menolak semua packet dengan protokol TCP dan memiliki Offset = 1
pada IP fragment (bagian IP)
18. III.Aplication Level Gateway (
p
y (Proxy Firewall)
y
)
18
Mekanismenya tidak hanya berdasarkan
y
y
sumber, tujuan dan atribut paket, tetapi juga
bisa mencapai isi paket tersebut
19. Application Level
19
ï‚— Application-level Gateway yang biasa juga di kenal sebagai proxy
server yang berfungsi untuk memperkuat/menyalurkan arus aplikasi
aplikasi.
Tipe ini akan mengatur semua hubungan yang menggunakan layer
aplikasi ,baik itu FTP, HTTP, GOPHER dll.
ï‚— Cara kerjanya adalah apabila ada pengguna yang menggunakan salah
satu aplikasi semisal FTP untuk mengakses secara remote maka
remote,
gateway akan meminta user memasukkan alamat remote host yang
akan di akses. Saat pengguna mengirimkan User ID serta informasi
lainnya yang sesuai maka gateway akan melakukan hubungan
terhadap aplikasi tersebut yang terdapat pada remote host dan
host,
menyalurkan data diantara kedua titik. Apabila data tersebut tidak
sesuai maka firewall tidak akan meneruskan data tersebut atau
menolaknya. Lebih jauh lagi, pada tipe ini Firewall dapat di
konfigurasikan untuk hanya mendukung beberapa aplikasi saja dan
menolak aplikasi lainnya untuk melewati firewall.
ï‚— Biasa dikenal Application Inspection
21. Iptables
21
ï‚— netfilter/iptables terdiri dari 3 tabel: filter, nat, mangle
ï‚— Perintah 'iptables' digunakan untuk mengelola,
memaintain, menginspeksi rule-rule IP packet filter
dalam kernel linu
linux.
ï‚— Rule di chain :
1. ACCEPT
Menerima paket dan diproses lebih lanjut oleh kernel.
2. DROP
Menolak paket tanpa pemberitahuan sama sekali.
l k k
b
h
k l
3. REJECT
Mengembalikan paket ke asalnya dengan pesan
kesalahan ICMP.
22. Tabel pada IPTABLES
filter:
Tabel default yang digunakan oleh iptables. Terdapat 3
chain : INPUT, FORWARD, OUTPUT
mangle:
Digunakan untuk merubah paket atau untuk keperluan Q
g
p
p
QoS
(Quality of Service), yaitu:
1. TOS (Type of Service), bagaimana paket diroutekan
2. TTL (Time to Live)
3. MARK, seperti bandwidth limiting, class based queuing
23. Tabel pada IPTABLES
nat:
Fungsi utama dari NAT adalah untuk melakukan translasi alamat dari
satu alamat ke alamat IP yang lain, biasanya dipakai pada internet
gateway (POSTROUTING). Selain melakukan translasi alamat IP
(POSTROUTING)
IP,
iptables juga bisa melakukan NAT alamat Port aplikasi, bisa disebut juga
dengan Port Address Translation (PAT). PAT digunakan untuk
membangun beberapa server seperti mail, web, database maupun
mail web
datacenter yang diakses melalui internet hanya dengan satu alamat IP
publik (PREROUTING).
24. iptables
24
ï‚— Terdapat 3 kumpulan aturan y g disebut chain,
p
p
yang
,
yaitu :
1. INPUT
Paket-paket yang diarahkan ke mesin firewall
2. FORWARD
Paket-paket yang diteruskan melewati firewall
3. OUTPUT
Paket-paket yang menuju jaringan eksternal dan
meninggalkan firewall
28. Contoh iptables
28
ï‚— Untuk menambah daftar
#iptables –t filter -A FORWARD -s 192.168.56.100/32
-j DROP
#iptables -A FORWARD -s 192 168 56 100/32 -j DROP
A
s 192.168.56.100/32 j
ï‚— Untuk melihat daftar
#iptables -nL
ï‚— Untuk menghapus daftar
#iptables -D FORWARD -s 192.168.56.100/32 -j DROP
ï‚— Untuk menghapus semua daftar
#iptables -F
ï‚— Untuk menyimpan iptables
#iptables-save
29. Contoh iptables
29
ï‚— Untuk mendrop service ssh
#iptables -A FORWARD -p tcp --dport 22 -j DROP
ï‚— Untuk mendrop icmp (ping) -> semuanya
#iptables -A FORWARD -p icmp -j DROP
ï‚— Drop icmp dari jaringan 192.168.56.0
#iptables -A FORWARD -s 192.168.56.0/24 -p icmp -j DROP
ï‚— Drop semuanya kecuali dari IP tertentu
#iptables -A FORWARD -s ! 192.168.56.100 -p icmp -j DROP
ï‚— Drop ke port 80 (http)
#iptables -A FORWARD -p tcp --dport 80 -j DROP
30. Penggunaan IPTABLES
30
1. Membatasi akses port aplikasi P2P (Limewire, GnuTella & Bearshare)
# iptables -A FORWARD -p tcp --dport 6340:6350 -j REJECT
p
p
p
p
j
# iptables -A FORWARD –p udp --dport 6340:6350 -j REJECT
-p tcp (koneksi menggunakan protokol TCP)
p
-p udp (koneksi menggunakan protokol UDP)
-dport 6340:6350 (melarang akses port 6340 sampai dengan 6350)
2. Membatasi koneksi satu alamat IP
# iptables -A FORWARD -s 192.168.1.99 -d 0/0 -j REJECT
A
s
d
j
-d 0/0 berarti ke semua tujuan
3. Membatasi koneksi berdasarkan range IP
# iptables -A FORWARD -m iprange --src-range 192.168.1.100
A
m
src range 192.168.1.100192.168.1.150 -d 0/0 -j REJECT
4. Membatasi koneksi internet berdasarkan MAC Address
p
# iptables -A FORWARD -m mac --mac-source 00:30:18:AC:14:41
-d 0/0 -j REJECT