Dellah Piero


Firewall di warnet
June 25, 2007, 2:38 pm
Filed under: About my job

Sebuah warnet mempunyai beberapa komputer klien yang saling terhubung lewat jaringan. Server kita bisa kita gunakan sebagai pintu gerbang (router/gateway) untuk menyambungkan semua komputer klien ke internet. Sebuah router/gateway dapat berfungsi pula untuk mengamankan jaringan kita dari ancaman dunia luar, karena untuk masuk ke dalam jaringan kita, seorang hacker harus berhasil mengecoh server/gateway sehingga bisa masuk ke dalam jaringan kita.
Telah kita ketahui bersama bahwa klien diberi alamat private, yang artinya alamat tersebut tidak boleh (bisa) keluar. Agar klien dapat mengakses internet, maka nomor Ipnya harus diubah sehingga yang muncul bukan IP privatenya, tetapi IP realnya. Hal tersebut dinamakan Masquerading. Aplikasi firewall yang digunakan adalah ipfwadm, ipchains, dan ipfw. Untuk linux kernel 2.2.xx digunakan ipchains, sedangkan untuk 2.0.xx digunakan ipfwadm, ipfw digunakan oleh freeBSD, dan IP Tables digunakan untuk kernel 2.4.x.
Konfigurasi Kernel
Kernel harus dikompile supaya mendukung masquerade, firewall. Caranya adalah sebagai berikut:

Networking options:

Network firewalls y

IP:Firewalling y

IP:TCP syncookie support y

IP:masquerading y

IP:ICMP masquerading y

Selanjutnya di file /etc/sysconfig/network
#enabling packet forwarding
net.ipv4.ip_forward = 1
Selanjutnya kita harus mendetect (modprobe nama_modul) modul-modul masquarade yang ada di /lib/modules/2.2.x.x/ipv4/ :
ip_masq_autofw.o
ip_masq_cuseeme.o
ip_masq_ftp.o
ip_masq_irc.o
ip_masq_mfw.o
ip_masq_portfw.o
ip_masq_quake.o
ip_masq_raudio.o
ip_masq_user.o
ip_masq_vdolive.o
Supaya siap setiap kali restart, maka perlu kita tempatkan di /etc/rc.local dengan sbb:
Insmod /lib/modules/2.2.17-5mdk/ip_masq_irc.o dan dibawahnya dilanjutkan dengan modul berikutnya

Konfigurasi Ipchains
Pertama-tama kita harus menginstall paket, yaitu
# rpm –ivh ipchains-1.3.9-8mdk.i586
Daemonnya adalah /etc/rc.d/init.d/ipchains start|stop|status
Konfigurasinya ada di /etc/sysconfig/firewall
Tool /sbin/ipchains digunakan untuk memasukkan dan menghapus semua aturan yang dinamakan chains. Secara default mempunyai 3 aturan, yaitu:
Chains input, yang diterpakan pada paket yang datang, sebelum dilewatkan ke bagian lain dari network kita
Chains output, yang diterpakan ke paket sebelum keluar dari jaringan kita
Chains forward, diterapkan pada paket yang lewat chains input , jika memenuhi kriteria tertentu maka paket tersebut dilewatkan ke suatu port atau host (misalnya transparent proxy)

Jika sebuah paket lewat, maka paket tersebut akan di tes seuai dengan chains yang ada, apabila sampai baris terakhir lolos, maka paket tersebut boleh lewat.
Target, ketentuan apa yang dilakukan terhadap paket yang cocok
Target ada 6, yaitu:
Accept, paket boleh lewat
Deny, paket tidak boleh lewat, tanpa pemberitahuan
Reject, paket ditolak dengan pemberitahuan
Redirect, mengirim paket ke suatu port, diikuti dengan nomor port yang dituju
Return, mengirim ke bagian akhir dari chains

Selain diatas terdapat perintah untuk menambah chains, yaitu
-A chain menambah aturan chains
-D chain [nomor rule) menghapus aturan chains
-I chain [nomor rule] memasukkan aturan ke chains sebelum nomor rule
-R chain [nomor rule] mengganti nomor rule
-F chain flush, yaitu menghapus semua chains
-L chain menampilkan chains
-N chain membuat chain baru (user defined chain)
-X chain menghapus chain yang dibuat (user defined chains)
-P chain target mengeset target default ke suatu target

Selain itu terdapat options untuk ipchains
-s [alamat/mask] | [port :port] asal paket
-d [alamat/mask] [port:port] alamat tujuan paket
-I interface dari dan ke interface
-p protocol paket protokol
-j target [port] target
–icmp-type type tipe icmp, hanya untuk rule yang menerapkan –p icmp
-l log paket ke syslog
! kependekan dari not, bisa diterapkan misalnya –p ! icmp, berarti untuk semua paket selain icmp

CONTOH PENERAPAN
Ipchains –A forward –s 172.20.102.0/24 –d 0.0.0.0/0 –j MASQ

Artinya bahwa semua paket yang berasal dari network 172.16.0.0/255.255.255.0 menuju ke mana saja (keluar), maka seolah-olah berasal dari IP realnya. Konfigurasi ini dinamakan IP Masquerading.
Jika interface eth1 kita beri alamat 172.20.102.1, dan terhubung dengan komputer lain di network 172.20.102.0/24., sehingga semua paket yang berasal dari network itu yang lewat eth1 boleh keluar, sedangkan yang bukan berasal dari eth1 (Ip spoofing) ditolak.
Ipchains –A output –s 172.20.102.0/24 –i eth1 –d 0.0.0.0/0 –j ACCEPT
Ipchains –A output –s 172.102.20.0/24 –i ! eth1 –d 0.0.0.0/0 –j REJECT
Untuk menghilangkan semua rule kita bisa menggunakan ipchains –F
Dan untuk menyimpan konfigurasi kita, sehingga bisa dibaca lagi oleh daemon ipchains, maka :
Ipchains-save > /etc/sysconfig/ipchains

Penerapan Ipchains di warnet
Warnet hanya membutuhkan ipchains untuk penerapan teknik IP masquerading.

Advertisement

Leave a Comment so far
Leave a comment



Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s



Follow

Get every new post delivered to your Inbox.