Hallo!
Ich habe mich die letzten paar Tage intensiv mit verschiedenen Firewalls und auch iptables auseinandergesetzt.
Letztendlich bin ich auf das Programm Shorewall (
http://www.shorewall.net/) gestoßen.
Im Debian (und auch Ubuntu) ist es ganz einfach installiert mit
aptitude install shorewall
Die Default-Config muss erst in das richtige Verzeichnis (/etc/shorewall) kopiert werden. In Debian Lenny liegt die Config im Gegensatz zu Ubuntu und Debian Etch unter /usr/share/doc/shorewall-common/default-config/.
cd /usr/share/doc/shorewall/default-config/
cp interfaces rules zones policy /etc/shorewall
Anschließend müssen noch die folgenden Config-Files editiert werden:
In der Datei /etc/shorewall/interfaces wird die Netzwerkkarte und die Broadcast Adresse eingestellt.
###############################################################################
#ZONE INTERFACE BROADCAST OPTIONS
net eth0 192.168.0.255 tcpflags
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
In der Datei /etc/shorewall/policy wird die grundlegende Konfiguration der einzelnen Verbindungen festgelegt. $FW bezeichnet den verwendeten PC selbst und net ist unsere Netzwerkkarte wie in /etc/shorewall/interfaces angegeben.
Die folgende Konfiguration erlaubt den PC auf allen Ports nach aussen zu senden, aber alle eingehenden Anfragen zu verwerfen.
###############################################################################
#SOURCE DEST POLICY LOG LIMIT:BURST
# LEVEL
$FW all ACCEPT info
net all DROP info
all all DROP info
#LAST LINE -- DO NOT REMOVE
In der Datei /etc/shorewall/zones muss folgendes eingestellt werden.
###############################################################################
#ZONE TYPE OPTIONS IN OUT
# OPTIONS OPTIONS
fw firewall
net ipv4
#LAST LINE - ADD YOUR ENTRIES ABOVE THIS ONE - DO NOT REMOVE
In der Datei /etc/shorewall/rules können dann einzelne Ports behandelt werden. Das folgende Beispiel zeigt auf 2 verschiedene Varianten wie der SSH-Port (Port 22) zugelassen werden kann.
#######################################################################################################
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/
# PORT(S) PORT(S) DEST LIMIT GROUP
#SECTION ESTABLISHED
#SECTION RELATED
SECTION NEW
#Variante 1 mit Macros
SSH/ACCEPT net $FW
#Variante 2 mit der Portnummer
ACCEPT net $FW tcp 22
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Welche Macros zur Verfügung stehen kann man leicht mit folgendem Befehl herausfinden:
shorewall show macros
Danach muss noch die Firewall gestartet werden.
shorewall safe-start
Sollte sie bereits laufen, hilft der folgende Befehl.
shorewall safe-restart
Sobald die Firewall getestet ist, muss sie nur mehr beim Starten des PCs mitgestartet werden.
Dazu muss die Datei /etc/default/shorewall abgeändert weren:
startup=1
Das wars, damit sollten Sie sicherer sein, als zuvor.
Falls noch jemand Verbesserungsvorschläge hat, wäre ich sehr dankbar.
Wolfgang