ANALISA DAN IMPLEMENTASI IPTABLES DENGAN

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

ANALISA DAN IMPLEMENTASI IPTABLES DENGAN
DEBIAN SERVER SEBAGAI FILTERING FIREWALL WEB
SERVER
Sularno1, Erdisna1

Universitas Putra Indonesia “YPTK” Padang, Indonesia
erdisna@upiyptk.ac.id
ABSTRAK
Keamanan jaringan merupakan aspek pertahanan suatu jaringan komputer. Firewall merupakan salah satu
sistem keamanan yang berfungsi untuk mencegah penggunaan yang tidak sah serta pembatasan akses tertentu
pada suatu perangkat. Hasil dari pembuatan jurnal menunjukkan bahwa IPTables memilki banyak sekali
keunggulan dalam implementasinya diantaranya: IPTables memiliki kemampuan untuk melakukan
Connection Tracking Capability yaitu kemampuan untuk inspeksi paket serta bekerja sama dengan ICMP dan
UDP sebagaimana koneksi TCP, Menyederhanakan perilaku paket-paket dalam negosiasi built in chain, dan

lain-lainnya. Tapi Yang terpenting adalah Implementasi IPTables sebagai firewall sangat murah dan memiliki
tingkat kemanan yang baik.
Kata Kunci: Firewall, IPTables, Connection Tracking Capability, ICMP dan UDP, TCP

1. Pendahuluan
Keamanan jaringan merupakan aspek pertahanan Keamanan suatu jaringan seringkali
terganggu dengan adanya ancaman dari penyusup (intruder) yang bermaksud
merusak sistem pada jaringan komputer ataupun mencuri informasi penting yang ada
pada suatu jaringan komputer (Kurniawan, 2007). Jika beberapa dekade yang lalu keamanan
jaringan masih ditempatkan pada urutan prioritas yang rendah, namun akhir-akhir ini perilaku
tersebut harus segera diubah. Pasalnya, kejahatan dengan menggunakan bantuan komputer,
media komunikasi, dan perangkat elektronik lainnya meningkat sangat tajam belakangan. Hal
ini sangat kontras dengan perkembangan kebutuhan perangkat komputer untuk kehidupan
sehari-hari yang juga semakin meninggi. Tidak hanya di dalam kegiatan bisnis saja, kehidupan
rumah tangga pun sudah sangat relevan jika dilengkapi dengan sebuah komputer. Maka dari
itulah, mengapa keamanan jaringan komputer dan PC menjadi begitu penting untuk
diperhatikan saat ini.
Sangat penting memang untuk rajin melakukan patch dan update terhadap software-software
bug yang digunakan di komputer server. Karena hal ini cukup menolong untuk sedikit
menyulitkan para hacker dan pengganggu lain untuk bisa bersenang-senang dengan komputer

server. Namun rasanya, patch yang up-to-date saja belum cukup untuk melindungi resource data
yang berharga di dalam komputer server. Maka dari itu, rasanya cukup penting untuk bisa
membatasi apa dan siapa saja yang boleh masuk dan keluar dari dan ke perangkat komputer
server. Semua proses ini bisa di lakukan dengan mengandalkan sebuah sistem pengaman khusus
yang biasanya disebut dengan istilah firewall atau IP filter.

2. Tinjauan Literatur
Firewall adalah sebuah sistem pengaman, jadi firewall bisa berupa apapun baik hardware
maupun software. Firewall dapat digunakan untuk memfilter paket-paket dari luar dan dalam
jaringan di mana ia berada. Jika pada kondisi normal semua orang dari luar jaringan anda dapat
106

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

bermain-main ke komputer anda, dengan firewall semua itu dapat diatasi dengan mudah.

Menurut (Scarfone K. & Hoffman P, 2009) Firewall adalah perangkat atau sebuah
program yang berfungsi untuk mengontrol aliran lalu lintas jaringan antar jaringan
atau host yang menerapkan keamanan yang berbeda. Firewall sering dibahas dalam
sebuah konteks konektivitas internet, tetapi firewall juga memiliki penerapan pada
konektivitas jaringan lainnya. Dapat diambil sebuah contoh, banyak jaringan dalam
perusahaan menggunakan
atau
mengimplementasikan firewall
untuk membatasi
konektivitas menuju dan dari suatu jaringna internal yang digunakan untuk melayani
fungsi yang lebih spesifik seperti personalia dan akuntansi. Dengan menggunakan
firewall untuk mengontrol konektivitas masing-masing bagian dalam suatu jaringan
untuk mecegah akses tidak sah ke dalam sistem. Penggunaan firewall yang tepat dapat
memberikan keamanan jaringan yang baik dalam suatu jaringan maupun sebuah host.

