Firewall


halo semua, kali ini saya akan membagikan artikel menarik tentang Firewall, wihh.. cekidot..

1. Pengenalan firewall

Firewall adalah sebuah aplikasi yang dapat memberikan otorisasi pada lalu lintas jaringan (packet data) yang dianggapnya aman melaluinya dan melakukan pencegahan terhadap lalu lintas jaringan (packet data) yang dianggap tidak aman melaluinya. 

Fungsi utama firewall adalah :
a. Mengatur dan mengontrol lalu lintas jaringan, dengan melakukan pemeriksaan (inspection) setiap packet data yang melaluinya sehingga dapat memutuskan packet-packet mana saja yang diizinkan untuk lewat dan tidak sesuai dengan aturan yang telah ditetapkan oleh administrator.

b. Melakukan autentikasi terhadap akses jaringan, untuk mengetahui dengan pasti siapa yang melakukan akses jaringan, beberapa metode autentikasi firewall diantaranya :

  • Extended Authentication (xauth). Dengan metode ini ketika pengguana melakukan akses jaringan maka firewall akan meminta untuk memasukkan nama pengguna (username) dan kata kunci (password) sebelum akhirnya diizinkan oleh firewall. Izin ini berlaku sampai koneksi terputus dan akan meminta autentikasi ulang ketika kembali melakukan akses jaringan.
  • Menggunakan sertifikat digital dan kunci publik. Keunggulan metode ini adalah proses autentikasi dapat terjadi tanpa campur tangan pengguna (user) dan prosesnya lebih cepat. Meskipun dalam implementasinya lebih rumit.
  • Menggunakan Pre-Shared Key (PSK) atau kunci yang telah diberitahukan kepada pengguna. Metode ini lebih mudah diterapkan karena lebih sederhana, dimana setiap host / user diberikan sebuah kunci yang telah ditentukan sebelumnya untuk proses autentikasi. Tetapi PSK juga mendukung proses autentikasi dapat terjadi tanpa campur tangan pengguna (user).      

c. Melindungi sumber daya dalam jaringan privat. Perlindungan ini didapat dengan menggunakan beberapa pengaturan seperti Akses Kontrol, Menggunakan SPI (Stateful Packet Inspection) yang merupakan penggabungan dari packet inspection dan stateful inspection, Aplication Proxy dll. 
Meskipun demikian firwall bukanlah dapat melindungi semuanya, terutama jika celah keamanan terletak pada sistem operasi yang menjalankan aplikasi server yang telah diizinkan oleh firwall, karena firewall tidak dapat membedakan packet data yang baik dan yang jahat (bertujuan mengeksploitasi kelemahan tersebut) karena sama-sama mengguanakn packet data yang telah diizinkan oleh firewall. 

d. Mencatat semua kejadian dan melaporkannya pada administrator. Dengan fungsi ini seorang administrator dapat memeriksa lalu lintas jaringan secara berkala dengan membuka file log dari firewall. Karena firewall akan mencatata semua lalu lintas yang terjadi baik yang diizinkan maupun tidak. Dalam perkembangannya firewall mampu secara langsung memberikan alarm atau mengirim email kepada administrator jika terjadi hal-hal yang tidak diinginkan.

2. Jenis-jenis firewall

a. Berdasarkan bentuk fisiknya
Firewall Aplikas, Yaitu berupa aplikasi firewall yang dipasang pada sistem komputer, baik terintegrasi dengan sistem operasi tersebut, atapun berupa program tambahan.
Firewall Dedicated, Yaitu hardware yang dibuat secara khsusus untuk menjalankan aplikasi firewall.

b. Berdasarkan letak pemasangannya
Personal Firewall, Yaitu firewall yang didesain untuk melindungi sebuah komputer dari akses jaringan yang tidak dikehendaki dan biasanya dipasang pada masing-masing komputer tersebut. Pada saat ini aplikasi ini berkembang sehingga dapat memberikan perlindungan pada komputer secara keseluruhan dengan beberapa fitur tambahan seperti anti virus, anti spam, anti spyware bahkan dilengkapi dengan fungsi IDS (Intrusion Detection System). 
Contoh firewall jenis ini adalah Microsoft Windows Firewall, Norton Personal Firewall, dll.  

