5 Keamanan Jaringan (Mengenal IPTABLESS)




Lanjutan Materi Pembelajaran Firewall 

Firewall merupakan sebuah tembok yang membatasi suatu sistem jaringan yang ada di baliknya dari berbagai macam ancaman dan gangguan yang biasa muncul melalui jaringan internet yang rentan terhadap berbagai macam serangan. Fungsinya bisa untuk membatasi hak akses dan mengatur policy antara jaringan Internal terhadap eksternalnya dan juga berlaku pada sebaliknya. Hal ini sangat penting mengingat tidak semua orang diperbolehkan untuk bisa mengakses ke dalam jaringan yang kita miliki. Konfigurasi dari firewall bergantung kepada kebijaksanaan dari organisasi yang bersangkutan, secara umum terbagi menjadi dua jenis :
  • Deny : semua yang tidak diperbolehkan berdasarkan aturan firewall akan ditolak.
  • Allow : semua yang tidak dilarang berdasarkan aturan firewall akan diperboehkan
Cara kerja firewall sebenarnya hanyalah dengan mengamati paket data yang dilewatkan dan kemudian berdasarkan konfigurasi dari firewall maka akses dapat diatur berdasarkan alamat IP, Port, dan arah atau tujuan informasi.

Terdapat dua buah jenis Firewall secara umum, yaitu :

a. Firewall Hardware 
Berupa sebuah piranti keras yang sudah dilengkapi dengan perangkat lunak tertentu, sehingga kita tinggal melakukan konigurasi dari firewall itu saja.

b. Firewall Software
Berupa sebuah piranti lunak atau software yang ditambahkan kepada sebuah komputer yang dikonfigurasi menjadi sebuah Firewall dimana pada pembelajaran ini, software  yang digunakan adalah iptables yang dijalankan pada sebuah computer dengan Sistem operasi LINUX, (Debian 8)

Secara umum tugas utama yang biasa dilakukan oleh Iptables adalah fungsi pemfilteran IP (IP Filtering) dan fungsi Proxy, tapi pada pembelajaran ini yang dicoba adalah fungsi pemfilteran saja.

Kedua fungsi tersebut dapat dilakukan pada piranti komputer atau dilakukan secara terpisah. Beberapa piranti lunak berbasis UNIX yang dapat digunakan untuk melakukan pemfilteran Ip antara lain Iptable yang merupakan standar dari system Linux pada sekarang ini.

Pengenalan Iptables
Iptables adalah salah satu tools firewall default pada system operasi linux. Iptables ini bekerja baik di kernel 2.4.x-2.6.x sedangkan untuk kernel 2.2.x masih menggunakan ipchains. Perintah 'iptables' digunakan untuk mengelola, memaintain, menginspeksi rule-rule IP packet filter dalam kernel linux.



Saat ini iptables merupakan firewall yang cukup dominan digunakan karena memiliki berbagai macam kemampuan untuk melakukan pengaturan terhadap keluar masuknya paket data. Pada dasarnya terdapat 2 aturan utama atau biasa disebut dengan CHAINS.
a.       INPUT
Aturan yang digunakan oleh firewall untuk mengatur paket – paket data yang menuju Firewall.

b.      FORWARD
Aturan yang digunakan oleh firewall untuk mengatur paket – paket yang meninggalkan Firewall menuju ke jaringan yang lain.

Paket – paket data yang ada akan diperiksa untuk kemudian diberikan keputusan, ada beberapa keputusan yang diterapkan antara lain :
·         ACCEPT
Apabila ditemukan paket yang sesuai dengan aturan untuk di-ACCEPT, maka firewall akan langsung menerima untuk kemudian meneruskan paket tersebut.

·   DROP
Apabila ditemukan paket yang sesuai dengan aturan untuk di-DROP, maka firewall akan langsung membuang paket tersebut tanpa mengirimkan pesan ERROR apapun ke pengirim.
·   REJECT

Apabila ditemukan paket yang sesuai dengan aturan untuk di-REJECT, maka firewall akan langsung membuang paket tersebut namun disertai dengan  mengirimkan pesan ERROR ICMP “ port unreachable” 