Gambar 1 : Firewall

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
menuju ke jaringan yang lain. Paket – paket data yang ada akan diperiksa untuk kemudian
diberikan keputusan, ada beberapa keputusan yang diterapkan antara lain :
a. ACCEPT
Apabila ditemukan paket yang sesuai dengan aturan untuk di-ACCEPT, maka firewall akan
langsung menerima untuk kemudian meneruskan paket tersebut.
b. 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.
c. 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”

3. Hasil dan Pembahasan
Syntax Pada IPTables
1. Table

IPTables memiliki 3 buah tabel, yaitu NAT, MANGLE dan FILTER. Penggunannya disesuaikan
dengan sifat dan karakteristik masing-masing. Fungsi dari masing-masing tabel tersebut sebagai
berikut :
107

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

1. NAT : Secara umum digunakan untuk melakukan Network Address Translation. NAT adalah
penggantian field alamat asal atau alamat tujuan dari sebuah paket.
2. MANGLE : Digunakan untuk melakukan penghalusan (mangle) paket, seperti TTL, TOS dan
MARK.
3. FILTER : Secara umum, inilah pemfilteran paket yang sesungguhnya.. Di sini bisa dintukan
apakah paket akan di-DROP, LOG, ACCEPT atau REJECT
2. Command
Command pada baris perintah IPTables akan memberitahu apa yang harus dilakukan terhadap

lanjutan sintaks perintah. Umumnya dilakukan penambahan atau penghapusan sesuatu dari tabel
atau yang lain.
Command
-A
–append
-D
–delete
-R
–replace
-I
–insert
-L
–list

-F
–flush
-N
–new-chain
-X
–delete-chain

-P

Keterangan
Perintah ini menambahkan aturan pada akhir
chain. Aturan akan ditambahkan di akhir baris
pada chain yang bersangkutan, sehingga akan
dieksekusi terakhir
Perintah ini menghapus suatu aturan pada chain.
Dilakukan dengan cara menyebutkan secara
lengkap perintah yang ingin dihapus atau
dengan menyebutkan nomor baris dimana
perintah akan dihapus.
Penggunaannya sama seperti –delete, tetapi
command ini menggantinya dengan entry yang
baru.
Memasukkan aturan pada suatu baris di chain.
Aturan akan dimasukkan pada baris yang
disebutkan, dan aturan awal yang menempati
baris tersebut akan digeser ke bawah. Demikian
pula baris-baris selanjutnya.

Perintah ini menampilkan semua aturan pada
sebuah tabel. Apabila tabel tidak disebutkan,
maka seluruh aturan pada semua tabel akan
ditampilkan, walaupun tidak ada aturan sama
sekali pada sebuah tabel. Command ini bisa
dikombinasikan dengan option –v (verbose), -n
(numeric) dan –x (exact).
Perintah ini mengosongkan aturan pada sebuah
chain. Apabila chain tidak disebutkan, maka
semua chain akan di-flush.
Perintah tersebut akan membuat chain baru.

Perintah ini akan menghapus chain yang
disebutkan. Agar perintah di atas berhasil, tidak
boleh ada aturan lain yang mengacu kepada
chain tersebut.
Perintah ini membuat kebijakan default pada
sebuah chain. Sehingga jika ada sebuah paket
108


Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

–policy

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

yang tidak memenuhi aturan pada baris-baris
yang telah didefinisikan, maka paket akan
diperlakukan sesuai dengan kebijakan default
ini.
Perintah ini akan merubah nama suatu chain.

-E
–rename-chain
3. Option

Option digunakan dikombinasikan dengan command tertentu yang akan menghasilkan suatu

variasi perintah.
Option
-v

Command Pemakai
–list

–verbose

–append
–insert
–delete

-x

–replace
–list

–exact
-n


–list

–numeric

–line-number

–list

–modprobe

All

