Összefoglalva az eddigieket:
#!/bin/sh
# Home standalone gép.
# A lánc kiürítése.
iptables -F
###############
# Alap policy #
###############
# Mindent tiltunk, amit külön nem engedélyezünk.
iptables -P INPUT DROP
iptables -P OUTPUT DROP
# FORWARD most nem kell, de lehetőségként itt hagyjuk.
#iptables -P FORWARD DROP
###################
# INPUT szabályok #
###################
# loopback engedélyezése
iptables -A INPUT -i lo -j ACCEPT
# Engedélyezzük befelé, ami tőlünk származik.
iptables -A INPUT -i eth0 -m state --state ESTABLISHED, RELATED -j ACCEPT
# Invalid sync bites csomagok kiszórása.
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
# ssh engedélyezése - majd ha kell. Most még nem kell.
#iptables -A INPUT -p tcp --dport ssh -j ACCEPT
# A hamis IP címeket kiszűrjük.
iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j DROP
iptables -A INPUT -i eth0 -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i eth0 -s 10.0.0.0/8 -j DROP
# Kiegészítés paranoidoknak (by mavo)
iptables -A INPUT -i eth0 -s 255.0.0.0/8 -j DROP
iptables -A INPUT -i eth0 -s 0.0.0.0/8 -j DROP
# Pingelés tiltása.
iptables -A INPUT -i eth0 -p icmp -j DROP
A szkript még nem teljes. Hátra van még (az esetleges javításokon kívül) az OUTPUT lánc és a szkript-futtatás feltételeinek megteremtése.
A végén pedig majd ne felejtsük el, hogy a biztonság kedvéért parancssorból töröljük az esetleges próbálkozásaink maradványait.
$iptables -X
$iptables -Z
-X = esetleges üres lánc törlése-Z = a csomag-, és byte-számlálók nullázása a lánc valamennyi szabályában.
SP
Utolsó kommentek