Pada pembahasan ini, saya akan mencoba berbagi sedikit cara mengkonfigurasi firewall pada iptables di sistem operasi linux, khususnya distribusi ubuntu. Penulis menggunakan Ubuntu 8.04 kernel 2.6.24-16-generic dalam mencoba iptables.
Pada ubuntu, biasa telah terinstall iptables secara default.
 Konsep chain :
1.       INPUT
=> semua paket yang masuk ke komputer melalui chain/rantai ini.
2.       OUTPUT
=> semua paket yang kelua ke komputer melalui chain/rantai ini.
3.       FORWARD
=>paket data yang diterima dari satu jaringan dan diteruskan ke jaringan lainya.

Perintah umum iptables :
            $iptables [-t table] command [match] [target/jump]

Berikut beberapa option dasar yang cukup sering dalam mengkonfigurasi iptables :
  • -A
Tambahan aturan ini ke rantai aturan yang ada. Rantai atau chain yang valid adalah INPUT, FORWARD, dan OUTPUT. Biasanya lebih banyak menggunakan rantai INPUT yang berdampak pada paket data yang masuk
  • -L
Memperlihatkan daftar aturan yang telah dipasang di iptables.
  • -m state
Menjelaskan daftar dari kondisi / state bagi aturan untuk di bandingkan. Beberapa state yang valid, adalah :
            NEW  => sambungan baru dan belum pernah terlihat sebelumnya
                          RELATED => sambungan baru, tapi berhubungan dengan   sambungan lain telah diizinkan.
                                               ESTABLISHED => sambungan yang telah terjadi.
                                   INVALID => lalu lintas paket data yang karena berbagai alasan tidak bisa di    identifikasi
  • -m limit
Dibutuhkan oleh aturan jika ingin melakukan pembandingan dan pencocokan dalam waktu / jumlah tertentu. Mengizinkan penggunaan option –limit. Berguna untuk membatasi aturan logging.
  • --limit
Kecepatan maksimum pencocokan, diberikan dalam bentuk angka yang diikuti oelh ”/seconf”,”/minute”,”/hour”, atau ”/day” tergantung seberapa sering kita ingin melakukan pencocokan aturan. Jika option ini tidak digunakan maka secara defaultnya adalah ”3/hour”
  • -p
Protokol yang digunakan untuk sambungan.
  • --dport
Port tujuan yang digunakan oleh aturan iptables. Bisa berupa satu port, bisa juga satu batasan jangkauan ditulis sebagai start:end, yang akan mencocokan semua port start sampai end
  • -j
Jump ke target yang spesifik. Iptables mempunyai empat target default, yaitu :
ACCEPT
ð  Accept / menerima paket dan berhenti memproses aturan dalam rantai  aturan ini.
REJECT
ð  Reject /tolak paket data dan beritahu ke pengirim bahwa aturan firewall menolak paket data tersebut, stop pemrosesan aturan dalam rantai aturan ini
DROP
ð  Diam-diam mengacuhkan paket ini, dan stop pemrosesan aturan di rantai aturan ini.
LOG
ð  Log/catat paket, dan teruskan pemrosesan aturan di rantai aturan ini.
ð  Mengijinkan penggunaan option --log –prefix dan --log -level
  • --log –prefix
Jika pencatatan dilakukan, letakan text atau tulisan sebelum catatan.
  • --log –level
Pencatatan menggunakan syslog level.
  • -i
Melakukan pencocokan jika paket yang masuk dari interface tertentu.
  • -I
Memasukan aturan ke iptables.
  • -v
Menampilkan lebih banyak informasi di layar

Option diatas adalah hanya sedikit dari option yang terdapat pada iptables. Silakan pembaca kembangan sendiri.
  
Untuk dapat melihat manual iptables, silakan ketik perintah ini pada terminal :

            $man iptables



Perintah dasar Iptables :

Perintah dasar Iptables :
  • Untuk melihat aturan yang sudah ada di iptables :