Keterangan
Memberikan output yang lebih
detail, utamanya digunakan
dengan –list. Jika digunakan
dengan
–list, akan menampilkam K
(x1.000),
M (1.000.000) dan G
(1.000.000.000).
Memberikan output yang lebih
tepat.
Memberikan output yang
berbentuk angka. Alamat IP dan
nomor port akan ditampilkan
dalam bentuk angka dan bukan
hostname ataupun nama
aplikasi/servis.
Akan menampilkan nomor dari
daftar aturan. Hal ni akan
mempermudah bagi kita untuk
melakukan modifikasi aturan, jika
kita mau meyisipkan atau
menghapus aturan dengan nomor
tertentu.
Memerintahkan IPTables untuk
memanggil modul tertentu. Bisa
digunakan bersamaan dengan
semua command.

4. Generic Matches
Generic Matches artinya pendefinisian kriteria yang berlaku secara umum. Dengan kata lain,
sintaks generic matches akan sama untuk semua protocol.

109

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

Match
-p
–protocol

-s
–src
–source
-d
–dst
–destination
-i
–in-interface
-o
–out-interface

5.

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

Keterangan
Digunakan untuk mengecek tipe protokol tertentu.
Contoh protokol yang umum adalah TCP, UDP,
ICMP dan ALL. Daftar protokol bisa dilihat pada
/etc/protocols.
Tanda inversi juga bisa diberlakukan di sini, misal
kita menghendaki semua protokol kecuali icmp,
maka kita bisa menuliskan –protokol ! icmp yang
berarti semua kecuali icmp.
Kriteria ini digunakan untuk mencocokkan paket
berdasarkan alamat IP asal. 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.
Digunakan untuk mecocokkan paket berdasarkan
alamat tujuan. Penggunaannya sama dengan match
–src

Match ini berguna untuk mencocokkan paket
berdasarkan interface di mana paket datang. Match
ini hanya berlaku pada chain INPUT, FORWARD
dan PREROUTING
Berfungsi untuk mencocokkan paket berdasarkan
interface di mana paket keluar. Penggunannya sama
dengan
–in-interface. Berlaku untuk chain OUTPUT,
FORWARD dan POSTROUTING

Implicit Matches

Implicit Matches adalah match yang spesifik untuk tipe protokol tertentu. Implicit Match
merupakan sekumpulan rule yang akan diload setelah tipe protokol disebutkan. Ada 3 Implicit
Match berlaku untuk tiga jenis protokol, yaitu TCP matches, UDP matches dan ICMP matches.
a. TCP matches
Match
–sport
–source-port

Keterangan
Match ini berguna untuk mecocokkan paket
berdasarkan port asal. Dalam hal ini kia bisa
mendefinisikan nomor port atau nama service-nya.
Daftar nama service dan nomor port yang
bersesuaian dapat dilihat di /etc/services.
–sport juga bisa dituliskan untuk range port tertentu.
Misalkan kita ingin mendefinisikan range antara port
22 sampai dengan 80, maka kita bisa menuliskan

110

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

–sport 22:80.

–dport
–destination-port
–tcp-flags

–syn

Jika bagian salah satu bagian pada range tersebut kita
hilangkan maka hal itu bisa kita artikan dari port 0,
jika bagian kiri yang kita hilangkan, atau 65535 jika
bagian kanan yang kita hilangkan. Contohnya –sport
:80 artinya paket dengan port asal nol sampai dengan
80, atau –sport 1024: artinya paket dengan port asal
1024 sampai dengan 65535.Match ini juga mengenal
inversi.
Penggunaan match ini sama dengan match
–source-port.
Digunakan untuk mencocokkan paket berdasarkan
TCP flags yang ada pada paket tersebut. Pertama,
pengecekan akan mengambil daftar flag yang akan
diperbandingkan, dan kedua, akan memeriksa paket
yang di-set 1, atau on.
Pada kedua list, masing-masing entry-nya harus
dipisahkan oleh koma dan tidak boleh ada spasi antar
entry, kecuali spasi antar kedua list. Match ini
mengenali SYN,ACK,FIN,RST,URG, PSH. Selain
itu kita juga menuliskan ALL dan NONE. Match ini
juga bisa menggunakan inversi.
Match ini akan memeriksa apakah flag SYN di-set
dan ACK dan FIN tidak di-set. Perintah ini sama
artinya jika kita menggunakan match –tcp-flags
SYN,ACK,FIN SYN
Paket dengan match di atas digunakan untuk
melakukan request koneksi TCP yang baru terhadap
server

