Firewall itu…

Selamat pagi 🙂

Pada kesempatan kali ini saya ingin sedikit berbagi dan mengajak para pembaca untuk belajar sedikit tentang masalah security. Dalam kaitannya dengan keamanan jaringan, sudah banyak kasus-kasus kejahatan di dalam dunia cyber ini. Terbobolnya suatu sistem bisa dikarenakan oleh lalainya seorang sistem administrator dalam menjaga sistemnya, dan tentunya rawannya sistem akan celah yang ada ketika sistem memang belum terupdate dengan baik. Maka dari itu, dikenalkan suatu sistem atau bisa kita katakan sebuah proses untuk menjaga sistem dari sebuah serangan, yaitu firewall. Banayak yang mengatakan firewall ini adalah suatu sistem keamanan, tetapi sebagian orang mengatakan firewall ini adalah sebuah “proses” untuk menuju amannya sebuah sistem.

Firewall sendiri adalah sebuah sistem atau perangkat yang mengizinkan lalu lintas jaringan yang dianggap aman untuk melaluinya dan mencegah lalu lintas jaringan yang tidak aman. Biasanya diterapkan pada sebuah gerbang (gateway), penghubung antara jaringan luar dan jaringan lokal. Lebih tepatnya firewall ini diterapkan untuk mengontrol sebuah akses, hal apa saja yang bisa terjadi, dan hal apa saja yang tidak boleh terjadi, koneksi apa saja yang dapat dilakukan, dan koneksi mana saja yang dilarang untuk dilakukan serta diimplementasikan dalam sebuah sistem. Untuk fungsi-fungsi firewall pada umumnya adalah

– Mengatur dan mengontrol lalu lintas jaringan
– Melakukan autentikasi terhadap akses
– Melindungi sumber daya dalam jaringan privat
– Mencatat semua kejadian yang telah terjadi dalam sebuah sistemnya

Hal-hal di atas adalah sekilas tentang firewall. Firewall sendiri ada yang merupakan perangkat keras (hardware), ada juga yang merupakan perangkat lunak (software). Untuk contoh-contoh firewall yang berbentuk hardware adalah Cisco ASA 5505 (ASA5505-UL-BUN-K9) Firewall, SonicWall Network Security Appliance 2400 (01-SSC-7020) Firewall, dll. Biasanya biaya yang dibutuhkan untuk mengeset firewall berbentuk hardware ini sangat mahal, harganya mencapai jutaan, bahkan mencapai ratusan juta. Tetapi ada juga firewall yang bisa kita pakai dengan bebas / free, dan firewall ini berbentuk perangkat lunak (software), contoh-contoh aplikasi dari firewall yang berbentuk software ini adalah iptables, pf, shorewall, dll. Banyak yang menggunakan yang berbentuk software, karena selain free, firewall akan bisa digunakan juga dengan efektif. Kita bebas menentukan rule yang akan kita masukkan dalam sebuah sistem.

IMPLEMENTASI

Setelah kita membuka sedikit pandangan kita tentang firewall itu, saya akan mencoba untuk memberikan sedikit contoh bagaimana mengeset rule/aturan pada sistem dengan menggunakan aplikasi iptables pada linux (karena saya tidak mau menghambur-hamburkan uang demi sebuah postingan, maka dari itu saya memakai barang-barang yang free saja untuk mendukung terbentuknya sebuah tulisan ini :D). Sebenarnya dengan menggunakan iptables ini, lebih tepatnya bisa dibilang kita membuat aturan-aturan yang diterapkan pada sebuah sistem. Pada kasus kali ini,saya menggunakan 3 komputer dengan 2 level IP address yang berbeda (distro linux yang dipakai adalah debian (komputer A dan B) dan slackware (komputer C))

10.6.1.xxx (WAN)
192.168.0.xxx (LAN)

kita mempunyai 3 komputer dengan ip sebagai berikut

komputer A (komputer gateway)

fire:~# ifconfig | sed -n ‘1,2p’ && ifconfig | sed -n ‘10,11p’
eth0      Link encap:Ethernet  HWaddr 00:18:51:01:c0:33
inet addr:10.6.1.25  Bcast:10.6.1.255  Mask:255.255.0.0
eth1      Link encap:Ethernet  HWaddr 00:0c:29:81:73:d1
inet addr:192.168.0.5  Bcast:192.168.0.255  Mask:255.255.255.0

