Debian : Firewall (IPTables): Difference between revisions
No edit summary |
(→Rules) |
||
| Line 54: | Line 54: | ||
* protokol | * protokol | ||
* action (ACCEPT, DROP, REJECT) | * action (ACCEPT, DROP, REJECT) | ||
=== <u>Konsep penting: Connection Tracking</u> === | |||
iptables bersifat '''stateful''', artinya firewall tahu keadaan koneksi. | |||
State umum: | |||
* <code>NEW</code> — koneksi baru | |||
* <code>ESTABLISHED</code> — koneksi yang sudah berjalan | |||
* <code>RELATED</code> — koneksi tambahan (FTP, ICMP error) | |||
* <code>INVALID</code> — paket rusak/tidak sesuai | |||
Contoh rule penting:<syntaxhighlight lang="shell"> | |||
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT | |||
</syntaxhighlight>→ Supaya koneksi yang sudah terbentuk tidak diblokir. | |||
Revision as of 19:56, 31 October 2025
Apa itu IPTables?
iptables adalah firewall berbasis packet filtering yang bekerja menggunakan Netfilter di kernel Linux.
Ia mengatur lalu-lintas IPv4 (ada juga ip6tables untuk IPv6).
Walaupun Debian 12 memakai nftables secara default, iptables masih sangat penting untuk dipahami, karena:
- Banyak server lama masih memakai iptables.
- Banyak software firewall (fail2ban, docker versi lama, kube-proxy lama) masih berinteraksi dengan iptables.
- Banyak job IT meminta kemampuan iptables.
Arsitektur Dasar (Tables, Chains, Rules)
Tabel (Tables)
Tabel adalah kategori besar untuk aturan firewall.
Tabel utama:
- filter → untuk filtering / menyaring paket Chain: INPUT, OUTPUT, FORWARD
- nat → untuk NAT (SNAT/MASQUERADE & DNAT/PORT FORWARD) Chain: PREROUTING, POSTROUTING, OUTPUT
- mangle → modifikasi header paket (QoS, TTL, dsb)
- raw → pengecualian dari connection tracking
- security → SELinux (jarang dipakai di Debian
Untuk awal-awal kita fokus pada filter dan nat dulu.
Chain (rantai proses firewall)
| Chain | Fungsi |
|---|---|
| INPUT | Paket menuju server lokal |
| OUTPUT | Paket yang keluar dari server |
| FORWARD | Paket yang lewat server (jika server jadi router) |
| PREROUTING | DNAT, port-forwarding sebelum routing |
| POSTROUTING | SNAT/MASQUERADE setelah routing |
Rules
Rule adalah aturan seperti:
- sumber/dst address
- source/dst port
- protokol
- action (ACCEPT, DROP, REJECT)
Konsep penting: Connection Tracking
iptables bersifat stateful, artinya firewall tahu keadaan koneksi.
State umum:
NEW— koneksi baruESTABLISHED— koneksi yang sudah berjalanRELATED— koneksi tambahan (FTP, ICMP error)INVALID— paket rusak/tidak sesuai
Contoh rule penting:
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
→ Supaya koneksi yang sudah terbentuk tidak diblokir.