b.

c.

UDP Matches
Karena bahwa protokol UDP bersifat connectionless, maka tidak ada flags yang
mendeskripsikan status paket untuk untuk membuka atau menutup koneksi. Paket UDP juga
tidak memerlukan acknowledgement. Sehingga Implicit Match untuk protokol UDP lebih
sedikit daripada TCP Ada dua macam match untuk UDP:
–sport atau –source-port
–dport atau –destination-port
ICMP Matches
Paket ICMP digunakan untuk mengirimkan pesan-pesan kesalahan dan kondisi-kondisi
jaringan yang lain. Hanya ada satu implicit match untuk tipe protokol ICMP, yaitu :
–icmp-type

111

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

6.
a.

Explicit Matches
MAC Address
Match jenis ini berguna untuk melakukan pencocokan paket berdasarkan MAC source
address. Perlu diingat bahwa MAC hanya berfungsi untuk jaringan yang menggunakan
teknologi ethernet.
iptables –A INPUT –m mac –mac-source 00:00:00:00:00:01

b.

Multiport Matches
Ekstensi Multiport Matches digunakan untuk mendefinisikan port atau port range lebih dari
satu, yang berfungsi jika ingin didefinisikan aturan yang sama untuk beberapa port. Tapi hal
yang perlu diingat bahwa kita tidak bisa menggunakan port matching standard dan multiport
matching dalam waktu yang bersamaan.
iptables –A INPUT –p tcp –m multiport –source-port 22,53,80,110

c.

Owner Matches
Penggunaan match ini untuk mencocokkan paket berdasarkan pembuat atau pemilik/owner
paket tersebut. Match ini bekerja dalam chain OUTPUT, akan tetapi penggunaan match ini
tidak terlalu luas, sebab ada beberapa proses tidak memiliki owner (??).
iptables –A OUTPUT –m owner –uid-owner 500

d. State Matches
Match ini mendefinisikan state apa saja yang cocok. Ada 4 state yang berlaku, yaitu NEW,
ESTABLISHED, RELATED dan INVALID. NEW digunakan untuk paket yang akan
memulai koneksi baru. ESTABLISHED digunakan jika koneksi telah tersambung dan
paket-paketnya merupakan bagian dari koneki tersebut. RELATED digunakan untuk
paket-paket yang bukan bagian dari koneksi tetapi masih berhubungan dengan koneksi
tersebut, contohnya adalah FTP data transfer yang menyertai sebuah koneksi TCP atau UDP.
INVALID adalah paket yang tidak bisa diidentifikasi, bukan merupakan bagian dari koneksi
yang ada.
iptables –A INPUT –m state –state RELATED,ESTABLISHED
7. Target/Jump
Target atau jump adalah perlakuan yang diberikan terhadap paket-paket yang memenuhi kriteria
atau match. Jump memerlukan sebuah chain yang lain dalam tabel yang sama. Chain tersebut
nantinya akan dimasuki oleh paket yang memenuhi kriteria. Analoginya ialah chain baru nanti
berlaku sebagai prosedur/fungsi dari program utama. Sebagai contoh dibuat sebuah chain yang
bernama tcp_packets. Setelah ditambahkan aturan-aturan ke dalam chain tersebut, kemudian chain
tersebut akan direferensi dari chain input.
iptables –A INPUT –p tcp –j tcp_packets
Target
-j ACCEPT
–jump ACCEPT

-j DROP

Keterangan
Ketika paket cocok dengan daftar match dan target ini
diberlakukan, maka paket tidak akan melalui baris-baris
aturan yang lain dalam chain tersebut atau chain yang lain
yang mereferensi chain tersebut. Akan tetapi paket masih
akan memasuki chain-chain pada tabel yang lain seperti
biasa.
Target ini men-drop paket dan menolak untuk memproses
lebih jauh. Dalam beberapa kasus mungkin hal ini kurang
112

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

–jump DROP

-j RETURN
–jump RETURN

-j MIRROR

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

