Pengertian Tentang Firewall Iptables Pada Debian Server





Assalamulaikum Wr. Wb.
     Pada kesempatan kali ini saya akan share tentang firewall yang biasa digunakan pada debian server, yaitu iptables. Dengan adanya firewall pada server kita ini membuat server kita aman dari serangan-serangan dari luar maupun untuk filtering packet-packet data tertentu.  nah untuk lebih lengkapnya yuk kita pahami penjelasan berikut.


A. Pengertian

     Firewall adalah suatu aturan yang diterapkan baik terhadap hardware, software atau pun sistem itu sendiri dengan tujuan untuk melindungi, baik dengan melakukan filterisasi, membatasi, ataupun menolak suatu koneksi pada jaringan yang dilindunginya dengan jaringan luar.

Tipe-tipe firewall dibedakan berdasarkan mekanisme atau cara kerja firewall :
  • Packet filtering gateway : bertugas melakukan filterisasi terhadap paket-paket yang datang dari luar jaringan yang dilindunginya
  • Application level gateway : juga disebut proxy firewall, mekanisme tidak hanya berdasarkan sumber, tujuan dan atribut paket tapi bisa mencapai isi (content) paket tersebut
  • Circuit level gateway : bekerja pada bagian Transport Control Protocol (TCP) Layer pada lapisan TCP/IP. Firewall akan melakukan pengawasan terhadap awal hubungan TCP yang biasa disebut sebagai TCP handshaking untuk menetukan apakah ses ihubungan tersebut diperbolehkan atau tidak
  • Statefull multilayer inspection firewall : model ini adalah penggabungan dari ketiga firewall diatas, firewall ini bekerja pada lapisan aplikasi, lapisan TCP dan lapisan internet protocol


IPTABLES adalah salah satu firewall yang ada di linux, kegunaan iptables antara lain :
  • Dapat melakukan perhitungan terhadap paket dan menerapkan prioritas trafik berdasarkan jenis layanan (servis)
  • Dapat di gunakan untuk mendefinisikan sekumpulan aturan keamanan berbasis port untuk mengamankan host-host tertentu
  • Dapat digunakan untuk membangun sebuah router atau gateway



B. Latar Belakang
     Seiring dengan pesatnya perkembangan teknologi informasi dan komputerisasi, jaringan komputer tentu sangat bermanfaat, antara lain membuat seseorang dapat berkomunikasi dan berhubungan dengan orang lain tanpa mengenal lagi yang namanya jarak. Seseorang telekomputer dapat memiliki lebih dari satu perkerjaaan yang berbeda letak geografisnya dan dapat dilakukannya dengan baik.
      Namun, dampak dari perkembangan itu adalah semakin banyaknya permasalahan yang muncul dalam melindungi jaringan komputer dari gangguan luar seperti virus, spam, DOS, dll.
     Oleh karena itu, sebuah jaringan komputer pun perlu memiliki ’pagar’ layaknya sebuah rumah. ’Pagar’ yang dapat melindungi tempat vital dalam komunikasi data dan menyimpan komponen penting dalam jaringan komputer.
Dalam istilah komputer, ’pagar’ tersebut sering disebut dengan istilah firewall. Sebuah sistem yang mengizinkan paket data lewat untuk paket yang dianggapnya aman dan menolaknya jika paket data tersebut dianggap tidak aman.

C. Persiapan Software dan Hardware
  • Seperangkat komputer PC atau Laptop
  • Koneksi Internet
D. Maksud dan Tujuan

     Kegiatan ini bermaksud agar kita mengetahui dan memahami tentang bagaimana cara kerja dari iptables sebagai firewall dalam debian server kita. Sehingga nantinya jka kita sudah paham betul dengan iptables ini, kita dapat mengamankan dan mengelola server kita.

E. Pembahasan

     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.


Diagram Iptables






Firewall IPTables packet filtering memiliki beberapa aturan (policy), yaitu:

- 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.

- OUTPUT
     Mengatur paket data yang keluar dari firewall ke arah intranet maupun internet. Biasanya output tidak diset,karena bisa membatasi kemampuan firewall itu sendiri.

- 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

- POSTROUTING
     yaitu melakukan NAT paket data yang keluar dari firewall, kebanyakan postrouting dipakai untuk translasi alamat IP.