Network Firewall, Yaitu firewall yang didesain untuk melindungi sebuah network/jaringan secara keseluruhan dari berbagai serangan. Biasanya jenis ini berupa firewall dedicatet (hardware) ataupun firewall aplikasi (software) yang dipasang pada server / gateway yang penghubung antara network lokal dan network public.  Contoh firewall jenis ini adalah Microsoft Internet Security and Acceleration Server (ISA Server) dalam sistem operasi  Windows server, Cisco PIX, Cisco ASA, iptables dalam sistem operasi GNU/Linux, SunScreen dalam sistem operasi Sun Solaris.  

C. Berdasarkan cara kerjanya


Packet Filter Firewall, Firewall jenis ini melakukan filterisasi packet berdasarkan opsi-opsi / aturan-aturan yang sudah ditetapkan terhadap packet tersebut dan membuat keputusan terhadap packet tersebut (diizinkan/ditolak). 

Terdapat 2 tipe dalam penetapan aturan-aturan atau opsi terhadap packet yaitu :
Static filtering, jika modifikasi aturan-aturan terhadap packet harus dilakukan secara manual oleh administrator. 
Dynamic filtering, apabila aturan-aturan terhadap packet dapat berubah jika terjadi proses-proses tertentu.

Gambar 1 Cara Kerja Packet Filter Firewall

Firewall jenis ini beropasi pada layer network pada model referensi OSI 7 Layer karenanya proses inspection packet dapat didasarkan pada :
- Alamat Asal dan Tujuan, 

Alamat asal dan tujuan dapat berupa IP Address ataupun alamat domain, tergantung dari kemampuan jenis firewall yang digunakan.
- Jenis Protokol, Yaitu  protokol yang bekerja pada  layer network (layer ke 3 dalam model referensi OSI 7 Layer), seperti TCP, UDP dan ICMP dll.
- No Port Tujuan dan Asal. Port dalam hal ini dapat diibaratkan pintu rumah yang harus dibuka jika penghuninya ingin keluar atau ada pengunjung yang ingin masuk. Dengan no port inilah sistem mengetahui layanan apa yang dikehendaki dari sebuah packet.
- Keadaan koneksi, Yaitu keadaan koneksi packet data tersebut seperti jika packet tersebut merupakan koneksi baru (new) masuk ke komputer tersebut, (request). Atau koneksi packet data tersebut merupakan respon / jawaban yang sudah ditunggu (established) oleh komputer tersebut. Dalam firewall kondisi ini disebut state, sehingga proses ini disebut stateful inspection. 

• Circuit Level Gateways / Circuit Level Firewall. Firwall jenis ini pada umumnya berupa komponen dalam proxy server dan bekerja pada layer session pada model referensi OSI 7 layer. 

Gambar 2 Cara Kerja Circuit Level Firewall

Firewall jenis ini mampu menyembunyikan informasi mengenai jaringan yang dilindungi. Firewall ini dinilai lebih aman karena pengguna eksternal tidak dapat melihat alamat IP jaringan internal dalam packet-packet yang ia terima, melainkan alamat IP dari firewall.

• Aplication Level Gateways / Aplication Level Firewall. Sering disebut juga proxy firewall yang pada umumnya juga merupakan kompoenen dari proxy server. Firewall jenis ini bekerja pada layer aplikasi pada model referensi OSI 7 layer.
Gambar 3 Cara Kerja Aplication Level Firewall

Firewall ini tidak mengizinkan packet yang datang melewati firewall secara langsung, melainkan aplikasi firewall yang akan meneruskan packet tersebut kepada layanan yang dikehendaki.

• Hybrid Firewalls / Stateful firewall. Adalah firewall yang menggabungkan keunggulan yang dimiliki oleh Packet Filtering Firewall, Nat Firewall, Circuit Level Firewall dan Aplication Level Firewall dalam satu system sehingga dapat melakukan filterisasi packet secara maksimal.
Gambar 4 Cara Kerja Hybrid Firewall

3. Port dalam komputer

Port dalam komputer dibedakan menjadi 2 yaitu port fisik dan port logikal, port fisik ialah port yang digunakan untuk menghubungkan komputer dengan peralatan / device lain, seperti USB, Serial, COM1, LPT, RJ45 dll, sedangkan port logikal adalah port yang digunakan dalam jaringan komputer untuk menghubungkan komputer dengan komputer lainnya. 

Karena logikal maka port ini hanya dapat dilihat secara software. Port ini bisa diibaratkan sebuah pintu dalam rumah, Anda harus membuka pintu jika ingin keluar rumah menuju rumah lainnya, ataupun anda harus membukakan pintu ketika ada kunjungan dari rumah lain. Melalui pintu inilah kita dapat keluar rumah dan melalui pintu ini pula pencuri dapat masuk dalam rumah kita. Artinya ketika kita menutup semua pintu rumah maka pencuri memang tidak bisa masuk, tetapi kita juga tidak bisa keluar ke mana-mana. Hal ini sama dengan dalam jaringan komputer, sehingga tidak mungkin tidak membuka sebuah port ketika akan melakukan komunikasi dengan komputer lain.

