Kamis, 20 Desember 2012

Setting Firewall Menggunakan IPTables di Linux


Oke, kali ini saya akan membahas tentang Setting Firewall menggunakan IPTables di Linux.
Masih ada teman-teman yang belum tau apa itu firewall?
Firewall itu sebenarnya berfungsi sama dengan dinding yang melindungi sesuatu di dalam dinding tersebut.  Nah firewall berfungsi untuk melindungi komputer atau jaringan dari akses komputer lain yang tidak memiliki hak untuk mengakses komputer atau jaringan kita.
Jadi firewall ini melindungi jaringan dan sekaligus melindungi komputer di dalam jaringan tersebut. Akses yang dimaksud adalah akses remote dari komputer lain. Seperti kita ketahui sistem operasi seperti windows dan unix memiliki kemampuan jaringan yaitu menghubungkan dua atau lebih komputer untuk saling berkomunikasi dan menggunakan sumber daya jaringan seperti printer, scanner dan alat-alat lainnya termasuk koneksi internet.



http://upload.wikimedia.org/wikipedia/commons/thumb/5/5b/Firewall.png/300px-Firewall.png
Gambar 1.Ilustrasi mengenai Firewall dalam sebuah jaringan komputer

 Firewall itu sendiri terdiri dari dua jenis yaitu:
1. Personal Firewall :  Personal Firewall didesain untuk melindungi sebuah komputer yang terhubung ke jaringan dari akses yang tidak dikehendaki. Firewall jenis ini akhir-akhir ini berevolusi menjadi sebuah kumpulan program yang bertujuan untuk mengamankan komputer secara total, dengan ditambahkannya beberapa fitur pengaman tambahan semacam perangkat proteksi terhadap virus, anti-spyware, anti-spam, dan lainnya. Bahkan beberapa produk firewall lainnya dilengkapi dengan fungsi pendeteksian gangguan keamanan jaringan (Intrusion Detection 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 Firewall secara umum hanya memiliki dua fitur utama, yakni Packet Filter Firewall dan Stateful Firewall.

2. 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 dalam sebuah server. Contoh dari firewall ini adalah Microsoft Internet Security and Acceleration Server (ISA Server), Cisco PIX, 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), Circuit Level Gateway, Application Level Gateway, dan juga NAT Firewall. Network Firewall umumnya bersifat transparan (tidak terlihat) dari pengguna dan menggunakan teknologi routing untuk menentukan paket mana yang diizinkan, dan mana paket yang akan ditolak.

Fungsi-fungsi Firewall antara lain :
1. 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 oleh firewall. Firewall melakukan hal yang 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.

2. Melindungi sumber daya dalam jaringan privat
      Salah satu tugas firewall adalah melindungi sumber daya dari ancaman yang mungkin datang. Proteksi ini dapat diperoleh dengan menggunakan beberapa pengaturan peraturan akses (access control), penggunaan SPI, application proxy, atau kombinasi dari semuanya untuk mengamankan host yang dilindungi supaya tidak dapat diakses oleh host-host yang mencurigakan atau dari lalu lintas jaringan yang mencurigakan. Meskipun demikian, firewall bukan satu-satunya metode proteksi teraman terhadap sumber daya, dan mempercayakan proteksi firewall dari ancaman secara eksklusif adalah salah satu kesalahan fatal.

3. Applikasi proxy Firewall mampu memeriksa lebih dari sekedar header dari paket data, kemampuan ini menuntut firewall untuk mampu mendeteksi protokol aplikasi tertentu yang spesifikasi.

4. Mencatat setiap transaksi kejadian yang terjadi di firewall. Ini Memungkinkan membantu sebagai pendeteksian dini akan penjebolan jaringan.

Nah, sekarang teman-teman sudah tau kan apa itu firewall, fungsinya buat apa dan juga jenis firewall itu sendiri. Sekarang kita akan ngebahas tentang salah satu firewall paling popular dan udah langsung disedia-in di sistem operasi linux yaitu IPTables.

Apa itu IPTables?

Iptables adalah suatu tools dalam sistem operasi linux yang berfungsi sebagai alat untuk melakukan filter (penyaringan) terhadap (trafic) lalulintas data. Secara sederhana digambarkan sebagai pengatur lalulintas data. Dengan iptables inilah kita akan mengatur semua lalulintas dalam komputer kita, baik yang masuk ke komputer, keluar dari komputer, ataupun traffic yang sekedar melewati komputer kita, dan juga berfungsi untuk merawat dan memeriksa rules tables (tabel aturan) tentang filter paket IP yang terdapat di kernel linux.


Berikut ini perintah-perintah yang dipakai di IPTables :

