Bei \"iptables\" handelt es sich um einen Paketfilter.
Und zwar um einen Paketfilter unter der Linux- Kernel - Version 2.4.
Bei einem Paketfilter handelt es sich um eine Software zur Überwachung von eingehenden und ausgehenden Paketen.
Dabei wird anhand
. des Paket - Headers,
. der IP - Adresse
. des Protokolls
. des Ports
vom Senders bzw. vom Empfängers entschieden was mit dem Paket passieren soll.
Es kann akzeptiert werden oder auch verworfen werden (ACCEPT oder DROOPEN).
Dies wird in Form von Regeln in die jeweiligen Tabellen eingetragen (Dazu später mehr).
In Linux sind seit der 1.1 Kernel - Version Paketfilter enthalten.
Die erste Version (basierend auf \"ipfw\" von BSD) wurde 1994 portiert.
Diese Version wurde dann weiter entwickelt und mit Hilfe des Tools \"ipfwadm\" im Kernel 2.0 verwendet.
Ab dem Kernel 2.2 kam \"ipchains\" zum Einsatz und Mitte 1999 mit der neu überarbeiteten Kernel - Version 2.4 das Tool \"iptables\".
Iptables besteht aus 2 Komponenten :
. den Kernel Modulen
. den Userspace-Kommandos
Wenn man Iptables verwenden will muss man die Userspace-Kommandos installieren. Bei Mandrake, RedHat, SuSE und anderen Verwandten Linux-Distributionen liegt diese Software meistens als rpm-Paket vor.
z.B bei Mandrake bei einem erst ab i586-kompatiblen Rechner:
iptables-1.2.5-1mdk.i586.rpm
Ob sie schon installiert ist überprüft man einfach mit dem Befehl:
rpm -q iptables
Wenn das nicht der Fall sein sollte, einfach installieren
Man wechsle also am besten zuerst in das Verzeichnis wo sich das rpm-Paket befindet (Wichtig: Als Root ).In unserem Falle z.B ins Verzeichnis
/mnt/nfs/mdk-82/i586/Mandrake/RPMS/
Und installiert das Programm Paket
rpm -i iptables-1.2.5-1mdk.i586.rpm
und dazu muss man noch das Modul \"ip_tables\" laden,
wenn es denn noch nicht geladen ist.
Überprüfen kann man das mit dem Befehl:
lsmod | grep -i ip
und falls es dann nötig ist, kann man das Modul mit folgendem Befehl laden:
insmod ip_tables
Wenn es dann zu Fehlermeldungen kommt muss man den Kernel neu konfigurieren.
Und sollte man einen Rechner als Firewall einsetzen wollen dann,
muss IP-Forwarding aktiviert sein.
Dies macht man (als Root) mit dem Befehl:
echo1> /proc/sys/net/ipv4/ip_forward
Iptables enthält auch ein Kompatibilitäts-Modul für ipchains
(Name des Moduls: ipchains)
und auch eins für ipfwadm (Name des Moduls: ipfwadm).
Diese Module schließen sich aber gegenseitig aus. Das zuerst geladene Modul \"gewinnt\". Bei SuSE 7.2 zum Beispiel wird in einem Initialisierungs-Skript das Kernel-Modul \"ipchains\" geladen. Dann funktioniert \"iptables\" nicht.
|