komputer B

water:~# ifconfig | sed -n ‘1,2p’
eth0      Link encap:Ethernet  HWaddr 00:e0:81:49:ae:ad
inet addr:10.6.1.26  Bcast:10.255.255.255  Mask:255.0.0.0

komputer C :

root@comp-share:/home/linx# ifconfig | sed -n ‘1,2p’
eth0      Link encap:Ethernet  HWaddr 90:fb:a6:40:46:27
inet addr:192.168.0.171  Bcast:192.168.0.255  Mask:255.255.255.0

Lalu kita akan mencoba mengeset komputer A untuk menjadi gateway dengan mengatur ip forward dan pemaskeran untuk semua yang akan menjadi klien. Oia, sebelumnya harus diingat bahwa semua command yang dilakukan harus menggunakan akses root. Pada komputer A kita tulis command berikut :

fire:~# echo 1 > /proc/sys/net/ipv4/ip_forward
fire:~# iptables -t nat -A POSTROUTING -o eth0 -s ‘192.168.0.0/24’ -j MASQUERADE

Pada command pertama kita meng-enable forwarding ip pada komputer, lalu pada command kedua kita set pemaskeran untuk routing keluar pada sumber koneksi range IP 192.168.0.0-192.168.0.255. Kita dapat melihat rule yang telah kita set pada iptables.

fire:~# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
MASQUERADE  all  —  192.168.0.0/24       0.0.0.0/0               <—- hasil command iptables yang tadi

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Setelah itu karna komputer C hanya mempunyai ip lokal yang tidak bisa melakukan koneksi keluar,kita set dulu gateway pada komputer C.

root@comp-share:/home/linx# route add default gw 192.168.0.5
root@comp-share:/home/linx# ping 10.6.1.25
PING 10.6.1.25 (10.6.1.25) 56(84) bytes of data.
64 bytes from 10.6.1.25: icmp_req=1 ttl=64 time=0.260 ms

Maka komputer C sekarang menjadi client dari komputer A. Lalu kita akan mencoba mengatur rule lebih lanjut pada komputer A, yaitu hanya bisa di ping dari dalam saja, atau dari ip lokal saja, sehingga pada komputer yang berada pada WAN tidak bisa melakukan ping pada komputer A.

fire:~# iptables -A INPUT -s ‘192.168.0.0/24’ -p icmp –icmp-type 8 -j ACCEPT
fire:~# iptables -A INPUT -p icmp –icmp-type 8 -j REJECT

Lalu kita mencoba melakukan ping dari komputer B yang berada pada WAN.

water:~# ping 10.6.1.25
PING 10.6.1.25 (10.6.1.25) 56(84) bytes of data.
From 10.6.1.25 icmp_seq=1 Destination Port Unreachable

Lalu kita coba melakukan ping dari komputer C yang berada pada LAN.

root@comp-share:/home/linx# ping 192.168.0.5
PING 192.168.0.5 (192.168.0.5) 56(84) bytes of data.
64 bytes from 192.168.0.5: icmp_req=1 ttl=64 time=0.269 ms

Yak, rule pada iptables telah berjalan dengan baik. Jadi secara garis besar bisa dijelaskan seperti ini, kita buka dulu jalan untuk komputer yang mempunyai range ip 192.168.0.0-192.168.0.255 untuk melakukan ping pada komputer A, lalu setelah itu baru kita tutup jalur ping selain dari sumber itu.

Di atas adalah sedikit contoh dari implementasi firewall menggunakan iptables, sebenarnya masih banyak hal-hal lain yang bisa kita implementasikan untuk menjadikan sebuah sistem menjadi sistem yang relatif aman atau secure untuk menahan berbagai serangan yang semakin kompleks. Namun terlalu banyak untuk saya tuliskan di sini dan pastinya masih terlalu sedikit pengetahuan saya untuk bisa saya bagikan 😀

Atas segala kurangnya, saya mohon maaf, dan untuk segala perhatiannya, terima kasih. Sampai jumpa 🙂

referensi :
http://cyberciti.biz
http://id.wikipedia.org

You may also like

Leave a Reply

Your email address will not be published. Required fields are marked *