- PREROUTING
     yaitu untuk melakukan NAT paket data yang memasuki firewall, kebanyakan digunakan untuk transparency proxy server dan membangun beberapa server dengan satu IP publik.


Table pada iptables

 


Dalam Iptables terdapat tiga daftar table bawaan yaitu :
  • filter : ini adalah tabel default, mengandung INPUT, OUPUT, dan FORWARD (biasa di sebut chain INPUT, chain OUTPUT, dan chain FORWARD)
  • nat : digunakan untuk membuat gateway, SNAT untuk mengubah alamat IP pengirim, biasanya dijadikan gateway menuju ke internet, DNAT kebalikan dari SNAT
  • mangle : digunakan untuk menandai paket-paket untuk digunakan di proses-proses selanjutnya


Struktur Penulisan IPTABLES : 

      iptables -t [table] command [chain] parameter target

contoh :

      iptables -t filter -A INPUT -s 192.168.1.1 -j DROP



Command pada iptables

     Command dan rule yang dipasang pada iptables (firewall) memiliki ketentuan. Pada dasarnya iptables pada komputer dianggap sebagai TABEL IP sesuai dengan namanya. System hanya akan menjalan rule yang ada pada tabel. Sedangkan rule yang sudah ada pada iptables juga dapat di hapus atau di replace dengan rule lain. Berikut beberapa command untuk penambahan, penghapusan dan operasi sejenisnya yang akan diperlakukan terhadap rule.


Option

     Terdiri dari command, dan parameter serta opsi tambahan :



Parameter
     Membuat satu baris aturan pada iptables menjadi lebih spesifik

-p : protocol

     Digunakan untuk mengecek tipe protokol tertentu. Contoh protokol yang umum adalah TCP, UDP, ICMP dan ALL. Daftar protokol bisa dilihat pada /etc/protocols. Tanda ! bisa digunakan, misal kita menghendaki semua protokol kecuali icmp, maka kita bisa menuliskan -p ! icmp yang berarti semua kecuali icmp.

Contoh : iptables -A INPUT -p tcp …

iptables -A INPUT -p ! tcp …

-s : source

     Digunakan untuk mencocokkan paket berdasarkan alamat IP asal/sumber. Alamat di sini bisa berberntuk alamat tunggal seperti 192.168.1.1, atau suatu alamat network menggunakan netmask misal 192.168.1.0/255.255.255.0, atau bisa juga ditulis 192.168.1.0/24 yang artinya semua alamat 192.168.1.x. Kita juga bisa menggunakan inversi.

Contoh : iptables -A INPUT -s 192.168.1.3 …

-d : destination

     Digunakan untuk mecocokkan paket berdasarkan alamat tujuan. Penggunaannya sama dengan –s

contoh : iptables -A INPUT -s 192.168.1.3 …

-j : jump

     berguna untuk menentukan nasib paket, apakah paket akan diterima (ACCEPT), ditolak (DROP), dikembalikan (RETURN), dll

contoh : iptables -A INPUT -j DROP

-i : in-interface

     berguna untuk mencocokkan paket berdasarkan interface di mana paket datang. Match ini hanya berlaku pada chain INPUT, FORWARD

contoh : iptables -A INPUT -i eth0

-o : out-interface

     Berfungsi untuk mencocokkan paket berdasarkan interface di mana paket keluar. Penggunannya sama dengan -i. Berlaku untuk chain OUTPUT, FORWARD

contoh : iptables -A OUTPUT -o eth1


TARGET

     Target atau jump adalah perlakuan yang diberikan terhadap paket-paket yang memenuhi kriteria. Atau sebagai penentu nasib suatu paket

ACCEPT
     setiap paket akan diterima oleh firewall dan akan diteruskan ke tujuan dari paket tersebut

contoh : iptables -A INPUT -p tcp -–dport 80 -j ACCEPT

DROP
     akan membuang setiap paket yang diterima tanpa mengirimkan pesan ke pengirim paket

contoh : iptables -A INPUT -p tcp -–dport 80 -j DROP

RETURN
     akan menolak setiap paket yang diterima tapi firewall akan mengirimkan pesan ICMP errror kepada pengirim paket, defaultnya berupa port-unreachable pesan dapat dirubah misal icmp-net-unreachable, icmp-host-unreachable, icmp-proto-unreachable, icmp-net-prohibited, dll

