click to generate your own textclick to generate your own textclick to generate your own textclick to generate your own textclick to generate your own textclick to generate your own textclick to generate your own textclick to generate your own textclick to generate your own textclick to generate your own textclick to generate your own textclick to generate your own text

Sabtu, 23 Januari 2010

Apabila anda sudah menggunakan internet untuk beberapa waktu, dan terutama jika anda bekerja di perusahaan yang besar dan browse internet di tempat kerja, anda mungkin sudah mendengar istilah firewall. Sebagain contohnya, anda sering mendengar orang bilang, “Saya tidak bisa ke situs itu sebab mereka tidak mengijinkan melalui firewall.”

Jika anda mempunyai hubungan internet yang cepat di rumah (seperti DSL atau kabel modem), anda juga mendengar tentang menggunakan firewall untuk network diperumahan. Kenyataannya, network perumahan mempunyai masalah keamanan yang sama dengan perusahaan besar. Anda bisa menggunakan firewall untuk melindungi network perumahan dan keluarga dari serangan situs web dan potensi para hacker.

Pada dasarnya, firewall itu seperti dinding pemisah untuk menghalangi tenaga yang merusak jauh dari rumah kita. Sebenarnya, dinding yang disebut firewall didirikan untuk menghalangi api untuk menyebar dari satu tempat ke tempat lain.

Fungsi Firewall

Firewall adalah perangkat lunak atau keras yang menyaring (filter) informasi yang masuk melalui koneksi internet ke network privat atau sistem komputer. Jika paket informasi yang masuk ditandai oleh filter, paket itu tidak boleh masuk lebih dalam dan harus disingkirkan.

Misalkan anda bekerja di perusahaan dengan 500 pekerja. Jadi perusahaan itu mempunyai ratusan komputer yang dihubungkan dengan kartu network. Perusahaan ini juga mempunyai koneksi ke internet melalui T1 atau T3 (semacam kabel modem tapi untuk perusahaan besar). Tanpa menggunakan firewall, ratusan komputer ini akan berhubungan langsung dengan internet. Hacker bisa menganalisa komputer yang dipakai oleh akuntan, misalnya, lalu berusaha membuat koneksi ke komputer tadi melalui FTP, telnet, atau cara lain. Jika satu pekerja membuat kesalahan dan membuka lubang untuk hacker bisa masuk, hacker ini akan mengkontrol komputer tersebut.

Dengan firewall, keadaannya akan sangat berubah. Perusahaan ini memasang firewall ditiap koneksi ke internet (misalnya, ditiap T1 yang masuk ke perusahaan). Di firewall ini bisa dipasang peraturan sekuriti, misalnya:

    Dari 500 komputer di perusahaan ini, hanya satu yang diperbolehkan untuk menerima lalu-lintas FTP. Komputer lain harus berubungan dengan komputer ini untuk menggunakan fasilitas FTP.

Perusahaan bisa membuat peraturan seperti diatas untuk FTP server, Web server, Telnet server dan lain-lain. Perusahaan bisa juga mengkontrol bagaimana pekerjanya mengakses ke situs internet, apa boleh mengirim file keluar dari perusahaan melalui network, dll. Firewall menggunakan satu atau lebih metoda untuk mengatur lalu-lintas keluar-masuk network:

  • Packet filtering – Paket data dianalisa dan dibandingkan dengan filter. Paket yang lolos filter dikirim ke sistem yang meminta dan sisanya akan dibuang.
  • Proxy service – Informasi yang keluar-masuk dari internet harus melalui firewall. Contoh: Komputer A minta informasi dari situs ABC. Komputer A tidak berhubungan langsung dengan situs ABC, tetapi firewall yang akan minta informasi ini dan setelah mendapatkan akan mengirim ke komputer A.
  • Stateful inspection – Metoda baru yang tidak memeriksa setiap paket tetapi akan membandingkan kunci bagian dari paket itu dengan database yang berisi informasi yang dipercaya. Informasi yang keluar dan berasal dari dalam firewall akan dimonitor untuk karakter penting, kemudian informasi yang masuk akan dibandingkan dengan karakter ini. Jika perbandingannya cukup dekat informasi ini akan dipersilahkan masuk, jika tidak akan dibuang.

