Berikut ini adalah langkah- langkah yang diperlukan dalam membangun sebuah firewall:
1. Menentukan topologi jaringan yang akan digunakan.
2. Menentukan kebijakan atau policy.
3. Menentukan aplikasi – aplikasi atau servis-servis apa saja yang akanberjalan.
4. Menentukan pengguna-pengguna mana saja yang akan dikenakan oleh satuatau lebih aturan firewall.
5. Menerapkan kebijakan, aturan, dan prosedur dalam implementasi firewall.
6. Sosialisasi kebijakan, aturan, dan prosedur yang sudah diterapkan.
Berikut ini diberikan contoh penerapan iptables pada firewall. Konfigurasi network yang digunakan untuk contoh diilustrasikan pada gambar 11.14.
Pada gambar di atas terdapat suatu firewall yang mempunyai dua antar muka. Firewall berhubungan dengan jaringan internet melalui antar muka eth0 danberhubungan dengan jaringan privat melalui antar muka eth1. Kadang-kadang firewall berhubungan dengan jaringan internet menggunakan modem, dalam halini antarmuka eth0 dapat diganti dengan ppp0.
Kemampuan pertama yang harus di miliki firewall adalah melakukan forward IP Address dari antarmuka eth0 menuju antarmuka eth1 dan sebaliknya dari antarmuka eth1 menuju antarmuka eth0. Caranya adalah dengan memberi nilai 1 pada parameter ip_forward dengan perintah.
# echo ”1” >/proc/sys/net/ipv4/ip_forward
Dalam beberapa variant Linux dilakukan dengan memberi baris konfigurasi pada file /etc/sysconfig/network.
MEMBUAT INISIALISASI
Inisialisasi aturan iptables digunakan untuk membuat kebijakan umum terhadap rantai Iptables yang akan di terapkan pada firewall. Kebijakan ini akan di terapkan jika tidak ada aturan yang sesuai. Kebijakan umum yang diterapkan dalam suatu firewall umumnyaadalah sebagai berikut:
1. Kebijakan untuk membuang semua paket yang menuju, melintas dan keluar darifirewall.
# iptables –p input DROP
# iptables –p forward DROP
# iptables –p output DROP
2. Kebijakan untuk menerima semua paket yang menuju dan meninggalkanperangkat loopback.
# iptables – A INPUT – i lo – j ACCEPT
# iptables – A OUTPUT– o lo – j ACCEPT
3. Kebijakan menerima semua paket sebelum mengalami routing.
# iptables – t nat – p POSTROUTING – j ACCEPT
# iptables – t nat – p PREROUTING – j ACCEPT
MENGIJINKAN LALU-LINTAS PAKET ICMP
Paket ICMP biasanya digunakan untuk menguji apakah suatu peralatan jaringan sudahterhubung secara benar dalam jaringan. Biasanya untuk menguji apakah suatu peralatansudah terhubung secara benar dalam jaringan dapat dilakukan dengan perintah ping.
Perintah ini akan mencoba mengirim paket ICMP ke alamat IP tujuan dan menggunakan tanggapan dari alamat IP tersebut. Untuk memberikan keleluasaan keluar, masuk dan melintasnya paket ICMP diterapkan dengan aturan tersebut.
# iptables – A INPUT –p icmp -j ACCEPT
# iptables – A FORWARD –p icmp -j ACCEPT
# iptables – A OUPUT –p icmp -j ACCEPT
Maksud perintah di atas adalah sebagai berikut:
1.Firewall mengijinkan paket ICMP yang akan masuk.
2.Firewall mengijinkan paket ICMP yang akan melintas.
3.Firewall mengijinkan paket ICMP yang akan keluar.
Perintah ketiga ini memungkinkan firewall untuk mananggapi paket ICMP yang dikirimke firewall. Jika perintah ketiga tidak diberikan, maka firewall tidak dapat mengirim keluar tanggapan paket ICMP.
Catatan :
Kadang-kadang paket ICMP digunakan untuk tujuan yang tidak benar, sehingga kadang-kadang firewall ditutup untuk menerima lalu lintas paket tersebut. Jika firewall tidak diijinkan untuk menerima lalu lintas paket ICMP, maka perintah diatas tidak perlu dicantumkan.
MENGIJINKAN PAKET SSH MASUK FIREWALL
Untuk mengkonfigurasi komputer dalam jaringan, biasanya dilakukan secara jarak jauh. Artinya pengelolaan tidak harus datang dengan berhadapan dengan komputer tersebut.Termasuk dalam hal ini untuk pengelolaan firewall. Untuk mengelola firewall dari jarak jauh, dapat digunakan program SSH.
Program SSH menggunakan paket TCP dengan port 22 untuk menghubungkan antara duakomputer. Oleh sebab itu firewall harus mengijinkan paket dengan tujuan port 22 untuk masuk ke firewall. Firewall juga harus mengijinkan paket yang berasal dari port 22untuk keluar dari firewall. Berikut ini perintah yang diterapkan untuk mengijinkan akses SSH melalui antarmuka eth1 yaitu dari jaringan privat.
# iptables – A INPUT –p tcp –dport 22 –i eth1 -j ACCEPT
# iptables – A OUTPUT –p tcp –sport 22 –o eth1 -j ACCEPT
# iptables – A INPUT –p tcp –dport 22 –i eth1 -j ACCEPT
# iptables – A OUTPUT –p tcp –sport 22 –o eth1 -j ACCEPT
Maksud dari perintah di atas adalah sebagai berikut:
1. Firewall mengijinkan masuk untuk paket TCP yang punya tujuan port 22 melaluiantarmuka eth1.
2. Firewall mengijinkan keluar untuk paket TCP yang berasal dari port 22 melaluiantarmuka eth1.
Aturan tersebut memungkinkan akses SSH hanya dari jaringan privat melalui antarmuka eth1. Untuk alasan keamanan, akses SSH dari jaringan privat dapat dibatasi untuk aksesyang hanya berasal dari alamat jaringan tertentu atau bahkan dari komputer tertentu(input). Hal ini dilakukan dengan menambah opsi –s diikuti alamat jaringan atau alamatIP pada perintah pertama.
# iptables – A INPUT –s 202.51.226.37 –p tcp –dport 22 –i eth1 -j ACCEPT
Sintaks diatas adalah aturan yang akan menerima input paket TCP pada eth1 yang berasaldari alamat IP 202.51.226.37 dengan tujuan port 22.
MENGIJINKAN AKSES HTTP MELINTAS FIREWALL
Akses http merupakan protokol yang paling banyak digunakan untuk berselancar diinternet. Informasi yang disajikan pada internet umumnya menggunakan akses
http ini.
Akses http menggunakan port 80 dengan jenis paket TCP.Firewall biasanya mengijinkan akses http terutama yang melintas firewall baik yangkeluar atau masuk jaringan privat. Akses http yang keluar jaringan privat digunakanuntuk memberi akses http bagi komputer yang berada di jaringan privat. Sedangkan akses http dari internet terjadi apabila pada jaringan privat terdapat server web yang dapatdiakses dari jaringan internet.
Penerapan aturan iptables untuk mengijinkan akses http adalah sbb :
# iptables – A FORWARD –p tcp –dport 80 –i eth1 -j ACCEPT
# iptables – A FORWARD –p tcp –sport 80 –o eth1 -j ACCEPT
# iptables – A FORWARD –p tcp –dport 80 –i eth0 -j ACCEPT
# iptables – A FORWARD –p tcp –sport 80 –o eth0 -j ACCEPT
Maksud dari perintah di atas adalah sebagai berikut:
1. Firewall mengijinkan melintas untuk paket TCP yang punya tujuan port 80melalui antarmuka eth1.
2. Firewall mengijinkan melintas untuk paket TCP yang punya asal port 80 melaluiantarmuka eth1.
3. Firewall mengijinkan melintas untuk paket TCP yang punya tujuan port 80melalui antarmuka eth0.
4. Firewall mengijinkan melintas untuk paket TCP yang punya asal port 80 melaluiantarmuka eth0.
Perintah pertama dan kedua digunakan untuk mengijinkan akses http yang berasal dari jaringan privat, sedangkan perintah ketiga dan keempat digunakan untuk mengijinkanakses http yang berasal dari internet. Keempat perintah tersebut dapat diganti dengan satu perintah menggunakan opsi multiport sebagai berikut :
# iptables – A FORWARD –p tcp –m multiport --port 80 -j ACCEPT
Perintah tersebut menyatakan bahwa firewall mengijinkan paket TCP yang punya port 80(tujuan / asal) untuk melintas (dari eth0 atau eth1).
MENGIJINKAN QUERY SERVER DNS
Firewall biasanya mempunyai minimal satu alamat IP untuk server DNS. Untuk queryserver DNS digunakan paket UDP melalui port 53. Firewall memerlukan query server DNS untuk menentukan alamat IP yang berhubungan dengan suatu nama host. Queryserver DNS pada firewall ini biasanya diijinkan untuk query server DNS keluar firewall(baik via eth0 atau eth1) dan query server DNS melintasi server firewall. Aturan Iptables yang diterapkan untuk mengijinkan query sever DNS keluar dari firewall adalah sebagai berikut :
# iptables – A OUTPUT –p udp –dport 53 –o eth1 -j ACCEPT
# iptables – A INPUT –p udp –dport 53 –i eth1 -j ACCEPT
# iptables – A OUTPUT –p udp –dport 53 –o eth0 -j ACCEPT
# iptables – A INPUT –p udp –dport 53 –i eth0 -j ACCEPT
Tidak ada komentar:
Posting Komentar