Port dapat dikenali dengan angka 16-bit (dua byte) yang disebut dengan Port Number dan diklasifikasikan dengan jenis protokol transport apa yang digunakan yaitu dalam Port TCP dan Port UDP. Karena memiliki angka 16-bit, maka total maksimum jumlah port untuk setiap protokol transport yang digunakan adalah 65536 buah (0-65535).
Penggunaan port ini baik TCP maupun UDP diatur agar tidak terjadi benturan antar aplikasi, karena semua aplikasi jaringan membutuhkan port untuk menjalankan fungsinya, dan dibagi menjadi 3 jenis

a. Well-known Port : yaitu port yang berkisar antara 0 hingga 1023. Port number yang termasuk ke dalam well-known port, selalu merepresentasikan layanan jaringan yang sama, dan ditetapkan oleh Internet Assigned Number Authority (IANA). Beberapa di antara port-port yang berada di dalam range Well-Known Port masih belum ditetapkan dan direservasikan untuk digunakan oleh layanan yang bakal ada pada masa depan. Well-known port didefinisikan dalam RFC 1060.

b. Registered Port : Port-port yang digunakan oleh vendor-vendor komputer atau jaringan yang berbeda untuk mendukung aplikasi dan sistem operasi yang mereka buat. Registered port juga diketahui dan didaftarkan oleh IANA tapi tidak dialokasikan secara permanen, sehingga vendor lainnya dapat menggunakan port number yang sama. Range registered port berkisar dari 1024 hingga 49151 dan beberapa port di antaranya adalah Dynamically Assigned Port.

c. Dynamically Assigned Port : merupakan port-port yang ditetapkan oleh sistem operasi atau aplikasi yang digunakan untuk melayani request dari pengguna sesuai dengan kebutuhan. Dynamically Assigned Port berkisar dari 1024 hingga 65536 dan dapat digunakan atau dilepaskan sesuai kebutuhan.

Berikut beberapa well known port yang telah ditetapkan penggunaannya oleh IANA. 
Sebagai contoh komunikasi 2 komputer (klien dan server) adalah kita browsing ke situs sekolah.sch.id maka komputer klien akan membuka port diatas 1024 yang ditentukan secara acak oleh sistem misalkan 1135 dan membuka port 80 pada server sekolah.sch.id. 

Dalam hal ini terdapat 2 port yang terbuka yaitu port di komputer klien dan port di komputer server. Hal ini dapat dilogikakan dengan ketika kita akan membeli baju toko maka kita harus membuka pintu rumah agar kita dapat berjalan menuju pintu toko. Dan toko baju kita tuju juga harus membuka pintunya agar kita dapat masuk dan membeli baju kemudian keluar menuju rumah kembali. Klien boleh membuka pintu berapa saja, tetapi setiap toko baju harus membuka pintu 80. 

Jika ada toko baju yang tidak membuka pintu 80 maka tidak akan bisa dikenali oleh klien. Karena memang begitulah aturannya dalam jaringan komputer.  

Packet data dari klien maupun server sebelum dikirimkan selalu melalui proses encapsulasi data, pada proses inilah data diberi tambahan-tambahan informasi berupa IP Address Asal, IP Address Tujuan, Protokol, Port Asal, Port Tujuan dll. 

Seperti pada gambar ketika klien dengan IP Address 192.168.100.5 melakukan komunikasi kepada server dengan IP Address 192.168.100.1 menggunakan layanan web server, maka packet data yang dikirim (No.1) dari klien ke server dapat digambarkan sebagai berikut :


Gambar 6 Packet data request

Kemudian server yang menerima data permintaan (request) dari klien akan memberikan jawaban (respon) sesuai dengan permintaan klien dan membuat packet data yang akan dikirim kepada klien, paket data jawaban (No.2) tersebut dapat digambarkan sebagai berikut :

Gambar 7 Packet data respon

Perhatikan informasi tambahan yang disertakan dalam proses encapsulasi data baik pada klien maupun pada server, dengan melihat informasi tambahan yang disertakan maka klien dapat mengetahui bahwa packet yang diterimanya benar-benar berasal dari server yang diharapkan.


4. Perjalanan packet data dalam firewall