Membuat Firewall Pas

Firewall bisa dikonfigurasi. Ini berarti anda bisa menambah atau mengurangi filter yang akan dipakai tergantung dari keadaan. Sebagian dari filter ini adalah:

  • IP address – Tiap komponen (komputer, hub, print server, dll) dari internet diberi alamat unik (tidak ada yang sama) dan disebut IP address. Alamat ini 32-bit, ditayangkan sebagai empat “octets” dengan titik pemisah; contoh: 72.164.215.216. Contoh pengetrapan, jika IP address tertentu diluar perusahaan membaca terlalu banyak file dari server, firewall bisa dikonfigurasi untuk mengeblok semua lalu-lintas dari IP address ini.
  • Domain names – Karena sangat susah mengingat urutan nomer-nomer yang membentuk IP address, dan karena kadang-kadang IP addresses harus diganti, semua server di internet juga mempunyai nama yang mudah untuk dibaca, sebagai pengganti IP address, dan disebut domain names. Sebagai contoh, lebih mudah menghafalkan www.howstuffworks.com daripada 216.27.61.137. Contoh pengetrapan: Perusahaan bisa mengeblok atau memberi akses ke domain tertentu.
  • Protocol – Protocol adalah cara tertentu bagi seseorang yang mau menggunakan service untuk berkomunikasi dengan service tersebut. “Seseorang” ini bisa berarti orang, atau lebih cenderung ke aplikasi seperti browser, telnet, atau ftp. Contoh protocol misalnya http sebagai web protocol. Protocols yang sering diset di firewall termasuk:
    • IP (Internet Protocol) – sistem pengiriman informasi melalui internet
    • TCP (Transmission Control Protocol) – digunakan untuk memecah dan membangun balik informasi yang beredar di internet. TCP memerlukan jawaban balik dari sipenerima untuk menyakinkan bahwa paket yang dikirim sudah diterima dan untuk mengetahui jika paket harus dikirim ulang jika hilang.
    • HTTP (Hyper Text Transfer Protocol) – digunakan untuk Web pages
    • FTP (File Transfer Protocol) – untuk download dan upload file
    • UDP (User Datagram Protocol) – semacam TCP tetapi tidak memerlukan jawaban balik, seperti streaming audio dan video
    • ICMP (Internet Control Message Protocol) – digunakan oleh router untuk tukar informasi dengan router yang lain
    • SMTP (Simple Mail Transport Protocol) – untuk mengirim informasi dalam bentuk teks (e-mail)
    • SNMP (Simple Network Management Protocol) – untuk mengumpulkan sistem informasi dari remote komputer
    • Telnet – untuk menjalankan perintah di remote komputer

    Perusahaan bisa mengkonfigurasi satu atau dua komputer untuk menangani protocol tertentu dan melarang protocol ini di komputer yang lainnya.

  • Ports – Server menyediakan service ke internet dengan menggunakan nomer port, satu nomer untuk setiap servis yang tersedia di server tsb. Contoh: HTTP (port 80), FTP (port 21).
  • Kata atau kata-kata tertentu – Firewall akan mendeteksi semua paket yang berisi kata-kata ini. Anda bisa mengkonfigurasi firewall untuk mengeblok paket yang berisi kata “X-rated” atau “XXX”. Yang penting kata filter ini harus benar-benar sama– “X-rated” tidak sama dengan “X rated”.

OS (operating systems) tertentu mempunyai built-in firewall built, seperti Unix atau Linux, dan Windows XP dengan SP-2 . Jika tidak, perangkat lunak firewall bisa dipasang di komputer di rumah yang mempunyai koneksi dengan internet. Komputer ini dianggap sebagai gateway karena menyediakan satu titik akses antara network perumahan dengan internet. Dengan perangkat keras firewall, unit ini sendiri biasanya berfungsi sebagai gateway. Contohnya Linksys Cable/DSL router yang mempunyai built-in kartu Ethernet and hub. Komputers di network perumahan disambung ke router, dan router ini disambung ke cable atau DSL modem. Anda bisa mengkonfigurasi router ini melalui browser.