Untuk melihat apakah di dalam sistem kita sudah terinstal paket-paket iptables, ketikkan perintah berikut:
# rpm -qa | grep iptables
Jika memang belum terinstal, ketikkan perintah berikut:
# yum -y install iptables*
Agar iptables dapat berjalan otomatis setelah restart, gunakan perintah:
# chkconfig iptables on
Untuk melihat status iptables, gunakan perintah:
# service iptables status
Untuk menyalakan iptables, gunakan perintah:
# /etc/init.d/iptables start
Untuk mematikan iptables, gunakan perintah:
# /etc/init.d/iptables stop
Untuk merestart iptables, gunakan perintah:
# /etc/init.d/iptables restart
Sebelum melangkah lebih lanjut, pastikan firewall di sistem kita di enable yaitu dengan cara ketik setup lalu pilih Firewall configuration.
Setelah itu, pada bagian Security Level beri tanda bintang pada item Enabled lalu pilih tombol OK.


Lalu berikut ini adalah alur paket data yang terdapat pada IPTables :
membahas prinsip dasar firewall iptables, mengelola akses internet berdasarkan alamat IP,port aplikasi dan MAC address. Firewall IPTables packet filtering memiliki tiga aturan (policy), yaitu:
       1.  INPUT
Mengatur paket data yang memasuki firewall dari arah intranet maupun internet. kita bisa mengelolakomputer mana saja yang bisa mengakses firewall. misal: hanya komputer IP 192.168.1.100 yang bisa SSHke firewall dan yang lain tidak boleh.
       2.  OUTPUT
Mengatur paket data yang keluar dari firewall ke arah intranet maupun internet. Biasanya output tidak diset,karena bisa membatasi kemampuan firewall itu sendiri.
       3.  FORWARD
Mengatur paket data yang melintasi firewall dari arah internet ke intranet maupun sebaliknya. Policy forward paling banyak dipakai saat ini untuk mengatur koneksi internet berdasarkan port, mac address dan alamat IP Selain aturan (policy) firewall iptables juga mempunyai parameter yang disebut dengan TARGET, yaitu status yang menentukkan koneksi di iptables diizinkan lewat atau tidak. TARGET ada tiga macam yaitu:
a. ACCEPT
Akses diterima dan diizinkan melewati firewall
b. REJECT
Akses ditolak, koneksi dari komputer klien yang melewati firewall langsung terputus, biasanya terdapatpesan “Connection Refused”. Target Reject tidak menghabiskan bandwidth internet karena akses langsung ditolak, hal ini berbeda dengan DROP.
c. DROP
Akses diterima tetapi paket data langsung dibuang oleh kernel, sehingga pengguna tidak mengetahui kalau koneksinya dibatasi oleh firewall, pengguna melihat seakan – akan server yang dihubungi mengalami permasalahan teknis. Pada koneksi internet yang sibuk dengan trafik tinggi Target Drop sebaiknya jangan digunakan.

1. a. Memblok paket yang datang dari sebuah IP
# iptables -I INPUT -s 192.168.0.149 -j REJECT
Peritah di atas digunakan untuk memblok paket dari IP 192.168.0.149. Ada 2 opsi yang digunakan sebenarnya yaitu DROP dan REJECT. Perbedaan dari keduanya adalah kalau REJECT, perintah ini akan memblok paket namun akan memberitahukan bahwa paket tersebut ditolak. Sedangkan kalau DROP, perintah ini akan memblok paket namun tidak diberitahu apakah paket tersebut
b. Memblok paket yang keluar dari sebuah IP
iptables -A OUTPUT -p tcp -d 192.168.10.2 -j DROP

2.Menutup Port
# iptables -A INPUT -p tcp  --dport 22 -j REJECT
Perintah di atas memblok port 22 yang biasa digunakan untuk ssh
# iptables -A INPUT -p tcp -i eth0 --dport 23 -j REJECT
Perintah di atas memblok port 22 yang biasa digunakan untuk telnet
# iptables -I INPUT -s 192.168.0.250 -p tcp --dport 23 -j REJECT
Perintah di atas untuk memblok service telnet dari IP 192.168.0.250
3. Membuat Dropped Log file.
iptables -A INPUT -m limit --limit 5/min -j LOG --log-prefix "PORT 80 DROP: " --log-level 7
iptables -A INPUT -p tcp --destination-port 80 -j DROP
4. Menghapus iptables
#  iptables -D INPUT 3
Menghapus iptables pada tabel input di baris ke 3
# iptables -F
Menghapus seluruh iptables
# iptables -F FORWARD

0 komentar:

Posting Komentar