$iptables -L
Jika komputer baru diinstall, aturan yang terpasang akan terlihat seperti ini :

  • Untuk mengijinkan sesi sambungan yang terbentuk untuk menerima lalu lintas paket data
$iptables -A INPUT -m state –state ESTABLISHED, RELATED -j accept
Contohnya kita akan mengijinkan semua lalu lintas paket data di jaringan untuk masuk adalah sebagai berikut :
                        $iptables -A INPUT -p tcp –dport 80 -j ACCEPT


Contohnya lain kita akan mengijinkan lalu lintas paket data masuk ke defaut port SSH nomor 22, maka harus mengizinkan semua TCP paket data masuk ke port 22, perintahnya :
$iptables -A INPUT -p tcp --dport ssh -j ACCEPT

Dari perintah diatas, kita dapat mengetahui bahwa aturan iptables tersebut mangatur agar masukan aturan ini ke rantai input (-A INPUT) artinya kita melihat lalu lintas paket data yang masuk cek protokol yang digunakan adalah TCP (-p tcp). Jika TCP, apakah paket data menuju port SSH (--dport ssh). Jika ya, maka paket diterima,

  • Untuk melakukan pemblokiran paket data.
Apabila aturan telah memutuskan untuk menerima paket data (ACCEPT), maka aturan selanjutnya tidak akan berefek pada paket data tersebut.  Karena aturan yang kita buat mengijinkan SSH dan Web traffic, selama aturan untuk memblok semua traffic kita letakan terakhir sesudah aturan mengijinkan SSH dan Web, maka kita akan tetap dapat menerima traffic SSH dan Web yang kita inginkan. Jadi kita harus menambahkan (-A) aturan untuk mem-block traffic di akhir.
            Perintahnya :
                        $iptables -A INPUT -j DROP

  1. Untuk melakukan pencatatan paket yang di log , perintah yang paling cepat adalah :
$iptables -I INPUT 5 -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7

  1. Untuk menyimpan konfigurasi iptables
Jika kita booting komputer yang kita gunakan, maka apa yang kita lakukan ini akan hilang. Kita pun harun mengetikkan ulang semua perintah yang kita masukan satu per satu ketika komputer hidup. Agar lebih effesien, kita dapat menggunakan iptables-save dan iptables-restore untuk menyimpan dan merestore iptables
Kita dapat menyimpan konfigurasi iptables agar di start setiap kali booting menggunakan perintah :

              $sh -c "iptables-save > /etc/iptables.rules"
 
                        Setelah itu memodifikasi /etc/network/interfaces agar aturan iptables yang kita gunakan dapat berjalan secara automatis. Kita perlu mengetahui ke interface mana aturan yang  akan digunakan. Biasanya  menggunakan eth0. Untuk interface wireless, kita dapat mencek penggunaaannya mengunakan perintah,
               $ iwconfig


Kita perlu mengedit file /etc/network/interfaces misalnya menggunakan perintah
               $ sudo nano /etc/network/interfaces

      Apabila telah menemukan nama interface yang digunakan, maka di akhir interface kita dapat menambahkan perintah,
pre-up iptables-restore < /etc/iptables.rules
Selanjutnya di bawahnya kita tambahkan perintah sesudah interface down, menggunakan perintah,
post-down iptables-restore < /etc/iptables.rules

Hasil gambarnya :



  1. Untuk menonaktifkan atau mematikan fiewall, maka perintahnya :
$iptables –F

Adapun jika kesulitan dalam menkonfigurasi iptables secara command line, pada ubuntu telah tersedia perangkat lunak yang dapat mengkonfigurasi firewall secara menggunakan GUI yaitu firestater.

-          cara menginstall firestarter di ubuntu 8.04
·         ketik perintah ini di terminal
·         sudo apt-get install firestater

5 Keamanan Jaringan (Mengenal IPTABLESS) 5 Keamanan Jaringan (Mengenal IPTABLESS) Reviewed by Argasoka Herbal on Senin, September 11, 2017 Rating: 5

Tidak ada komentar:

Diberdayakan oleh Blogger.