Perangkat keras firewall sangat aman dan tidak mahal. Versi untuk perumahan yang termasuk router, firewall dan Ethernet hub untuk koneksi broadband bisa didapat dengan harga dibawah Rp. 1 juta.

Perlindungan Oleh Firewall

Banyak cara bagi hacker untuk mengakses atau merusak data di komputer yang tidak dilindungi:

  • Remote login – Apabila orang bisa masuk ke komputer anda dan bisa ambil kontrol–bisa membaca file atau menjalankan aplikasi.
  • Application backdoors – Aplikasi tertentu mempunyai jalan belakang yang mengijinkan akses remote untuk masuk ke komputer.
  • SMTP session hijacking – SMTP digunakan untuk mengirim imel melalui internet. Dengan memperoleh akses ke daftar imel, hacker bisa menggunakan informasi ini untuk kirim junk imel atau spam ke ratusan bahkan jutaan orang. Ini biasanya dilakukan dengan merubah jalur imel ke SMTP server yang sudah di-hack, jadi spam ini seakan-akan dikirim dari SMTP server ini. Hal ini membuat pelacakan pengirim yang asli sangat susah.
  • Operating system bugs – Seperti program aplikasi, operating sistem ada kalanya mempunyai “bug” yang memungkinkan hacker untuk menggunakan kesempatan ini sebagai pintu masuk.
  • Denial of service – Anda mungkin pernah mendengar istilah ini dari berita tentang serangan ke situs yang besar, seperti Microsoft atau Yahoo. Serangan ini sangat susah untuk dibendung. Yang terjadi adalah hacker mengirim permintaan untuk berhubungan dengan server. Ketika server menjawab dan siap membuat session, server ini tidak bisa menemukan alamat pemintanya. Dengan membuat permintaan sedemikian rupa dan sedemikian banyak, server ini akan menjadi sangat lamban dan akhirnya crash.
  • E-mail bombs – Bom imel biasanya serangan personal. Seseorang mengirim ratusan atau ribuan imel yang sama sampai imel servernya tidak bisa terima apa-apa lagi.
  • Macros – Macro biasanya dibuat untuk mempermudah menjalankan prosedur yang rumit dan sering diulang. Komputer anda bisa mempunyai macro yang jahat karena hacker atau anda men-download macro itu dari internet tanpa anda sadari. Macro ini bisa menghapus dokument/file atau membuat sistem anda crash.
  • Viruses – Virus adalah aplikasi kecil yang bisa menduplikasi sendiri ke komputer lain. Dengan demikian virus ini bisa menyebar secara cepat dari satu komputer ke komputer yang lain. Virus ini bisa jinak atau ganas (merusak data).
  • Spam – Biasanya jinak tapi membuat kesal. Spam bisa berbahaya karena mengandung pranala ke situs yang salah/palsu.
  • Redirect bombs – Hacker bisa menggunakan ICMP untuk merubah arus lalu-lintas internet ke router yang lain. Ini adalah satu cara untuk mengkonfigurasi serangan denial of service.
  • Source routing – Umumnya, jalur yang harus ditempuh oleh paket informasi di Internet ditentukan oleh router-router yang dilewati. Tetapi sumber yang menyediakan rute ini bisa memberi rute yang salah atau diganti oleh hacker.

Beberapa topik yang disebut diatas sangat susah, atau bahkan tidak mungkin, untuk di filter dengan firewall. Meskipun ada firewall yang memberi perlindungan seperti anti-virus, memasang anti-virus ditiap komputer memberi perlindungan yang lebih bagus. Meskipun spam itu sangat menjengkelkan akan tetapi spam ini akan terus lewat firewall jika anda menerima dan membuka spam tersebut. Tingkat sekuriti menentukan berapa banyak ancaman serangan ini bisa dihambat oleh firewall. Tingkat sekuriti yang tinggi bisa mengeblok hampir semua ancaman. Tetapi hal ini menutup kemungkinan untuk berhubungan dengan internet. Cara yang biasanya dipakai adalah blok semuanya lalu pilih aktivitas apa yang diperbolehkan. Anda bisa mengijikan lalu-lintas apa yang akan lewat melalui firewall sehingga hanya tipe informasi tertentu, seperti imel, bisa lewat. Ini adalah cara yang bagus untuk bisnis yang mempunyai administrator network yang berpengalaman. Untuk kita semua, sebaiknya terima konfigurasi yang disediakan oleh firewall kecuali ada alasan untuk merubahnya.

