Latest revision as of 20:36, 31 October 2025
Tabel Atribut / Parameter IPTables
Atribut Dasar IPTables
| Atribut / Opsi
|
Contoh
|
Keterangan
|
-A
|
-A INPUT
|
Menambahkan rule di akhir chain
|
-I
|
-I INPUT 1
|
Menyisipkan rule di baris tertentu
|
-D
|
-D INPUT 3
|
Menghapus rule tertentu
|
-R
|
-R INPUT 2
|
Mengganti rule di baris tertentu
|
-L
|
-L -n -v
|
Menampilkan rules
|
-F
|
-F INPUT
|
Menghapus semua rule di chain
|
-X
|
-X mychain
|
Menghapus custom chain
|
-P
|
-P INPUT DROP
|
Set default policy (DROP/ACCEPT)
|
-t
|
-t nat
|
Memilih tabel (filter, nat, mangle, raw)
|
-n
|
iptables -L -n
|
Menampilkan IP/port dalam bentuk angka (lebih cepat)
|
-v
|
iptables -L -v
|
Menampilkan counter & detail
|
Atribut untuk Filter Berdasarkan IP & Interface
| Atribut
|
Contoh
|
Keterangan
|
-s
|
-s 192.168.1.10
|
IP sumber (source)
|
-d
|
-d 8.8.8.8
|
IP tujuan (destination)
|
-i
|
-i eth0
|
Interface masuk
|
-o
|
-o eth1
|
Interface keluar
|
-p
|
-p tcp
|
Protokol (tcp/udp/icmp/all)
|
-m
|
-m state
|
Menggunakan modul tambahan
|
Atribut untuk TCP
| Atribut
|
Contoh
|
Keterangan
|
--dport
|
--dport 22
|
Port tujuan (SSH/HTTP/etc)
|
--sport
|
--sport 80
|
Port sumber
|
--tcp-flags
|
--tcp-flags SYN,ACK SYN
|
Filter berdasarkan flag TCP
|
--syn
|
-p tcp --syn
|
Menerima koneksi baru (flag SYN)
|
Atribut untuk UDP
| Atribut
|
Contoh
|
Keterangan
|
--dport
|
--dport 53
|
Port tujuan UDP (DNS)
|
--sport
|
--sport 123
|
Port sumber UDP
|
Atribut untuk ICMP (Ping)
| Atribut
|
Contoh
|
Keterangan
|
--icmp-type
|
--icmp-type 8
|
Jenis ICMP (8 = echo request)
|
Jenis ICMP umum:
| Type
|
Fungsi
|
| 0
|
Echo Reply
|
| 8
|
Echo Request (ping)
|
| 3
|
Destination Unreachable
|
| 5
|
Redirect
|
| 11
|
Time Exceeded
|
Atribut untuk Connection Tracking (-m state / -m conntrack)
Digunakan untuk firewall stateful
| State
|
Keterangan
|
NEW
|
Koneksi baru
|
ESTABLISHED
|
Koneksi aktif / sudah berjalan
|
RELATED
|
Koneksi terkait (FTP passive, ICMP error)
|
INVALID
|
Paket rusak / tidak valid
|
Contoh:
-m state --state ESTABLISHED,RELATED -j ACCEPT
Atribut NAT Table (PREROUTING, POSTROUTING, OUTPUT)
| Atribut
|
Contoh
|
Keterangan
|
--to
|
--to 192.168.1.10
|
DNAT ke IP tertentu
|
--to-port
|
--to-port 22
|
DNAT ke port tertentu
|
-j MASQUERADE
|
|
NAT otomatis untuk IP dinamis (typical router)
|
-j SNAT
|
--to-source 1.2.3.4
|
NAT manual untuk IP statis
|
-j DNAT
|
|
Port forwarding masuk
|
Contoh Src.NAT:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Contoh Dst.NAT (port forwarding):
iptables -t nat -A PREROUTING -p tcp --dport 2222 -j DNAT --to 192.168.1.50:22
Atribut Mangle Table (QoS, TTL, Marking)
| Atribut
|
Contoh
|
Keterangan
|
-j MARK
|
--set-mark 1
|
Menandai paket
|
--ttl-set
|
--ttl-set 64
|
Mengatur TTL
|
--ttl-inc
|
--ttl-inc 1
|
Menambah TTL
|
--ttl-dec
|
--ttl-dec 1
|
Mengurangi TTL
|
Contoh:
iptables -t mangle -A PREROUTING -p tcp --dport 80 -j MARK --set-mark 10
Atribut Logging
| Atribut
|
Contoh
|
Keterangan
|
-j LOG
|
|
Melog paket yang cocok
|
--log-prefix
|
"DROP: "
|
Tambahkan teks prefix ke log
|
--log-level
|
4
|
Level logging (info/warning/etc)
|
Contoh :
iptables -A INPUT -j LOG --log-prefix "IPTABLES-DROP: "
Atribut Rate-Limiting / Anti Brute-Force
Modul: -m limit
| Atribut
|
Contoh
|
Keterangan
|
--limit
|
--limit 5/minute
|
Membatasi jumlah paket
|
--limit-burst
|
--limit-burst 10
|
Paket awal yang diizinkan
|
Modul: -m recent
| Atribut
|
Contoh
|
Keterangan
|
--set
|
|
Menandai IP
|
--update
|
|
Cek aktivitas IP
|
--seconds
|
--seconds 60
|
Waktu blok
|
--hitcount
|
--hitcount 5
|
Jumlah percobaan
|
Contoh anti brute-force SSH:
iptables -A INPUT -p tcp --dport 22 -m recent --set
iptables -A INPUT -p tcp --dport 22 -m recent --update --seconds 60 --hitcount 4 -j DROP
Atribut Misc / Lainnya
| Atribut
|
Contoh
|
Keterangan
|
-j ACCEPT
|
|
Menerima paket
|
-j DROP
|
|
Membuang paket tanpa pesan
|
-j REJECT
|
|
Menolak paket dengan pesan ICMP
|
-j RETURN
|
|
Keluar dari chain dan kembali ke chain pemanggil
|