baik, karena akan meninggalkan dead socket antara client
dan server.
Paket yang menerima target DROP benar-benar mati dan
target tidak akan mengirim informasi tambahan dalam
bentuk apapun kepada client atau server.
Target ini akan membuat paket berhenti melintasi
aturan-aturan pada chain dimana paket tersebut menemui
target RETURN. Jika chain merupakan subchain dari chain
yang lain, maka paket akan kembali ke superset chain di
atasnya dan masuk ke baris aturan berikutnya. Apabila
chain adalah chain utama misalnya INPUT, maka paket
akan dikembalikan kepada kebijakan default dari chain
tersebut.
Apabila kompuuter A menjalankan target seperti contoh di
atas, kemudian komputer B melakukan koneksi http ke
komputer A, maka yang akan muncul pada browser adalah
website komputer B itu sendiri. Karena fungsi utama target
ini adalah membalik source address dan destination
address.
Target ini bekerja pada chain INPUT, FORWARD dan
PREROUTING atau chain buatan yang dipanggil melalui
chain tersebut.

Beberapa target yang lain biasanya memerlukan parameter tambahan:
a.

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.
iptables –A FORWARD –p tcp –j LOG –log-level debug
iptables –A INPUT –p tcp –j LOG –log-prefix “INPUT Packets”
b. REJECT Target
Secara umum, REJECT bekerja seperti DROP, yaitu memblok paket dan menolak untuk
memproses lebih lanjut paket tersebut. Tetapi, REJECT akan mengirimkan error message ke host
pengirim paket tersebut. REJECT bekerja pada chain INPUT, OUTPUT dan FORWARD atau
pada chain tambahan yang dipanggil dari ketiga chain tersebut.
iptables –A FORWARD –p
icmp-host-unreachable

tcp

–dport

22

–j

REJECT

–reject-with

c.

SNAT Target
Target ini berguna untuk melakukan perubahan alamat asal dari paket (Source Network
Address Translation). Target ini berlaku untuk tabel nat pada chain POSTROUTING, dan hanya

113

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

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.
iptables –t nat –A POSTROUTING –o eth0 –j SNAT –to-source
194.236.50.155-194.236.50.160:1024-32000
d.

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.

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

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.
iptables –t nat –A POSTROUTING –o ppp0 –j MASQUERADE
f.

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.
4.
Implementasi Sistem
Untuk mengimplementasikan program aplikasi yang telah dirancang, maka diperlukan sebuah alat
bantu berupa komputer, yang mana untuk mengoperasikan komputer itu sendiri juga memerlukan
tiga buah komponen pendukung seperti hardware, software, brainware untuk lebih jelasnya dapat
dijelaskan fungsi masing-masing komponen sebagai berikut :
4.1 Pembuatan router sebagai firewall
Dalam pembuatan router masih dalam virtual menggunakan softwere VirtualBox-4.0.0 dengan
menggunakan system operaasi debian 6. Berikut ini adalah skema jaringan yang akan dibikin
sedangkan firewall yang akan dibikin adalah menggunakan iptables.
Web Server
Os W7

Computer

Ipaddress 100.10.0.224
Netmask :255.0.0.0
Gateway : 100.10.0.3

Router

Client
Os XP

Os Debian
eth0
Ip.100.10.0.21
Netmask :255.0.0.0
Gateway : 100.10.0.3

Computer

eth1
Ip.192.168.1.1
Netmask :255.255.255.0
Gateway : 192.168.1.1

Computer

Ipaddress :192.168.1.2
Netmask :255.255.255.0
Gateway : 192.168.1.1

Gambar 2 : Tampilan Topologi jaringan

114

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

4.2 Konfigurasi pada OS Debian dan OS Windows XP
Pastikan bahwa debian memiliki 2 device network aktif, device pertama mode bridge, dan
kedua mode internal network. untuk mengaktifkannya silakan baca kembali tulisan “Installasi
Interface Network Virtual”. Saya anggap debian sudah menggunakan 2 device network sehingga
bisa langsung ke langkah selanjutnya. Masuk terminal, masuk sebagai root, ketikan perintah perintah di bawah ini:

Gambar 3 : Tampilan login di debian

Gambar 4 : Pembuatan router pada Debian

Pada gambar 5 konfigurasi router dan ip address masih bersifat sementara, agar konfigurasi
tersebut tidak hilang ketika kita reboot maka Konfigurasi Ip Address terlebih dahulu, ketikan
perintah berikut :

Gambar 5 : Perintah konfigurasi ip statik

dan konfigurasi seperti pada gambar 6 :

Gambar 6 : Pengisian ip statik