Satu hal yang terbagus tentang firewall dilihat dari pandangan sekuritas adalah firewall memblokir kemungkinan orang luar untuk mengakses komputer didalam network (dibelakang dinding firewall). Meskipun hal ini sangat penting untuk bisnis, tetapi network perumahan menderita sedikit atau hampir tidak ada ancaman seperti ini. Akan tetapi memasang firewall memberi keamanan dan rasa tenang.

Apa Itu IPTABLES .........????

IPTABLES

IPTables merupakan sebuah fasilitas tambahan yang tersedia pada setiap perangkat komputer yang diinstali dengan sistem operasi Linux dan keluarganya. Anda harus mengaktifkannya terlebih dahulu fitur ini pada saat melakukan kompilasi kernel untuk dapat menggunakannya. IPTables merupakan fasilitas tambahan yang memiliki tugas untuk menjaga keamanan perangkat komputer Anda dalam jaringan. Atau dengan kata lain, IPTables merupakan sebuah firewall atau program IP filter build-in yang disediakan oleh kernel Linux untuk tetap menjaga agar perangkat Anda aman dalam berkomunikasi.

Mengapa Linux bersusah payah menyediakan fasilitas ini untuk Anda? Karena dari dulu Linux memang terkenal sebagai operating system yang unggul dalam segi keamanannya. Mulai dari kernel Linux versi 2.0, Linux sudah memberikan fasilitas penjaga keamanan berupa fasilitas bernama ipfwdm. Kemudian pada kernal 2.2, fasilitas bernama ipchain diimplementasikan di dalamnya dan menawarkan perkembangan yang sangat signifikan dalam menjaga keamanan.

Sejak kernel Linux memasuki versi 2.4, sistem firewall yang baru diterapkan di dalamnya. Semua jenis firewall open source yang ada seperti ipfwadm dan ipchains dapat berjalan di atasnya. Tidak ketinggalan juga, IPTables yang jauh lebih baru dan canggih dibandingkan keduanya juga bisa berjalan di atasnya. Maka itu, IPTables sangatlah perlu untuk dipelajari untuk Anda yang sedang mempelajari operating system Linux atau bahkan yang sudah menggunakannya. Karena jika menguasai IPTables, mengamankan jaringan Anda atau jaringan pribadi orang lain menjadi lebih hebat.

Di mana Anda Mendapatkan IPTables?
Untuk mendapatkan fasilitas IPTables, hal yang pertama harus dilakukan adalah memeriksa kernel versi berapa yang Anda gunakan. Jika menggunakan kernel Linux versi 2.4 ke atas, maka Anda boleh tenang karena fasilitas IPTables sudah merupakan default di dalamnya. Namun jika Anda menggunakan kernel di bawah itu, maka Anda harus melakukan modifikasi dan editing pengaturan kernel yang rasanya cukup sulit dan memakan waktu lama. Maka dari itu, gunakanlah operating system Linux dengan kernel Linux 2.4 ke atas saja untuk lebih menghemat waktu dan tenaga.

Sebenarnya ada dua bagian penting yang bisa membuat perangkat komputer Anda menjadi sebuah firewall yang menggunakan fasilitas IPTables, yaitu pengaturan kernel dan penginstalan program IPTables itu sendiri. Jadi dengan demikian, untuk menginstal IPTables pada PC Anda, kedua bagian tersebut harus selalu dipenuhi.

Seperti telah dijelaskan di atas, versi kernel yang cocok untuk menghantarkan fasilitas ini untuk Anda adalah Linux dengan kernel 2.4 keatas. Apabila sebelumnya Anda menggunakan program Ipchain atau Ipfwadm, ada sebuah modul tambahan di dalam kernel 2.4 yang dapat tetap menggunakan pengaturan Anda yang lama pada program IPTables. Namun sebaiknya jika memang sudah memungkinkan, Anda harus membiasakan diri untuk menggunakan perintah dan ekspresi-ekspresi yang ada pada IPTables, karena IPTables jauh lebih hebat dibangingkan keduanya.

