Program Studi : TKJ Exp
: Diagnosa LAN
No. Exp
:15
Packet Filtering
Nama
: Faris Arifiansyah
Kelas
: XI TKJ B
Instruktur
: 1. Rudi Haryadi Harya di 2. Adi Setiadi
TUJUAN y
y
y
y
Siswa mengerti dan paham tentang materi firewall khususnya packet filtering. Siswa dapat membangun sistem keamanan jaringan sederhana dengan packet filtering. Siswa dapat membuat chain dan rule dalam tabel sebelum diimplementasikan. Siswa dapat melakukan konfigurasi packet filtering pada OS Linux dengan menggunakan perintah iptables.
PENDAHULUAN Firewall Firewall atau tembok-api
adalah sebuah sistem atau perangkat yang mengizinkan lalu lintas jaringan yang dianggap aman untuk m elaluinya dan mencegah lalu lintas jaringan yang tidak aman. Umumnya, sebuah tembok -api diterapkan dalam sebuah mesin terdedikasi, yang berjalan pada pintu ger bang (gateway) antara j aringan lokal dan jaringan lainnya. Tembokapi umumnya juga digunakan untuk mengontrol akses terhadap siapa saja yang memiliki akses terhadap jaringan pribadi dari pihak luar. Saat ini, istilah firewall menjadi istilah lazim yang merujuk pada sistem yang meng atur komunikasi antar dua jaringan yang berbeda. Mengingat saat ini banyak perusahaan yang memiliki akses ke Internet dan juga tentu saja jaringan berbadan hukum di dalamnya, m aka perlindungan terhadap modal digital perusahaan tersebut dari serangan para peretas, pemata-ma ta, ataupun pencuri data lainnya, menjadi hakikat.
Jenis-jenis Firewall Firewall terbagi menjadi dua jenis, yakni sebagai berikut Personal Firewall : Personal Firewall didesain untuk melindungi melindungi sebuah komputer yang terhubung terhubung ke jaringan dari akses yang tidak dikehendaki. Firewall jenis ini akhir-akhir ini berevolusi berevolusi menjadi sebuah kumpulan program yang bertujuan untuk mengamankan komputer secara total, dengan ditambahkannya ditambahkannya beberapa fitur pengaman tambahan semacam perangkat proteksi terhadap virus, anti-spyware , lainnya dilengkapi dengan anti-spam, dan lainnya. Bahkan beberapa produk firewall lainnya fungsi pendeteksian pendeteksian gangguan keamanan j aringan ( Intrusion Intrusion Detec tion System). Contoh dari firewall jenis ini adalah Microsoft Windows Firewall (yang telah terintegrasi dalam sistem operasi Windows XP Service Pack 2, Windows Vista dan Windows Server 2003 Service Pack 1), Symantec Norton Personal Firewall, Kerio Personal Firewall, dan lain-lain. Personal Personal Firewall secara umum hanya memiliki dua fitur utama, yakni Packet Filter Firewall dan Stateful Firewall. Network Firewall: Network Firewall didesain untuk melindungi jaringan secara keseluruhan dari berbagai serangan. Umumnya dijumpai dalam dua bentuk, yakni sebuah perangkat terdedikasi atau sebagai sebuah perangkat lunak yang diinstalasikan diinstalasikan dalam sebuah server. Contoh dari firewall ini adalah Microsoft Internet Security and Acceleration Server (ISA Server), Cisco P IX, Cisco ASA, IPTables dalam sistem operasi GNU/Linux, pf dalam keluarga sistem operasi Unix BSD, serta SunScreen dari Sun Microsystems, Inc. yang dibundel dalam sistem operasi Solaris. Network Firewall secara umum memiliki beberapa fitur utama, yakni apa yang dimiliki oleh personal firewall (packet filter firewall dan stateful firewall), C ircuit ircuit Level Gateway , Application Level Gateway , dan juga NAT Firewall . Network Firewall umumnya bersifat transparan (tidak terlihat) dari pengguna dan menggunakan teknologi routing routing untuk menentukan paket mana yang diizinkan, diizinkan, dan mana paket yang akan ditolak.
Fungsi Firewall Secara fundamental, firewall dapat melakukan hal-hal berikut:
Mengatur dan m engontrol lalu lintas jaringan Melakukan autentikasi terhadap akses Melindungi Melindungi sumber daya dalam jaringan privat Mencatat semua kejadian, dan melaporkan kepada administrator Mengatur dan Mengontrol Lalu lintas jaringan
Fungsi pertama yang dapat dilakukan oleh firewall adalah firewall harus dapat mengatur dan mengontrol lalu lintas jaringan yang diizinkan untuk mengakses jaringan privat atau komputer yang dilindungi dilindungi oleh firewall. Firewall melakukan hal y ang demikian, dengan melakukan inspeksi terhadap paket-paket dan memantau koneksi yang sedang dibuat, lalu melakukan penapisan ( filtering ) terhadap koneksi berdasarkan hasil inspeksi paket dan koneksi tersebut.
Proses inspeksi Paket Inspeksi paket ( packet packet inspection ) merupakan proses y ang dilakukan oleh firewall untuk menghadang dan memproses data dalam sebuah paket untuk menentukan bahwa paket tersebut diizinkan diizinkan atau ditolak, berdasarkan kebijakan akses ( access policy ) yang diterapkan oleh seorang administrator. Firewall, sebelum menentukan keputusan apakah hendak menolak atau m enerima komunikasi dari luar, ia harus melakuka n inspeksi terhadap setiap paket (baik yang masuk ataupun yang keluar) di setiap antarmuka dan m embandingkannya dengan daftar kebijakan akses. Inspeksi paket dapat dilakukan dengan melihat elemenelemen berikut, ketika menentukan apakah hendak m enolak atau menerima komunikasi:
Alamat IP dari komputer sumber Port sumber pada komputer sumber Alamat IP dari komputer tujuan Port tujuan data pada komputer tujuan Protokol IP Informasi header-header yang disimpan dalam paket Koneksi dan Keadaan Koneksi Agar dua host TCP/IP dapat saling berkomunikasi, mereka harus saling membuat koneksi antara satu dengan lainnya. Koneksi ini memiliki dua tujuan: 1. Komputer dapat menggunakan koneksi tersebut untuk mengidentifikasikan mengidentifikasikan dirinya kepada komputer lain , yang mey akinkan bahwa sistem lain yang tidak membuat koneksi tidak dapat mengirimkan data ke komputer tersebut. Firewall juga dapat menggunakan informasi koneksi untuk menentukan koneksi apa y ang diizinkan diizinkan oleh kebijakan akses dan menggunakannya untuk menentukan apakah paket data tersebut akan diterima atau ditolak. 2. Koneksi digunakan untuk menentukan bagaimana cara dua host t ersebut ersebut akan berkomunikasi antara satu dengan yang lainnya (apakah dengan menggunakan koneksi connection-oriented , atau connectionless ).
Kedua tujuan ter sebut dapat digunakan untuk menentukan keadaan koneksi antara dua host tersebut, seperti halnya cara manusia bercakap-cakap. Jika Amir bertanya kepada Aminah mengenai sesuatu, maka Aminah akan m eresponsnya dengan dengan jawaban yang sesuai dengan pertanyaan yang diajukan oleh Amir; Pada saat Amir melontarkan pertanyaannya kepada Aminah, keadaan percakapan tersebut adalah Amir m enunggu respons dari Aminah. Aminah. Komunikasi Komunikasi di jaringan juga mengikuti cara yang sam a untuk memantau keadaan percakapan komunikasi yang terjadi. Firewall dapat memantau informasi keadaan koneksi untuk menentukan apakah ia hendak mengizinkan lalu lintas jaringan. Umumnya hal ini dilakukan dengan memelihara sebuah tabel keadaan koneksi (dalam istilah firewall: firewall: state table) yang memantau keadaan semua komunikasi yang melewati firewall. Dengan memantau keadaan koneksi ini, firewall firewall dapat menentukan apakah data yang melewati firewall sedang ditunggu oleh host host yang dituju, dan jika ya, aka mengizinkannya. Jika data yang melewati firewall tidak cocok deng an keadaan koneksi yang didefinisikan oleh tabel keadaan koneksi, maka data t ersebut akan ditolak. ditolak. Hal ini umumnya disebut sebagai Stateful Inspection . Stateful Packet Inspection
Ketika sebuah firewall menggabungkan stateful inspection dengan packet inspection , maka firewall tersebut dinamakan dengan Stateful Packet Inspection (SPI). SPI merupakan proses inspeksi paket yang tidak dilakukan dengan menggunakan struktur pak et dan data yang terkandung dalam paket, tapi juga pada keadaan apa host -host yang saling berkomunikasi berkomunikasi tersebut berada. SPI mengizinkan firewall untuk melakukan penapisan tidak hanya berdasarkan isi paket tersebut, tapi juga berdasar kan koneksi atau keadaan koneksi, sehingga dapat mengakibatkan firewall memiliki kemampuan yang lebih fle ksibel, mudah diatur, dan memiliki skalabilitas skalabilitas dalam hal penapisan yang tinggi. Salah satu keunggulan dari SPI dibandingkan dibandingkan dengan inspeksi paket biasa adalah bahwa ketika sebuah koneksi telah dikenali dan diizinkan diizinkan (tentu saja setelah dilakukan inspeksi) inspeksi) , umumnya sebuah kebijakan (policy) tidak dibutuhkan untuk mengizinkan komunikasi balasan karena firewall tahu respons apa yang diharapkan akan diterima. Hal ini memungkinkan inspeksi inspeksi terhadap data dan perintah yang terkandung dalam sebuah paket data untuk menentukan apakah sebuah koneksi diizinkan atau tidak, lalu firewall akan secara otomatis memantau keadaan percakapan dan secara dinamis mengizinkan lalu lintas yang sesuai dengan keadaan. Ini merupakan peningkatan yang cukup signifikan signifikan jika
dibandingkan dibandingkan deng an firewall dengan inspeksi paket biasa. Apalagi, proses ini diselesaikan tanpa adanya kebutuhan untuk mendefinisikan sebuah kebijakan untuk mengizinkan respons dan komunikasi selanjutnya. Kebanyakan firewall modern telah mendukung fungsi ini. Melakukan autentikasi terhadap akses
Fungsi fundamental firewall yang kedua adalah firewall dapat melakukan autentikasi terhadap akses. Protokol TCP/IP dibangun dengan premis bahwa protokol tersebut mendukung komunikasi yang terbuka. Jika dua host saling mengetahui alamat IP satu sa ma lainnya, maka mer eka diizinkan diizinkan untuk saling berkomunikasi. Pada awal -awal perk embangan Internet, hal ini boleh dianggap sebagai suatu berkah. Tapi sa at ini, di saat semakin banyak yang terhubung terhubung ke Internet, mungkin mungkin kita tidak mau siapa saja yang dapat berkomunikasi dengan sistem yang kita miliki. Karenanya, firewall dilengkapi dengan fungsi autentikasi dengan m enggunakan beberapa mekanisme autentikasi, sebagai berikut: Firewall dapat meminta input dari pengguna pengguna mengenai nama p engguna (user name) serta kata kunci (password). Metode ini sering disebut sebagai ex tended authentication authentication atau xauth. Menggunakan xauth pengguna yang mencoba untuk membuat sebuah koneksi akan diminta input input mengenai n ama dan k ata kuncinya sebelum akhirnya diizinkan diizinkan oleh firewall. Umumnya, setelah koneksi diizinkan oleh kebijakan keamanan dalam firewall, firewall pun tidak perlu lagi mengisikan input password dan namanya, kecuali jika koneksi terputus dan pengguna mencoba m enghubungkan dirinya dirinya kembali. Metode kedua a dalah dengan menggunakan sertifikat digital dan kunci publik. publik. Keunggulan metode ini dibandingkan dibandingkan dengan metode p ertama adalah proses autentikasi dapat terjadi tanpa intervensi pengguna. Selain itu, metode ini lebih cepat dalam r angka melakukan proses autentikasi. Meskipun demikian, metode ini lebih rumit implementasinya karena m embutuhkan banyak komponen seperti halnya implementasi infrastruktur kunci publik. Metode selanjutnya selanjutnya adalah dengan menggunakan Pre-Shared Key (PSK) a tau kunci yang telah diberitahu kepada pengguna. Jika dibandingkan dengan sertifikat digital, PSK lebih mudah diimplenentasikan diimplenentasikan karena lebih sederhana, tetapi PSK juga mengizinkan proses autentikasi terjadi tanpa intervensi pengguna. Dengan m enggunakan PSK, setiap host akan diberikan sebuah kunci yang telah ditentukan sebelumnya yang kemudian digunakan untuk proses autentikasi. Kelemahan metode ini adalah kunci PSK jarang sekali diperbarui dan banyak organisasi sering sekali menggunakan kunci yang sama untuk melakukan koneksi terhadap host-host yang berada pada jarak jauh, sehingga sehingga hal ini sam a saja m eruntuhkan proses autentikasi. Agar tercapai sebuah derajat keamanan yang tinggi, umumnya beberapa organisasi juga menggunakan gabungan antara metode PSK dengan xauth atau PSK dengan sertifikat digital. Dengan mengimplementasikan proses autentikasi, firewall dapat m enjamin bahwa koneksi dapat diizinkan atau tidak. Meskipun jika paket telah diizinkan diizinkan dengan menggunakan inspeksi paket (PI) atau berdasarkan keadaan koneksi (SPI), jika h ost tersebut tidak lolos proses autentikasi, paket tersebut ak an dibuang.
Melindungi elindungi sumber daya dalam jaringan privat
Salah satu tugas firewall adalah melindungi sumber daya dari ancam an yang mungkin datang. Proteksi ini ini dapat diperoleh dengan dengan meng gunakan beberapa peraturan pengaturan akses (access control), control), penggunaan SPI, application proxy, atau kombinasi kombinasi dari semuanya untuk mencegah host yang dilindungi dilindungi dapat diakses oleh host host -host yang mencurigakan atau dari lalu lintas lintas jaringan yang mencurigakan. Meskipun demikian, firewall bukanlah bukanlah satu satunya metode proteksi terhadap sumber daya, dan mempercayakan proteksi terhadap sumber daya dari ancam an terhadap firewall secara eksklusif adalah salah satu kesalahan fatal. Jika sebuah host yang menjalankan sistem operasi tertentu yang memiliki lubang keamanan yang belum ditambal dikoneksikan ke I nternet, firewall mungkin tidak tidak dapat mencegah dieksploitasinya host tersebut oleh host -host lainnya, khususnya jika exploit tersebut menggunakan lalu lintas y ang oleh fire wall telah diizinkan (dalam konfigurasinya). Sebagai contoh, jika s ebuah packet-inspection firewall mengizinkan lalu lintas HTTP ke sebuah web server yang menjalankan sebuah layanan web yang memiliki lubang lubang keamanan yang belum ditambal, maka seorang pengguna yang iseng dapat saja m embuat exploit exploit untuk meruntuhkan meruntuhkan web server tersebut karena memang web server yang ber sangkutan memiliki lubang lubang keamanan yang belum ditambal. Dalam contoh ini, web server tersebut akhirnya mengakibatkan proteksi yang ditawarkan oleh firewall menjadi tidak tidak berguna. Hal ini disebabkan oleh oleh firewall yang tidak dapat membedakan antara request HTTP yang mencurigakan atau tidak. Apalagi, jika firewall yang digunakan bukan application application proxy. Oleh karena itulah, sumber daya yang dilindun gi haruslah dipelihara dipelihara dengan m elakukan penambalan terhadap lubang -lubang -lubang keamanan, k eamanan, selain tentunya dilindungi dilindungi oleh firewall. Mencatat semua kejadian, dan m elaporkan kepada administrator
[Placeholder]
Cara Kerja Firewall Packet-Filter Firewall Pada bentuknya yang paling paling sederhana, s ebuah firewall adalah sebuah router router atau komputer yang dilengkapi dengan dua buah NIC (Network Interface Card, kartu antarmuka jaringan) yang mampu mela kukan penapisan atau penyaringan terhadap paket-paket yang masuk. Perangkat jenis ini umumnya disebut dengan packet-filtering router .
Firewall jenis ini bekerja dengan cara membandingkan alamat sumber dari paket-pak et tersebut dengan kebijakan pengontrolan akses yang terdaftar dalam Acc ess Control List firewall, router router tersebut a kan mencoba memutuskan apakah hendak m eneruskan paket yang masuk tersebut ke tujuannya atau menghentikannya. Pada bentuk yang lebih sederhana lagi, firewall hanya melakukan pengujian terhadap alamat IP atau nama domain yang menjadi sumber paket dan akan me nentukan apakah hendak meneruskan atau menolak paket tersebut. Meskipun demikian, packet- filtering filtering router tidak dapat digunakan untuk memberikan akses (atau menolaknya) dengan menggunakan basis hak-hak yang dimiliki oleh pengguna. Packet-filtering Packet-filtering router j uga dapat dikonfigurasikan agar menghentikan beberapa jenis lalu lintas jaringan dan tentu saja m engizinkannya. engizinkannya. Umumnya, hal ini dilakukan dengan mengaktifkan/menonaktifkan port TCP/IP dalam sistem firewall tersebut. Sebagai contoh, port 25 yang digunakan oleh Protokol SMTP ( Simple Mail Transfer Protocol ) umumnya dibiarkan terbuka oleh beberapa firewall untuk mengizinkan surat elektronik dari Internet masuk ke dalam j aringan privat, sementara port lainnya seperti port 23 yang digunakan oleh Protokol Telnet dapat dinonaktifkan untuk mencegah pengguna Internet untuk mengaks es layanan yang terdapat dalam jaringan privat tersebut. Firewall juga dapat memberikan semacam pengecualian (exception) agar beberapa aplikasi dapat melewati firewall tersebut. Dengan menggunakan pendekatan ini, keamanan ak an lebih kuat tapi memiliki kelemahan yang signifikan yakni kerumitan konfigurasi terhadap firewall: daftar Access Control List
firewall akan membesar seiring dengan banyaknya alamat IP, nama domain, atau port yang dimasukkan ke dalamnya, selain tentunya juga exception yang diberlakukan.
Circuit Level Gateway Firewall jenis lainnya adalah Circuit-Level Gateway , yang umumnya berupa komponen dalam sebuah proxy server. Firewall jenis jenis ini beroperasi beroperasi pada level yang lebih tinggi dalam model referensi tujuh lapis OSI (bekerja pada lapisan sesi/session layer) daripada Packet Filter Firewall. Modifikasi Modifikasi ini membuat firewall jenis ini berguna dalam rangka menyembunyikan informasi informasi mengenai jaringan t erproteksi, erproteksi, meskipun firewall ini t idak melakukan penyaringan terhadap pak et-paket individual individual yang m engalir dalam koneksi.
Dengan menggunakan firewall jenis ini, koneksi yang terjadi antara pengguna dan jaringan pun disembunyikan disembunyikan dari pengguna. Pengguna Pengguna akan dihadapkan secara langsung den gan firewall pada saat proses pembuatan koneksi dan firewall pun akan membentuk koneksi dengan sumber daya jaringan yang hendak diakses oleh pengguna setelah mengubah alamat IP dari paket yang ditransmisikan oleh dua belah pihak. Hal ini mengakibatkan terjadinya sebuah sirkuit virtual ( virtual circuit ) antara pengguna dan sumber daya jaringan yang ia akses. Firewall ini dianggap lebih aman dibandingkan dibandingkan dengan Packet -Filtering -Filtering Firewall, karena
pengguna eksternal tidak dapat melihat alamat IP jaringan internal dalam paket-paket yang ia terima, melainkan alamat IP dari firewall. Protokol yang populer digunakan digunakan sebagai Circuit-Level Gateway adalah SOCKS v5.
Application Level Firewall Firewall jenis lainnya adalah Application Application Level Gateway (atau Application Application -Level Firewall atau sering juga disebut sebagai Proxy Firewall), yang umumnya juga merupakan komponen dari sebuah proxy server. Firewall ini tidak mengizinkan paket yang da tang untuk melewati firewall secara langsung. Tetapi, aplikasi proxy proxy yang berj alan dalam komputer yang menjalankan firewall akan meneruskan permintaan tersebut kepada layanan yang tersedia dalam jaringan privat dan kemudian meneruskan respons dari permintaan tersebut kepada komputer yang membuat permintaan pertama kali yang terletak dalam jaringan publik yang tidak aman.
Umumnya, firewall jenis ini akan melakukan autentikasi terlebih dahulu terhadap pengguna sebelum mengizinkan pengguna tersebut untuk mengaks es jaringan. Selain itu, firewall ini juga mengimplementasikan mekanisme auditing dan pencatatan (logging) sebagai b agian dari kebijakan keamanan yang diterapkannya. Application Application Level Firewall juga umumnya mengharuskan beberapa konfigurasi yang diberlakukan pada pengguna untuk mengizinkan
mesin klien agar dapat berfungsi. Sebagai contoh, jika sebuah proxy proxy FTP dikonfigur asikan di atas sebuah application layer gateway, proxy tersebut dapat dikonfigurasikan untuk untuk mengizinlan beberapa perintah FTP, dan menolak beberapa perintah lainnya. Jenis ini paling sering diimplementasikan diimplementasikan pada proxy SMTP sehingga mereka dapat m enerima surat elektronik dari luar luar (tanpa menampakkan alamat e-mail internal), lalu meneruskan meneruskan e -mail tersebut kepada e-mail server dalam jaringan. Tetapi, Tetapi, karena adanya pemrosesan yang lebih rumit, firewall jenis ini ini mengharuskan komputer yang dikonfigurasikan se bagai application gateway memiliki spesifikasi spesifikasi yang tinggi, dan tentu saja jauh lebih lambat dibandingkan dibandingkan dengan packet-filter firewall.
NAT Firewall NAT (Network Address Translation) Firewall secara otomatis menyediakan proteksi terhadap sistem yang berada di balik firewall karena NAT Firewall hanya mengizinkan koneksi yang datang dari komputer -komputer yang berada di balik firewall. Tujuan dari NAT adalah untuk melakukan multiplexing terhadap lalu lintas dari jaringan internal untuk kemudian menyampaikannya kepada jaringan yan g lebih luas (MAN, WAN atau Internet) seolah-olah paket tersebut datang dari sebuah alamat IP atau beberapa alamat IP. NAT Firewall membuat tabel dalam memori yang m engandung informasi informasi mengenai koneksi yang dilihat dilihat oleh firewall. Tabe Tabe l ini akan memetakan ala mat jaringan internal ke alamat eksternal. Kemampuan untuk menaruh keseluruhan jaringan di belakang sebuah alamat IP didasarkan terhadap pemetaan terhadap port-port dalam NAT firewall. Stateful Firewall
Stateful Firewall merupakan sebuah firewall yang menggabungkan keunggulan yang ditawarkan oleh packet-filtering firewall, NAT Firewall, Circuit Circuit -Level Firewall dan Proxy Firewall dalam satu sistem. S tateful Firewall dapat melakukan filtering terhadap lalu lintas berdasarkan karakteristik paket, seperti halnya packet-filtering firewall, dan juga m emiliki pengecekan terhadap sesi koneksi untuk meyakinkan bahwa sesi koneksi yang terbentuk tersebut diizinlan. diizinlan. Tidak seperti Proxy Firewall atau Circuit Level Firewall, Sta teful Firewall umumnya didesain agar lebih transparan (seperti halnya packet -filtering -filtering firewall atau NAT firewall). Tetapi, Tetapi, stateful firewall juga m encakup beberapa aspek yang dimiliki oleh application application level firewall, sebab ia juga melakukan inspeksi terhadap terhadap data yang datang dari lapisan aplikasi (application (application layer) dengan menggunakan laya nan tertentu. Firewall ini hanya tersedia pada beberapa firewall firewall kelas atas, semac am Cisco PIX. Karena menggabungkan keunggulan jenis-jenis firewall lainnya, lainnya, stateful firewall m enjadi lebih k ompleks.
Virtual Firewall
Virtual Firewall adalah sebutan untuk beberapa firewall logis yang berada dalam sebuah perangkat fisik (komputer atau perangka t firewall lainnya). Pengaturan ini mengizinkan beberapa jaringan agar dapat diproteksi oleh oleh sebuah fi rewall yang unik yang menjalankan kebijakan keamanan yang juga unik, cukup dengan menggunakan satu buah perangkat. Dengan menggunakan firewall jenis ini, sebuah ISP (Internet Service Provider) dapat menyediakan layanan firewall kepada para pelanggannya, sehingga mengamankan lalu lintas jaringan jaringan merek a, hanya dengan menggunakan satu buah perangkat. Hal ini jelas merupakan penghematan biaya ya ng signifikan, meski firewall jenis ini hanya tersedia pada firewall kelas atas, seperti Cisco PIX 535.
Transparent Transparent Fi rewall Transparent Firewall (juga dikenal sebag ai bridging firewall) bukanlah bukanlah sebuah firewall yang murni, tetapi ia hanya berupa turunan dari stateful Firewall. Daripada firewall -firewall lainnya yang beroperasi pada lapisan IP ke atas, transparent firewall bekerja pada lapisan Data-Link Layer, dan kemudian ia memantau lapisan-lapisan yang ada di a tasnya. Selain itu, transparent firewall juga juga dapat melakukan apa y ang dapat dilakukan oleh packet-filtering firewall, seperti halnya stateful firewall dan dan tidak terlihat oleh pengguna (karena itulah, ia disebut sebagai Transparent Firewall).
Intinya, transparent firewall bekerja sebagai sebuah bridge yang bertugas untuk m enyaring lalu lintas lintas jaringan antara dua segmen jaringan. Dengan menggunakan transparent firew all, keamanan sebuah segmen jaringan pun dapat diperkuat, tanpa harus mengaplikasikan NAT Filter. Transparent Firewall menawarkan tiga buah keuntungan, yakni sebagai berikut: Konfigurasi Konfigurasi yang mudah (bahkan beberapa produk meng klaim sebagai Z ero Configuration). Configuration). Hal ini memang karena tr ansparent firewall dihubungkan dihubungkan secara langsung dengan jaringan yang hendak diproteksinya, diproteksinya, dengan memodifikasi sedikit atau tanpa memodifikasi konfigurasi firewall firewall tersebut. Karena ia bekerja pada data link layer, pengubahan a lamat IP pun tidak dibutuhkan. Firewall juga dapat dikonfigurasikan dikonfigurasikan untuk melakukan seg mentasi terhadap sebuah subnet jaringan antara jaringan yang memiliki keamanan yang rendah dan keamanan yang tinggi atau dapat juga untuk melindungi melindungi sebuah host, jika me mang diperlukan. Kinerja yang tinggi. Hal ini disebabkan oleh oleh firewall yang berjalan dalam lapisan data -link lebih sederhana dibandingkan dibandingkan dengan firewall yang berjalan dalam lapisan yang lebih tinggi. tinggi. Karena bekerja lebih sederhana, maka kebutuhan pemroses an pun lebih kecil dibandingkan dibandingkan dengan firewall yang berjalan pada lapisan yang tinggi, dan akhirnya performa yang ditunjukannya ditunjukannya pun lebih tinggi. Tidak terlihat oleh pengguna ( stealth ). Hal ini memang dikarenakan Transparent Firewall bekerja pada lapisan data-link, dan tidak membutuhkan alamat IP yang ditetapkan untuknya (kecuali untuk melakukan manajemen terhadapnya, jika memang jenisnya managed ). Karena itulah, transparent firewall tidak dapat terlihat oleh para penyerang. firewall ). Karena tidak dapat diraih oleh penyerang (tidak memiliki alamat IP), penyerang pun tidak dapat menyerangnya.
Penapisan paket Penapisan paket (bahasa Inggris: Packet filtering ) adalah mekanisme yang dapat memblokir paket-paket data j aringan yang dilakukan berdasarkan peraturan yang telah ditentukan sebelumnya. Packet filtering adalah salah satu jenis teknologi keamanan yang digunakan untuk m engatur paket-paket apa saja yang diizinkan diizinkan masuk ke dala m sistem atau jaringan dan paket-paket apa saja yang diblokir. Packet filtering umumnya digunakan untuk memblokir lalu lintas yang mencurigakan yang datang dari alamat IP yang mencurigakan, nomor port TCP/UDP yang mencurigakan, jenis protokol aplikasi aplikasi yang m encurigakan, dan kriteria lainnya. Akhir Akhir -akhir ini, fitur packet filtering telah dimasukkan ke dalam banyak sistem operasi (IPTables dalam GNU/Linux, dan IP Filter d alam Windows) sebagai sebuah fitur standar, selain tentunya firewall dan router.
Implementasi Packet filtering terbagi menjadi dua jenis, yakni: Static packet filtering (Penapisan paket statis) Dynamic packet filtering (Penapisan (Penapisan paket dinamis), atau sering juga disebut sebagai Stateful Packet Filter .
Penapisan paket statis setiap Static packet filtering akan menentukan apakah hendak menerima atau memblokir setiap paket berdasarkan informasi yang disimpan di dalam header sebuah paket (seperti halnya alamat sumber dan tujuan, port sumber dan tujuan, jenis protokol, serta informasi lainnya). Jenis ini umumnya umumnya ditemukan di dalam sistem -sistem operasi dan router dan menggunakan sebuah tabel daftar pengaturan akses (access control list ) yang berisi peraturan yang menentukan takdir setiap paket: diterima atau ditolak.
Administrator Administrator jaringan dapat membuat per aturan tersebut sebagai daftar yang berurutan. Setiap paket yang datang kepada filter , akan dibandingkan dengan setiap peraturan yang diterapkan di dalam filter tersebut, hingga sebuah kecocokan ditemukan. Jika tidak ada ya ng cocok, maka paket yang datang tersebut ditolak, ditolak, dan berlaku sebaliknya. Peraturan tersebut dapat digunakan untuk menerima paket atau menolaknya dengan menggunakan basis informasi y ang diperoleh dari header protokol yang digunakan, dan jenis dari paket tersebut. Kebanyakan perangkat yang memiliki fitur packet filtering, menawarkan k epada administrator jaringan untuk membuat dua jenis peraturan, yakni inbound rule dan outbound rule . Inbound rule merujuk kepada inspeksi paket akan dilakukan terhadap paket yang datang dari luar, sementara outbound rule merujuk inspeksi paket akan dilakukan terhadap paket yang hendak k eluar.
Penapisan paket dinamis Dynamic packet filtering beroperasi seperti halnya static packet filtering , tapi jenis ini juga tetap memelihara informasi sesi yang mengizinkan mereka untuk mengontrol aliran paket antara dua host secara dinamis, dengan cara membuka dan menutup port komunikasi
sesuai kebutuhan. Jenis Jenis ini seringnya diimplementasikan diimplementasikan di dalam pro duk firewall, di mana produk-produk tersebut dapat digunakan untuk mengontrol aliran data masuk ke j aringan dan aliran data keluar dari jaringan.
Sebagai contoh, sebuah dynamic packet filter dapat dikonfigurasikan sedemikian rupa sehingga hanya lalu lintas inbound protokol protokol Hypertext Transfer Protocol (HTTP) saja yang diizinkan diizinkan masuk jaringan, sebagai respons dari request dari klien HTTP yang berada di dalam jaringan. Untuk melakukan hal ini, lalu lintas oubound yang melalui port 80/TCP akan diizinkan, diizinkan, sehingga request HTTP dari klien yang ber ada di dalam jaringan dapat diteruskan dan disampaikan ke luar ja ringan. Ketika sebuah request HTTP outbound datang melalui filter, filter kemudian akan m elakukan inspeksi terhadap paket untuk m emperoleh informasi informasi sesi koneksi TCP dari request yang ber sangkutan, dan kemudian akan membuka port 80 untuk lalu lintas inbound inbound sebagai respons terhadap request tersebut. Ketika r espons HTTP datang, respons tersebut akan melalui port 80 ke dalam j aringan, dan kemudian filter pun pun menutup port 80 untuk lalu lintas inbound. Pendekatan seperti ini tidak mungkin dilakukan di dalam static packet filtering , yang hanya dapat dikonfigurasikan untuk memblokir lalu lintas inbound ke port 80 atau membukanya, bukan sebagian dari lalu lintas tersebut. Meskipun demikian, dynamic packet filtering juga dapat dikelabui oleh penyerang, karena para penyerang dapat membajak sebuah sesi koneksi TCP dan membuat lalu lintas yang datang ke jaringan merupakan lalu lintas yang diizinkan. Selain itu, dynamic packet filtering juga hanya dapat digunakan pada paket-paket TCP saja, dan tidak dapat digunakan untuk paket User Datagram Protocol (UDP) atau paket Internet Control Control Message Protocol (ICMP), mengingat UDP dan ICMP bersifat connectionless yang tidak perlu membangun sebuah sesi koneksi (seperti halnya TCP) untuk mulai berkomunikasi dan bertukar informasi.
IPTables IPTables memiliki tiga tiga macam d aftar aturan bawaan dalam tabel penyaringan, daftar tersebut dinamakan rantai firewall ( firewall chain) atau sering disebut chain saja. Ketiga chain tersebut adalah INPUT, OUTPUT dan F ORWARD.
Pada diagram tersebut, lingkaran menggambark an ketiga rantai atau chain. Pada saat sebuah paket sampai pada sebuah lingkaran, maka disitulah disitulah terjadi proses penyarin gan. Rantai akan memutuskan nasib paket tersebut. Apabila keputusannnya adalah DROP, maka paket tersebut akan di-drop. Tetapi jika rantai memutuskan untuk untuk ACCEPT, maka pak et akan dilewatkan melalui diagram tersebut. Sebuah rantai adalah aturan-aturan yang telah ditentukan. Setiap aturan menyatakan jika paket memiliki informasi awal (header) seperti ini, mak a inilah yang harus dilakukan terhadap paket. Jika aturan tersebut tidak sesuai dengan paket, maka aturan berikutnya akan memproses paket tersebut. Apabila sampai aturan tera khir yang ada, paket tersebut belum memenuhi salah satu aturan, ma ka kernel ak an melihat kebijakan bawaan (default) untuk memutuskan apa yang harus dilakukan kepada paket tersebut. Ada dua kebijakan bawaan yaitu default DROP dan default ACCEPT. Jalannya sebuah paket m elalui diagram tersebut bisa dicontohkan dicontohkan sebagai berikut:
Perjalanan Perjalanan paket yang diforward ke host y ang lain 1. Paket berada pada jaringan fisik, contoh internet.2. internet.2. Paket masuk ke interface jaringan, contoh eth0.3. eth0.3. Paket masuk ke chain PREROUTING pada table Mangle. Chain ini berfungsi berfungsi untuk me-mangle (m enghaluskan) paket, seperti merubah TOS, TTL dan lain-lain.4. lain-lain.4. Paket masuk ke chain PREROUTING pada tabel nat. Chain ini berfungsi berfungsi utamanya untuk m elakukan DNAT (Destination Network Address Translation).5. Translation).5. Paket m engalami keputusan routing, apakah akan diproses oleh host lokal atau diteruskan ke host lain.6. Paket ma suk ke chain FORWARD pada tabel filter. Disinlah proses pemfilteran pemfilteran yang utam a terjadi.7. Paket m asuk ke chain POSTROUTING pada tabel nat. Chain ini berfungsi utamanya untuk melakukan SNAT (Source Network Address Translation).8. Translation).8. Paket keluar menuju interface jaringan,
contoh eth1.9. Paket kembali berada pada jaringan fisik, contoh LAN.
Perjalanan Perjalanan paket yang d itujukan bagi host lokal 1. Paket berada dalam jaringan fisik, contoh internet.2. internet.2. Paket masuk ke interface jaringan, contoh eth0.3. eth0.3. Paket masuk ke chain PREROUTING pada tabel mangle.4. Paket masuk ke chain PREROUTING pada tabel nat.5. Paket meng alami k eputusan routing.6. routing.6. Paket masuk ke chain INPUT pada t abel filter untuk mengalami proses penyaringan.7. Paket akan diterima oleh aplikasi lokal.
Perjalanan Perjalanan paket yang berasal dari host lokal 1. Aplikasi lokal menghasilkan paket data yang aka n dikirimkan melalui jaringan.2. Paket memasuki chain OUTPUT pada tabel mangle.3. Paket mem asuki chain OUTPUT pada tabel nat.4. Paket memasuki chain OUTPUT pada tabel filter.5. Paket mengalami keputusan routing, seperti seperti ke mana paket harus pergi dan melalui interfac e mana.6. Paket masuk ke chain POSTROUTING pada tabel NAT.7. Paket masuk ke interface jaringan, contoh eth0.8. eth0.8. Paket berada pada jaringan fisik, contoh internet.
3. Sintaks IPTables
iptables [-t table] command [match] [target/jump]
1. Table
IPTables memiliki 3 buah tabel, yaitu NAT, MANGLE dan FILTER. Penggunannya disesuaikan dengan sifat dan karakteristik masing-masing. masing-masing. Fungsi dari masing-m asing tabel tersebut sebagai berikut : NAT : Secara umum digunakan untuk melakukan Network Address Translation. Translation. NAT adalah penggantian field alamat asal atau alamat tujuan dari sebuah paket. MANGLE : Digunakan untuk melakukan penghalusan (mangle) paket, seperti TTL, TOS dan MARK. FILTER : Secar a umum, inilah pemfilteran paket yang sesungguhnya.. Di sini bisa bisa dintuka n apakah paket akan di-DROP, LOG, ACCEPT atau REJECT 2. Command Command pada baris perintah IPTables akan memberitahu apa y ang harus dilakukan terhadap lanjutan sintaks perintah. Umumnya dilakukan penambahan atau penghapusan sesuatu dari tabel atau yang lain.
Command
Keterangan
-A --append
Perintah
ini menambahkan aturan pada akhir chain. Aturan akan ditambahkan di akhir baris pada chain yang
bersangkutan, bersangkutan, sehingga akan a kan dieksekusi tera khir -D --delete
Perintah
-R --replace
enggunaannya sama sa ma seperti Penggunaannya
-I --insert
Memasukkan
-L --list
Perintah
ini menampilkan semua aturan pada sebuah tabel. Apabila tabel tidak disebutkan, maka seluruh aturan pada semua tabel akan ditampilkan, walaupun tidak ada aturan sama sekali pada sebuah tabel. C ommand ini ommand ini bisa dikombinasikan dengan option ±v (verbose), -n (numeric) dan ±x (exact).
-F --flush
Perintah
ini mengosongkan aturan pada sebuah chain. Apabila chain tidak disebutkan, ma ka semua chain a kan didi flush. flush.
-N --new-chain
Perintah
-X --delete-chain
ini menghapus suatu aturan pada chain. Dilakukan dengan cara menyebutkan secara lengkap perintah yang ingin dihapus atau dengan menyebutkan nomor baris dimana perintah akan dihapus. di hapus.
--delete, tetapi command
ini menggantinya dengan entry yang baru.
aturan pada suatu baris di chain. Aturan akan dimasukkan pada baris yang disebutkan, dan aturan awal yang menempati baris tersebut akan digeser ke bawah. Demikian pula baris-baris selanjutnya.
tersebut tersebut akan membuat chain baru.
Perintah ini akan menghapus chain yang disebutkan. Agar perintah di atas berhasil, tidak boleh ada aturan lain ya ng mengacu kepada chain tersebut.
-P --policy
Perintah
-E --rename-chain
Perintah
ini membuat kebijakan default pada sebuah cha in. Sehingga jika ada sebuah paket yang tidak memenuhi aturan pada baris-baris yang telah didefinisikan, maka paket akan diperlakukan sesuai dengan kebijakan default ini.
ini akan merubah nama na ma suatu chain.
3. Option Option digunakan digunakan dikombinasikan dengan command tertentu yang akan menghasilkan suatu variasi perintah.
Option Option
Command
-v --verbose
--list --append --insert --delete --replace
-x --exact
--list
-n --numeric
--list
--line-number
--list
Pemakai Pemakai
Keterangan Memberikan output
yang lebih detail, utamanya digunakan dengan -list. Jika digunakan dengan --list, akan menampilkam K (x1.000), M (1.000.000) dan G (1.000.000.000). Memberikan output
yang lebih tepat. Memberikan output
yang berbentuk angka. Alamat IP dan nomor port akan ditampilkan dalam bentuk angka dan bukan hostname ataupun nama aplikasi/servis.
Akan menampilkan nomor dari daftar aturan. Hal ni akan mempermudah bagi kita untuk melakukan modifikasi aturan, jika kita mau meyisipkan atau menghapus menghapus aturan atura n dengan nomor tertentu.
--modprobe
All
Memerintahkan
IPTables untuk memanggil modul tertentu. Bisa digunakan bersamaan dengan semua command .
4. Generic Matches
Generic Matches artinya pendefinisian pendefinisian kriteria y ang berlaku secara umum. Dengan kata lain, sintaks generic mat ches akan s ama untuk semua protokol. protokol. Setelah protokol didefinisikan, didefinisikan, maka baru didefinisikan aturan yang lebih spesifik yang dimiliki oleh oleh protoko l tersebut. Hal ini dilakukan dilakukan karena tiap-tiap protokol memiliki karakteristik yang berbeda, sehingga memerlukan perlakuan khusus. Match
Keterangan
-p --protocol
Digunakan untuk mengecek tipe protokol tertentu. Contoh protokol yang umum adalah TCP, UDP, ICMP dan ALL. Daftar prot okol bisa bisa dilihat pada protocols protocols . /etc/ Tanda
inversi juga bisa diberlakukan di sini, misal kita menghendaki semua protokol kecuali icmp, maka kita bisa menuliskan --protokol ! icmp yang berarti semua kecuali icmp. -s --src --source
Kriteria ini digunakan untuk mencocokkan paket berdasarkan alamat IP asal. Alamat di sini bisa berberntuk alamat tunggal seperti 192.168.1.1, atau suatu alamat network menggunakan netmask misal 192.168.1.0/255.255.255.0, atau bisa juga ditulis 192.168.1.0/24 yang artinya semua alamat 192.168.1.x. Kita juga bisa menggunakan inversi.
-d --dst --destination
Digunakan untuk mecocokkan paket berdasarkan alamat tujuan. Penggunaannya enggunaannya sama sa ma dengan match match ±src
-i --in-interface
atch M atch
ini berguna untuk mencocokkan paket berdasarkan interface di mana paket datang. M atch atch ini hanya berlaku pada chain IN PUT, FORWARD dan PREROUTING
-o
Berfungsi untuk mencocokkan paket berdasarkan
--out-interface
interface di mana paket keluar. Penggunannya sama dengan --in-interface. Berlaku untuk chain OUTPUT, FORWARD dan POSTROUTING
5. Implicit Matches
Implicit Matches adalah match y ang spesifik untuk tipe protokol tertentu. Implicit Implicit Match merupakan sekumpulan rule yang a kan diload setelah tipe protokol protokol disebutkan. Ada 3 Implicit Match berlaku untuk tiga jenis protokol, yaitu TCP matches, UDP m atches dan ICMP matches.
a. TCP matches Match
Keterangan
--sport --source-port
atch M atch
ini berguna untuk mecocokkan paket berdasarkan port asal. Dalam hal ini kia bisa mendefinisikan nomor port atau nama servic servi ce-nya. Daftar nama service dan nomor port yang bersesuaian dapat dilihat di /etc/services . --sport juga bisa dituliskan untuk range port tert entu. Misalkan
kita ingin mendefinisikan range antara port 22 sampai dengan 80, maka kita bisa menuliskan --sport
22:80.
Jika bagian salah satu bagian bagia n pada range tersebut kita hilangkan maka hal itu bisa kita artika n dari port 0, jika bagian kiri yang kita hilangkan, atau 65535 jika bagian kanan yang kita hilangkan. Contohnya Contohnya --sport :80 artinya paket dengan port asal nol sa mpai dengan 80, atau --sport 1024: artinya paket dengan port asal 1024 sampai dengan 65535. Match ini juga mengenal inversi. --dport --destination-port --tcp-flags
Penggunaan
match match ini sama dengan match --source-
port .
Digunakan untuk mencocokkan paket berdasarkan TCP fl ag ag s yang ada pada paket tersebut. Pertama, pengecekan akan mengambil daftar fl fl ag yang ag yang akan diperbandingkan, dan kedua, akan memeriksa paket yang di- se di- set t 1, 1, atau on. on. Pada
kedua list list , masing-masing entry-nya harus dipisahkan oleh koma dan tidak boleh ada spasi antar entry, kecuali spasi antar kedua list. list. M atch atch ini mengenali SYN,ACK,FIN,RST,URG, PSH. Selain
itu kita juga menuliskan ALL dan NONE. bisa menggunakan inversi. --syn
Match
ini juga
atch M atch
ini akan memeriksa apakah flag SYN di- se di- set t dan dan ACK dan FIN tidak di- se di- set t . Perintah ini sama artinya jika kita menggunakan match match --tcp-flags SYN,ACK,FIN SYN Paket
dengan match match di atas digunakan untuk melakukan request request koneksi koneksi TCP yang baru terhadap server b. UDP Matches Karena bahwa protokol UDP bersifat connectionles connectionless, s, maka tidak ada flags yang mendeskripsikan status paket untuk untuk membuka atau menutup koneksi. Paket UDP juga tidak memerlukan acknowledgement. Sehingga Implicit Match untuk protokol UDP lebih sedikit daripada daripada TCP. Ada dua macam match untuk UDP: --spor t
atau --sour ce-por t tinati tion on -por t --dpor t atau --destina
c. ICMP Matches Paket ICMP digunakan untuk mengirimkan pesan -pesan kesalahan dan kondisi-kondisi kondisi-kondisi jaringan yang lain. Hanya ada satu implicit match untuk tipe protokol ICMP, yaitu :
icmp-type type --icm 6. Explicit Matches
a. MAC Address Match jenis ini berguna untuk melakukan pencocokan paket berdasarkan MAC source address. Perlu diingat diingat bahwa MAC hanya berfungsi untuk jaringan yang mengg unakan teknologi ethernet.
iptable iptables ±A INPUT ±m mac mac ±mac ±mac-sour ce 00:00:00:00:00:01 00:00:00:00:00:01 b. Multiport Matches Ekstensi Multiport Matches digunakan untuk mendefinisikan port atau port range lebih dari satu, yang berfungsi jika ingin didefinisikan aturan yang sam a untuk beberapa port. Tapi hal yang perlu diingat bahwa kita tidak bisa menggunakan port ma tching standard dan multiport multiport matching dalam wak tu yang bersamaan.
iptable iptables ±A INPUT ±p ±p tcp ±m multip multipor or t
c. Owner Matches
--sour ce-por t
22,53,80,110
Penggunaan match ini untuk mencocokkan paket berdasarkan pembuat atau pemilik/owner paket tersebut. Match ini bekerja dalam chain OUTPUT, a kan tetapi penggunaan match ini tidak terlalu luas, sebab ada beberapa proses tidak memiliki owner (??).
iptable iptables ±A OUTPUT ±m owner --uid-owner 500 Kita juga bisa memfilter berdasarkan group ID dengan sintaks --gid-owner. Salah satu penggunannya adalah bisa mencegah user selain yang dikehendaki untuk mengakses internet misalnya.
d. State Matches Match ini mendefinisikan mendefinisikan state apa saja yang cocok. Ada 4 state yang berlaku, yaitu NEW, ESTABLISHED, RELATED dan INVALID. NEW digunakan untuk paket yang akan memulai koneksi baru. ESTABLISHED digunakan jika koneksi telah tersambung dan paket -paketnya merupakan bagian dari koneki tersebut. tersebut. RELATED digunakan untuk paket -paket yang bukan bagian dari koneksi tetapi masih berhubungan berhubungan dengan koneksi tersebut, contohnya contohnya adalah FTP data transfer yang menyertai sebuah koneksi TCP atau UDP. INVALID adalah paket yang tidak bisa diidentifikasi, diidentifikasi, bukan merupakan bagian dari koneksi yang ada.
iptable iptables ±A INPUT ±m state
--state
RELATED,ESTABLISHED
7. Target/Jump
Target atau jump adalah perlakuan yang diberikan terhadap paket-paket yang memenuhi kriteria atau match. Jump memerlukan sebuah chain yang lain dalam tabel yang sama. Chain tersebut nantinya akan dimasuki oleh paket yang m emenuhi kriteria. Analoginya ialah chain baru nanti berlaku sebagai prosedur/fungsi prosedur/fungsi dari program utama. Sebag ai contoh dibuat dibuat sebuah chain yang bernama tcp_packets. Setelah ditambahkan aturan-aturan ke dalam chain tersebut, kemudian chain tersebut akan direferensi dari chain input.
iptable iptables ±A INPUT ±p ±p tcp ±j tcp_pa tcp_packet kets Keterangan Target Target -j ACCEPT --jump ACCEPT
-j DROP --jump DROP
Ketika paket cocok dengan daftar matc daftar match h dan target ini diberlakukan, maka paket tidak a kan melalui baris-baris baris-baris aturan yang lain dala m chain tersebut atau chain yang lain yang mereferensi chain tersebut. Akan tetapi paket masih akan memasuki chain-chain pada tabel yang lain seperti biasa. Target
ini men-d men- d r r op paket op paket dan menolak untuk memproses lebih jauh. Dalam beberapa kasus mungkin hal ini kurang baik, karena akan meninggalkan d ead sock sock et antara t antara client lient dan server 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 RETURN --jump RETURN
ini akan membuat paket berhenti melintasi aturanaturan pada chain dimana paket tersebut menemui menemui target RETURN. Jika chain merupakan sub merupakan subcchain dari chain yang lain, maka paket akan kembali ke su perse persett ch chain di atasnya dan masuk ke baris aturan berikutnya. Apabila chain adalah chain utama misalnya INPUT, maka paket akan dikembalikan kepada kebijakan default dari chain tersebut.
-j MIRROR
Apabila kompuuter A menjalankan target seperti contoh di atas, kemudian komputer B melakukan koneksi http ke komputer komputer A, maka yang akan muncul pada browser adalah website komputer B itu sendiri. Karena fungsi utama target ini adalah membalik so sour ce add ress ress dan d est est inat ion add ress. ress.
Target
Target
ini bekerja pada chain IN PUT, FORWARD dan PREROUTING atau chain buatan yang dipanggil melalui chain tersebut. Beberapa target yang lain biasanya memerlukan parameter tambahan:
a. LOG Target Ada beberapa option yang bisa digunakan bersamaan dengan target ini. Yang pertama adalah yang digunakan untuk menentukan tingkat log. Tingkatan log yang bisa digunakan adalah debug, info, notice, warning, err, crit, alert dan emerg.Yang emerg.Y ang kedua adalah -j LOG -log-prefix yang digunakan untuk memberikan string yang tertulis pada pada awalan log, s ehingga memudahkan pembacaan log tersebut.
iptable iptables ±A FO FORWARD ±p ±p tcp ±j LOG LOG --log-level debug iptable iptables ±A INPUT ±p ±p tcp ±j LOG LOG --log-pref ix ix ³INPUT Pac Packet kets´ b. REJECT Target Secara umum, REJECT bekerja seperti DROP, yaitu memblok paket dan menolak untuk memproses lebih lanjut lanjut paket tersebut. Tetapi, REJECT REJECT akan mengirimkan error messag e ke host pengirim 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 icmp-host-unreachable Ada beberapa tipe pesan yang bisa dikirimkan yaitu icmp-net-unreachable, icmp-hostunreachable, icmp-port-unreachable, icmp-proto-unrachable, icmp -net-prohibited -net-prohibited dan icmp-host-prohibited. c. SNAT Target Target ini berguna untuk melakukan perubahan alamat asal dari paket (Source Network Address Translation). Translation). Target ini berlaku untuk tabel nat p ada chain POSTROUTING, dan hanya di sinilah SNAT bisa dilakukan. dilakukan. Jika paket pe rtama dari sebuah koneksi mengalami
SNAT, maka paket-paket berikutnya dalam koneksi tersebut juga akan mengalami hal yang sama.
iptable iptables ±t nat nat ±A PO POSTRO STROUTING UTING ±o eth eth0 0 ±j SNAT 194.236.50.160:1024 -32000
--to-sour ce
194.236.50.155 -
d. DNAT Target Berkebalikan dengan SNAT, DNAT digunakan untuk melakukan translasi field alamat tujuan (Destination Network Address Translation) Translation) pada header dari paket -paket yang memenuhi kriteria match. DNAT hanya bekerja untuk tabel nat pada chain PREROUTING dan OUTPUT atau chain buatan yang dipanggil oleh kedua chain tersebut.
iptable iptables ±t nat nat ±A PRERO PREROUTING UTING ±p tcp ±d 15.45.23.67 destina tinati tion on 192.168.0.2
--dpor t
80 ±j DNAT
--to-
e. MASQ UERADE UERADE Target Secara umum, target MASQUERADE bekerja dengan cara yang hampir sama seperti target SNAT, tetapi target ini tidak memerlukan option option --to-source. MASQUERADE memang didesain untuk untuk bekerja pada komputer dengan koneksi yang tidak tetap seperti dial -up atau DHCP yang akan memberi pada kita nomor IP y ang berubah-ubah. Seperti halnya pada SNAT, target ini hanya bekerja untuk tabel nat pada chain POSTROUTING.
iptable iptables ±t nat nat ±A PO POSTRO STROUTING UTING ±o ppp0 ppp0 ±j M ASQUERADE f. REDIRECT Target Target REDIRECT digunakan untuk mengalihkan jurusan (redirect) paket ke m es in itu sendiri. Target ini umumnya digunakan untuk mengarahkan paket yang menuju suatu port tertentu untuk memasuki suatu aplikasi proxy, lebih jauh lagi hal ini sangat berguna untuk membangun sebuah sistem jaringan yang menggunakan transparent proxy. Contohnya kita ingin mengalihkan semua koneksi yang menuju port http untuk memasuki aplikasi http proxy misalnya squid. Target ini hanya bekerja untuk tabel nat pada chain PREROUTING dan OUTPUT atau pada chain buatan yang dipanggil dari kedua chain tersebut.
iptable iptables ±t nat nat ±A PRERO PREROUTING UTING ±i eth1 th1 ±p tcp 3128
ALAT & BAHAN
--dpor t
80 ±j REDIRECT
--to -por t
y y y
1 unit PC Virtual Machine OS Windows Server 2003
LANGKAH KERJA 1. Buatlah jaringan seperti topologi topologi pada gambar 1.0
Gambar 1.0
2. Buatlah tabel chain dan rule yang akan diimplementasikan pada topologi topologi yang akan digunakan, seperti tabel 1.0
No.
Chain
Source
IP Address
Port
Protocol
Destination IP Address Port Protocol
Action
1
POST
192.168.1.0/24 192.168.1.0/24
ANY
ANY
ANY
ANY
ANY
MASQUERADE
2
POST
10.200.74.0/24 10.200.74.0/24
ANY
ANY
ANY
ANY
ANY
MASQUERADE
3
FORWARD
1.34.80.0/24
-
ICMP
10.200.74.0/24 10.200.74.0/24
-
ICMP
DROP
4
FORWARD
1.34.80.0/24
-
ICMP
192.168.1.0/24 192.168.1.0/24
-
ICMP
DROP
5
FORWARD
192.168.1.0/24 192.168.1.0/24
ANY
TCP
ANY
80
TCP
DROP
6
FORWARD
192.168.1.0/24 192.168.1.0/24
ANY
TCP
1.34.80.0/24
139
TCP
LOG
7
FORWARD
10.200.74.0/24 10.200.74.0/24
22
TCP TCP
192.168.1.0/24 192.168.1.0/24
22
TCP TCP
DROP
8
FORWARD
10.200.74.0/24 10.200.74.0/24
22
TCP
1.34.80.0/24
22
TCP
LOG
9
FORWARD
ANY
ANY
ANY
ANY
ANY
ANY
ACCEPT
Tabel 1.0
3. Lakukan konfigurasi IP Address Address pada setiap host :
a. Host LAN 1 eth1 Gateway
: 10.200.74.2/24 10.200.74.2/24 : 10.200.74.1 10.200.74.1
b. Host LAN 2 eth1 Gateway
: 192.168.1.2/24 192.168.1.2/24 : 192.168.1.1 192.168.1.1
c. Host LAN 3 eth1 Gateway
: 1.34.80.2/24 : 1.34.80.1
d. Firewall eth1 eth2 eth4 eth5
: 10.200.74.1/24 10.200.74.1/24 : 192.168.1.1/24 192.168.1.1/24 : 1.34.80.1/24 : DHCP
4. Lakukan pengecekan awal bahwa setiap firewall dan sistem packet filtering belum diimplementasikan. diimplementasikan. Artinya antar jaringan masih bebas untuk m elakukan koneksi apapun satu sama lain.
5. Lakukan konfigurasi packet filtering sesuai dengan tabel 1.0 dengan memasukan perintah berikut : a. iptables t nat A POSTROUTING o eth5 j SNAT to 172.16.16.19 172.16.16.19
b. iptables A FORWARD s 1.34.80.0/24 p icmp d 10.200.74.0/24 j DROP c. iptables A FORWARD s 1.34.80.0/24 p icmp d 192.168.1.0/24 j DROP
d. iptables A FORWARD s 192.168.1.0/24 p tcp d 0/0 --dport 80 j L OG e. iptables A FORWARD s 192.168.1.0/24 p tcp d 1.34.80.0/24 --dport 139 j LOG
f.
iptables A FORWARD s 10.200.74.0/24 p tcp d 1.34.80.0/24 --dport 22 -j LOG g. iptables A FORWARD s 10.200.74.0/24 -p tcp -d 192.168.1.0/24 --dport 22 j DROP
h. iptables -A FORWARD -s 0/0 -d 0/0 -j ACCEPT
6. Lakukan pengetesan terhadap jaringan yang sudah terkonfigurasi firewall dan packet filteringnya.
HASIL PENGAMATAN 1. Kondisi jaringan dan koneksi antar host sebelum firewall dan packet filtering diimplementasikan diimplementasikan : a. Host LAN 1 y
Tidak adanya koneksi ke Internet
y
SSH ke jaringan 192.168.1.0/24
y
SSH ke j aringan 1.34.80.0/24
b. Host LAN 2 y
Tidak adanya koenksi ke internet
y
Melakukan file sharng Samba dengan jaringan 192.168.1.0/24
c. Host LAN 3 y
Tidak adanya koneksi internet
y
Melakukan pinging ke jaringan 10.200.74.0/24
y
Melakukan pinging ke jaringan 192.168..0/24
d. Firewall y
Tabel IP Filter sebelum konfigurasi packet filtering
2. Kondisi jaringan dan koneksi antar host setelah firewall dan packet filtering diimplementasikan diimplementasikan : a. Host LAN 1 y
Adanya koneksi ke Internet
y
Tidak bisa SSH ke jaringan 192.168.1.0/24 192.168.1.0/24
y
SSH ke jaringan 1.34.80.0/24 dan kegia tan dicatat oleh firewall
b. Host LAN 2 y
Adanya koenksi ke internet tapi tidak bisa melakukan browsing
y
Melakukan file sharng Samba dengan jaringan 192.168.1.0/24 dan kegiatan dicatat oleh firewall
c. Host LAN 3 y
Adanya koneksi internet
y
Tidak bisa melakukan pinging ke jaringan 10.200.74.0/24
y
Tidak bisa melakukan pinging k e jaringan 192.168..0/24
d. Firewall y
Tabel IP Filter sesudah konfigurasi packet filtering
KESI MPULAN y
Jika action yang akan digunakan pada suatu chain, adalah ACCEPT maka default chain terakhir harus DROP, begitu pula sebaliknya. sebaliknya. Jadi, tidak boleh ada action pada suatu chain yang sama dengan action chain pada default terakhir.
y
Peraturan yang akan disusun pada IP filter, dilihat dari prioritas keamanan yang akan diimplementasikan.
y
Chain default harus selalu disertakan di akhir tabel IP filter.