setelah itu save dengan ctrl + x terus Y tekan enter, setelah di save kita restart network
interfacenya dengan ketikan perintah seperti pada gambar 4.48.

Gambar 7 : Perintah Merestart setingan network

115

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

Gambar 8 merupakan Konfigurasi iptable untuk routing ketikan perintah tersebut untuk
me-routing atau melewatkan beberapa network jaringan.

Gambar 8 : Konfigurasi Router

Dan untuk melihat hasilnya dengan mengetikan perintah sebagai gambar 9 berikut ini.

Gambar 9 : Melihat konfigurasi router

Jika sudah muncul seperti di atas berarti konfigurasi kita berhasil
agar konfigurasi kita tersebut tidak hilang ketika kita reboot maka kita harus tambahkan
konfigurasi seperti gambar 10.

Gambar 10 : Menyimpan Konfigurasi router

Tambahkan sekript #!/bin/sh diatas sekript iptables-restore dan kemudian simpan kembali seperti
berikut gambar 11.

Gambar 11 : Pembuatan pemanggilan iptables

Setelah itu kita masukan perintah berikut untuk membuat file super admin dengan cara ketikan
perintah sebagai gambar 12

Gambar 12 : Pembuatan file super admin

Kemudian kita reboot debian, setelah di reboot masuk lagi ke root lalu kita masukan perintah
seperti gambar 13 berikut.

116

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

Gambar 13 : Konfigurasi ip setelah reboot

Setelah di reboot masuk lagi ke root lalu cek apakah iptables yang tadi kita konfigurasi sudah bisa
menrestore dengan cara ketikan perintah berikut ini.

Gambar 14 Perintah Melihat konfigurasi

jika konfigurasi berhasil maka akan tampil seperti gambar 15.

Gambar 15 : Konfigurasi router yang berhasil

Berikut ini adalah pengisian ip address untuk komputer client pastikan komputer client pada
windows xp ini sudah terhubung dengan router dengan media penghubung.

Gambar 16 : Tampilan konfigurasi ip address pada windows xp

Jika sudah selesai pemberian ip address coba ping ke ip router dan komputer web server jika reply
maka komputer client sudah terhubung.berikut ini adalah gambar komputer client sudah
terkoneksi dengan router dan web server.

117

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

4.3 Pembuatan aturan (firewall chain) pada OS debian
A. Memblokir Protokol ICMP (ping)
Firewall untuk memblokir ICMP (Ping) dari Client beralamat 192.168.1.2 menuju Firewall Pada
Hal ini, berikan aturan untuk memblokir protocol ICMP (yang digunakan untuk melakukan ping)
dengan mengetikkan perintah:

Gambar 17 : Blokir protokol ICMP dari Client menuju firewall

Firewall untuk memblokir ICMP (Ping) dari Client beralamat 192.168.1.2 menuju ke alamat IP
server Pada Hal ini, berikan aturan untuk memblokir protocol ICMP (yang digunakan untuk
melakukan ping) dengan mengetikkan perintah:

Gambar 18 : Blokir protokol ICMP dari Client menuju ip server

Gambar 19 : Hasil ping komputer client yang tidak di – blok

Berikut ini adalah hasil pada client yang tidak di izinkan ping setelah pemberian firewall Blokir
protokol ICMP dari Client menuju ip server.

Gambar 20 : Hasil ping computer client setelah di blok
B. Memblokir Protokol TCP untuk akses File Transfer Protocol (FTP)
Untuk memblokir protocol TCP (akses FTP), harus menggunakan alamat port yang
disediakan. Untuk kasus ini, Port yang digunakan adalah port 21. Firewall untuk memblokir akses
FTP dari client dengan IP Address 192.168.1.2 menuju Server melalui port 21 dengan protocol
TCP adalah sebagai gambar 4.62 berikut ini:

Gambar 21 : Perintah lptables untuk memblokir akses FTP ke server

118

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

Berikut ini adalah hasil pada client yang tidak di izinkan mengakses FTP setelah pemberian
firewall memblokir akses FTP ke server.

Gambar 22 : Tampilan pada client yang tidak di izinkan mengakses FTP

C. Memblokir protocol TCP untuk akses Hyper Text Transfer Protocol (HTTP)
Untuk memblokir protocol TCP untuk akses Hyper Text Transfer Protocol (HTTP), harus
menggunakan alamat port yang disediakan. Untuk kasus ini, Port yang digunakan adalah port 80.
Firewall untuk memblokir akses Web Server dari client dengan IP Address 192.168.1.2 menuju
Server melalui port 80 dengan protocol TCP adalah sebagai gambar 4.64 berikut ini:

Gambar 23 : Perintah lptables untuk memblokir akses web server

Gambar 24 : Tampilan pada client yang di izinkan mengakses web server

Berikut ini adalah hasil pada client yang tidak di izinkan mengakses web server setelah pemberian
firewall untuk memblokir akses Web Server dari client

Gambar 25 : Tampilan pada client yang tidak di izinkan mengakses web server

D. Memblokir protocol TCP untuk akses Remote Protocol
Akses remote protocol sangat berbahaya bagi keamanan sistem, dimana client yang
menggunakan salah satu software remote (mis: putty pada Windows, SSH pada Linux), dapat
mengakses firewall maupun server dari jarak jauh jika client tersebut mengetahui alamat IP dari
Firewall atau server. Software ini berjalan pada protocol TCP pada port 22 (SSH). Firewall untuk
memblokir akses Remote dari client dengan IP Address 192.168.1.2 menuju Server melalui port
80 dengan protocol TCP.

119

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

Gambar 26 : Perintah lptables untuk memblokir akses remote

Berikut ini adalah hasil pada client yang akses remote nya ke router tidak di izinkan setelah
pemberian firewall untuk memblokir akses Remote dari client

Gambar 27 : Tampilan client yang akses remote nya ke router tidak di izinkan

Berikut ini adalah hasil pada client yang akses remote nya ke router di izinkan.

Gambar 28 : Tampilan client yang akses remote nya ke server di izinkan

E. Memblokir memblokir akses Interface yang Masuk
Firewall untuk memblokir akses Interface yang Masuk dari client dengan IP Address
192.168.1.2 dengan protocol TCP.
Gambar 29 : Perintah lptables untuk memblokir akses Interface yang Masuk

Berikut ini adalah hasil pada client yang akses nya ke router tidak di izinkan.

Gambar 21 : Tampilan client yang akses ke server tidak diizinkan

5. Kesimpulan
Pada akhir penelitian ini penulis mencoba mengambil kesimpulan dari apa yang telah dibahas
sebelumnya. Penulis memberikan solusi IPTables sebagai Firewall karena memiliki beberapa
keunggulan:
120

Jurnal KomTekInfo, Vol. 3, No. 1, 2016, Hal 106 – 121 ,
Copyright@2016 by LPPM UPI YPTK Padang

ISSN CETAK : 2356 – 0010, ISSN ONLINE :

2502-8758

1. Implementasinya yang murah karena telah terdapat pada Sistem Operasi Linux .
2. Connection Tracking Capability yaitu kemampuan unutk inspeksi paket serta bekerja dengan
icmp dan udp sebagaimana koneksi TCP.
3. Menyederhanakan perilaku paket-paket dalam melakukan negosiasi built in chain (input,output,
dan forward).
4. Rate-Limited connection dan logging capability. Kita dapat membatasi usaha-usaha koneksi
sebagai tindakan preventif serangan Syn flooding denial of services(DOS).
5. Kemampuan untuk memfilter flag-flag dan opsi tcp dan address-address MAC.

Daftar Pustaka
[1].

[2]
[3]
[4]
[5]

Kimin, Ferdian Hans. (2010).. Perancangan Sistem Keamanan Jaringan Komputer Berbasis
SNORT Intrussion Detection System dan Ip-tables Firewall. Medan; Teknik Elektro
Universitas Sumatra Utara.
J. Network, 2012,
Application Note SECURING AND HARDENING NSM
USING IPTABLES, Juniper Network Inc
Scarfone K. & Hoffman P. ,2009, Guidelines on firewalls and firewall policy,
Department of Commerce, Amerika Serikat Sutarbi.
Qasim B. ,2012, Mitigating Dos/DDoS AttACK Using Iptables. International Journal of
Engineering & Technology IJET-IJENS Vol: 12 No:03.
Regina Riyantika dll. ,2013, Analisis Kinerja sistem Pengamanan Jaringan Dengan
Menggunakan Snort Ids Dan Ip-Ables Di Area Laboratorium Rdnm Pt. ”X” Jurnal Online
Institut Teknologi Nasional Vol: 01 No:03.

121