Namun jika Anda sudah memutuskan program firewall mana yang Anda gunakan, maka Anda hanya dapat mengaktifkan satu jenis firewall saja pada kernel level. Apakah itu IPTables, Ipchain, atau ipfwadm. Anda tidak dapat mengaktifkan ketiganya secara bersamaan (melihat orang, namun disarankan untuk selalu menggunakan fasilitas IPTables. Setelah semua parameter pendukung ditambahkan dalam kernelnya, kompile-lah kernel Anda, maka sesaat kemudian komputer Anda telah siap untuk diinstali program IPTables.

Setelah kernel selesai dimodifikasi (jika memang belum dikonfigurasi mendukung IPTables) langkah berikutnya adalah menginstal programnya. Anda dapat men-download programnya di link http://www.netfilter.org/. Bagaimana cara melakukan instalasi dan kompile kernelnya akan dibahas pada edisi berikutnya.

Istilah-istilah dan Ekspresi yang Ada pada IPTables
Istilah-istilah ekspresi di dalam firewall bawaan Linux ini memang sangat banyak. Setiap ekspresi pada umumnya mewakili satu fungsi spesifik untuk melakukan tugas menjaga keamanan. Meskipun banyak yang sudah sering terdengar pada aplikasi firewall lain atau pada perangkat-perangkat keras firewall, namun IPTables juga memiliki banyak sekali ekspresi yang merupakan ciri khasnya.



Berikut ini adalah beberapa istilah dan ekspresi yang paling umum digunakan di dalam IP filtering:

Drop/Deny
Ketika ada paket yang terkena policy seperti ini, maka paket tersebut langsung dihapus tanpa banyak basabasi lagi. Tidak ada tindakan lebih lanjut lagi terhadap data yang telah dihapus dan tidak ada informasi balasan apakah paket tersebut didrop atau tidak. Paket data tersebut benar-benar menghilang.
Reject
Policy ini sebenarnya memiliki fungsi yang sama dengan drop/deny, namun bedanya policy ini akan mengirimkan pemberitahuan kepada si pengirimnya bahwa paket datanya ditolak.
State
Policy ini memiliki fungsi untuk memberikan sebuah status kepada paket informasi yang melewatinya, dan kemudian status tersebut akan dibandingkan dengan paket yang lain. Sebagai contoh jika sebuah paket merupakan paket pertama yang dilihat oleh IPTables, maka akan dianggap sebagai paket baru yang akan membuka jalan komunikasi. Informasi status ini dapat dimonitor menggunakan sistem connection tracking yang akan menyimpan semua informasi state tersebut.
Chain
Chain merupakan seperangkat aturan yang saling berkaitan atau berantai yang dikenakan pada paket-paket data yang keluar-masuk. Setiap Chain memiliki kegunaan yang spesifik dan juga area penempatan yang spesifik.
Table
Table merupakan kumpulan informasi pengaturan dan fasilitas yang ada pada IPTables. Di dalam aplikasi ini, terdapat tiga jenis table, yaitu tabel NAT, tabel Mangle, dan tabel Filter. Masing-masing tabel memiliki tugasnya masing-masing dalam aplikasi ini, misalnya tabel filter berfungsi untuk menampung pengaturan yang bertugas melakukan filtering paket, sedangkan tabel NAT untuk menampung informasi translasi NAT.
Match
Satu kata ini dapat memiliki dua arti ketika berada dalam aplikasi firewall seperti IPTables. Arti pertama adalah dalam membuat sebaris aturan parameter yang dimasukkan haruslah match atau cocok. Misalnya dalam membuat sebuah aturan harus memasukkan alamat source IP dengan alamat yang sesuai format, baik alamat network range maupun alamat single host. Arti kedua adalah jika sebuah paket cocok dengan seluruh aturan yang dibuat, maka dapat dikatakan dengan istilah match.
Target
Target merupakan seperangkat aturan yang akan melakukan eksekusi untuk mencapai tujuan akhir. Biasanya target ada di dalam atura-naturan yang Anda buat. Jika aturan-aturan yang Anda buat Match seluruhnya dengan paket yang ditentukan, maka target akan bekerja mengeksekusi sesuatu hingga tujuan akhirnya tercapai. Contoh dari target misalnya jika Match maka paket dengan alamat IP 1.1.1.1 harus di-DROP atau di NAT atau diteruskan, dan sebagainya. Tujuan akhir seperti DROP, NAT, atau yang lainnya tadilah yang disebut dengan target.
Rule
Rule atau aturan merupakan sebuah baris aturan atau lebih yang di dalamnya berisi apa saja yang ingin Anda kenai tujuan akhir atau target yang Anda buat. Misalnya alamat IP tujuan 1.1.1.1 dengan nomor port 25 dikenakan target DROP. Pemeriksaan yang dilanjutkan dengan sebuah tindakan inilah yang disebut dengan istilah Rule.
Ruleset
Ruleset merupakan kumpulan dari rule yang Anda buat yang kemudian dipasang pada implementasi IP filtering. Dalam kasus pada IPTables sebuah ruleset sudah meliputi seperangkat aturan pada tabel filter, tabel NAT dan tabel mangle. Dan semuanya berada dalam satu urutan CHAIN yang dibuat sebelumnya. Pada umumnya, ruleset ditulis pada file konfigurasi atau sejenisnya.
Jump
Jump merupakan sebuah instruksi yang akan mengarahkan sebuah rule untuk menuju ke target tertentu. Instruksi jump pasti ada dalam setiap target pada rule IPTables, kecuali Anda menggunakan CHAIN yang lain sebagai tujuan akhir dari sebuah rule. Ketika sebuah paket Match dengan rule yang dibuat, maka instruksi jump akan bekerja mengarahkan paket tersebut ke sebuah target atau ke CHAIN yang lainnya untuk diproses lebih lanjut.
Connection tracking
Connection tracking merupakan sebuah fasilitas untuk memonitor atau melacak koneksi-koneksi atau aliran paket yang lalu-lalang melalui firewall. Fasilitas ini biasanya digunakan pada perangkat yang memiliki kekuatan processing dan memory yang tinggi. Jika perangkat Anda tidak memiliki spesifikasi yang cukup, sebaiknya tidak menggunakan fasilitas ini. Dengan adanya fasilitas ini, keuntungannya adalah firewall Anda akan lebih aman dan dapat termonitor dengan baik.
Accept
Ekspresi ini sebenarnya merupakan sebuah target yang merupakan kebalikan dari fungsi target DROP dan DENY. Accept menandakan bahwa apabila ada paket yang MATCH dengan rule yang dibuat maka paket tersebut akan dilewatkan ke tujuan yang diinginkannya.
Policy
Ada dua arti yang menggambarkan istilah policy dalam dunia IP filtering. Pertama, policy diartikan sebagai sebuah peraturan akhir yang akan mengarahkan paket-paket yang tidak MATCH dengan rule apapun ke tujuan akhirnya. Pengartian inilah yang akan kita pakai untuk istilah policy pada pembahasan selanjutnya. Arti kedua adalah security policy atau peraturan keamanan yang biasanya dimiliki oleh implementer dari sistem firewall. Contohnya sebuah perusahaan memiliki peraturan dimana pegawai dengan tingkat staff tidak diperbolehkan mengakses Internet, atau para supervisor tidak diperbolehkan membuka halaman intranet. Semua itu merupakan security policy yang idealnya harus didokumentasikan dengan baik.
Fasilitas Hebat yang Cukup Rumit
IPTables memang sangat hebat. Banyak sekali fasilitas dan kemampuan yang dapat diberikannya untuk mengamankan PC dan jaringan milik Anda dibelakangnya. Namun saking hebatnya, terkadang pengguna menjadi cukup sulit untuk mempelajarinya pada awal pemakaiannya. Namun setelah Anda kuasai logikanya, maka IPTables bisa menjadi tameng yang kuat untuk Anda gunakan dalam menahan serangan dari luar. Dengan IPTables yang terkonfigurasi dengan baik, maka Anda boleh sedikit lebih tenang karena PC Linux milik Anda sudah jauh lebih aman daripada sebelumnya. Selamat mencoba!