contoh : iptables -A INPUT -p tcp -–dport 80 -j REJECT –reject-with icmp-net-unreachable

LOG Target
     Ada beberapa option yang bisa digunakan bersamaan dengan target ini. Yang pertama adalah yang digunakan untuk menentukan tingkat log. Tingkatan log yang bisa digunakan adalah debug, info, notice, warning, err, crit, alert dan emerg.Yang kedua adalah -j LOG –log-prefix yang digunakan untuk memberikan string yang tertulis pada awalan log, sehingga memudahkan pembacaan log tersebut.

Contoh :

iptables –A FORWARD –p tcp –j LOG –log-level debug

iptables –A INPUT –p tcp –j LOG –log-prefix “INPUT Packets”

SNAT Target
     Target ini berguna untuk melakukan perubahan alamat asal dari paket (Source Network Address Translation). Target ini berlaku untuk tabel nat pada kolom POSTROUTING, dan hanya di sinilah SNAT bisa dilakukan. Jika paket pertama dari sebuah koneksi mengalami SNAT, maka paket-paket berikutnya dalam koneksi tersebut juga akan mengalami hal yang sama.

Contoh : iptables –t nat –A POSTROUTING –o eth0 –j SNAT –to-source 194.236.50.155-194.236.50.160:1024-32000

DNAT Target

     Berkebalikan dengan SNAT, DNAT digunakan untuk melakukan translasi field alamat tujuan (Destination Network Address Translation) pada header dari paket-paket yang memenuhi kriteria match. DNAT hanya bekerja untuk tabel nat pada chain PREROUTING dan OUTPUT atau chain buatan yang dipanggil oleh kedua chain tersebut.

Contoh : iptables –t nat –A PREROUTING –p tcp –d 15.45.23.67 –dport 80 –j DNAT –to-destination 192.168.0.2

MASQUERADE Target
     Secara umum, target MASQUERADE bekerja dengan cara yang hampir sama seperti target SNAT, tetapi target ini tidak memerlukan option –to-source. MASQUERADE memang didesain untuk bekerja pada komputer dengan koneksi yang tidak tetap seperti dial-up atau DHCP yang akan memberi pada kita nomor IP yang berubah-ubah.

Seperti halnya pada SNAT, target ini hanya bekerja untuk tabel nat pada chain POSTROUTING.

Contoh : iptables –t nat –A POSTROUTING –o eth0 -dport 80 –j MASQUERADE

REDIRECT Target
     Target REDIRECT digunakan untuk mengalihkan jurusan (redirect) paket ke mesin itu sendiri. Target ini umumnya digunakan untuk mengarahkan paket yang menuju suatu port tertentu untuk memasuki suatu aplikasi proxy, lebih jauh lagi hal ini sangat berguna untuk membangun sebuah sistem jaringan yang menggunakan transparent proxy. Contohnya kita ingin mengalihkan semua koneksi yang menuju port http untuk memasuki aplikasi http proxy misalnya squid. Target ini hanya bekerja untuk tabel nat pada chain PREROUTING dan OUTPUT atau pada chain buatan yang dipanggil dari kedua chain tersebut.

Contoh : iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 80 -j REDIRECT –to-port 3128

iptables -t nat -A PREROUTING -p tcp -d 0/0 –dport 80 -j REDIRECT –to-port 8080

 F. Referensi

Sumber :
http://aoktox.blogspot.co.id/2014/02/pengertian-iptables-dan-nat.html
http://siteblogforu.blogspot.co.id/2014/02/pengertian-iptables-postrouting.html
https://sarangpenyamun.wordpress.com/2008/12/15/pengantar-iptables/

G. Hasil dan Kesimpulan

     Dengan adanya sebuah firewall pada komputer server kita, membuat komputer server kita aman dari serangan luar seperti virus, spam, DOS, dll. Selain itu dengan firewall ini kita dapat dengan mudah mengelola jaringan kita dengan membuat aturan-aturan tertentu untuk setiap hostnya.

     Sekian dari saya, mohon maaf sebesar-besarnya jika terdapat banyak kesalahan dalam postingan saya ^-^ 

Wassalamualikum Wr. Wb.
Previous
Next Post »