Dalam firewall terdapat 3 tables utama yang di dalam masing-masing tabel memiliki beberapa chain / kolom sebagai tempat dilakukannya proses inspection packet (pemeriksann packet) dan pengambilan keputusan terhadap packet tersebut sesuai dengan aturan yang ditetapkan oleh administrator. Masing-masing tabel memiliki chain sebagai berikut : 

a. Tabel mangle memiliki 4 chain / kolom yaitu pre-routing, forward, input, output dan post-routing.
b. Tabel nat memiliki 3 chain / kolom yaitu pre-routing, output dan post-routing.
c. Tabel filter memiliki 3 chain / kolom yaitu input, forward dan output.

Gambar 8 Perjalanan packet firewall

Setiap packet data yang masuk / keluar dari suatu host / komputer harus melalui jalur sesuai gambar diatas. Yang mana setiap packet data akan melewati chain-chain dari firewall sebagai sebagai tempat dilaksanakannya proses inspection packet (pemeriksaan packet) dan pengambilan keputusan terhadap packet tersebut sesuai dengan aturan yang ditetapkan administrator.

a. Tampak pada gambar paket data masuk melalui interface kemudian akan berjalan melewati jalur dan melewati beberapa pos pemeriksaan (tabel dan kolom pada firewall). Pada pos-pos inilah firewall melakukan packet inspection (pemerikasaan paket) terhadap packet-packet data yang lewat sesuai dengan aturan yang telah ditetapkan, kemudian akan membuat keputusan terhadap paket tersebut.

b. Secara berturut-turut packet data akan melewati pemeriksaan pada tabel mangle prerouting dan nat preprouting sesuai dengan aturan yang ditetapkan pada tabel tersebut.

c. Kemudian packet data akan mengalami proses routing yang mana packet data akan dilihat berdasarkan tujuannya :
• Jika tujuan packet data adalah bukan untuk komputer itu sendiri maka packet data akan diarahkan menuju tabel mangle forward dan seterusnya.
• Jika tujuan packet data adalah untuk komputer itu sendiri, maka packet data akan diarahkan menuju tabel mangle input dan seterusnya.

d. Proses pengambilan keputusan apakah paket diizinkan atau tidak terjadi pada tabel filter baik input, forward, maupun output, dengan pilihan :

• Accept, packet data diterima (diizinkan lewat/masuk)
• Drop, packet data ditolak dan dihancurkan
• Reject, packet data ditolak dan dihancurkan tetapi sistem mengirimkan pemberitahuan kepada pengirim packet bahwa packet ditolak.

e. Pada tabel mangle (pre-routing, input, forward, output, post-routing), keputusan yang dapat diambil bisanya berupa penghalusan (mangle) paket, seperti TTL (Time To Live), TOS (Type Of Service), dan MARK (Penandaan Packet).
f. Pada tabel nat (pre-routing, output, post routing) keputusan yang dapat diambil biasanya berkaitan dengan network address translation berupa :
• Source nat, merubah alamat asal
• Destination nat, merubah alamat tujuan
• Masquerade, menyembunyikan alamat asal
• Redirect, mengalihkan port packet data, dll

Dalam melakukan packet inspection pada masing-masing chain terdapat 2 metode yang digunakan yaitu :  

a. Black list. Yaitu dengan membuat daftar (list) terhadap packet-packet yang tidak diizinkan melewati firewall. Pada metode ini selain packet data yang berada pada daftar black list akan diizinkan untuk melewati firewall. 

b. White list. Metode ini merupakan kebalikan dari metode black list yaitu dengan membuat daftar (list) terhadap packet-packet data yang diizinkan melewati firewall. Pada metode ini berarti selain packet data yang berada pada daftar white list tidak akan diizinkan melewati firewall. 
Dua meode ini memiliki kelebihan dan kekurangan masing-masing yang mana seorang administrator harus dapat menentukan metode mana yang lebih baik digunakan sesuai dengan aturan yang akan ditetapkan pada firewall.

Secara default firewall tidak melakukan inspection packet (pemeriksaan packet) jika kita tidak menentukannya, artinya secara default firewall akan mengizinkan semua lalu lintas jaringan yang melewatinya tanpa adanya suatu pemeriksaan.


oke sekian dulu penjelasan mengenai Firewall, nantikan lanjutanya dan artikel menarik lainya..
Previous
Next Post »

Jangan menggunakan link aktif dan meninggalkan spam. Gunakan kolom komentar dengan sebaik-baiknya. terimakasih.. ConversionConversion EmoticonEmoticon