Firewall - Teil 3
- Passive data channel mode
Dieser Modus ist relativ neu. Er wird standardmäßig von Webbrowsern verwendet, die auf eine FTP-Ressource zugreifen. Beim passiven Modus werden beide Verbindungen, also Kontroll- und Datenverbindung, vom Client aus gestartet.
Die folgenden Regeln erlauben eine Verbindung zu einem beliebigen FTP-Server:
ipchains -A input -i $ext_int -p tcp ! -y -s $alles 21 -d $ip_adr \ $unpriv_ports -j ACCEPT ipchains -A output -i $ext_int -p tcp -s $ip_adr $unpriv_ports -d $alles \ 21 -j ACCEPT
Die Regeln für den normalen Modus:
ipchains -A input -i $ext_int -p tcp -s $alles 20 -d $ip_adr \ $unpriv_ports -j ACCEPT ipchains -A output -i $ext_int -p tcp ! -y -s $ip_adr $unpriv_ports \ -d $alles 20 -j ACCEPT
Da beim normalen Modus der FTP-Server die Verbindung startet, können ausgehende Pakete aus dem lokalen Netz, die eine Verbindung starten wollen (SYN-Flag), geblockt werden.
Die Regeln für den passiven Modus:
ipchains -A input -i $ext_int -p tcp ! -y -s $alles $unpriv_ports \ -d $ip_adr $unpriv_ports -j ACCEPT ipchains -A output -i $ext_int -p tcp -s $ip_adr $unpriv_ports -d $alles \ $unpriv_ports -j ACCEPT
5.7.18 Datenverkehr aus dem LAN ins Internet
Zu diesem Zeitpunkt haben Computer im lokalen Netz weder Zugang zur internen Netzwerkschnittstelle (die Netzwerkkarte) der Firewallnoch zum Internet.
Die folgenden Regeln öffnen die Firewall für Pakete aus dem lokalen Netz:
ipchains -A input -i $int_int -s $lan -j ACCEPT ipchains -A output -i $int_int -s $lan -j ACCEPT
5.7.19 NAT
Daten aus dem LAN können nun bis auf die Firewall vordringen. Der Weg ins Internet ist wegen der Vergabe von reservierten IP-Adressen der Klasse C jedoch nach wie vor verwehrt.
Die Pakete müssen nun mit der IP-Adresse der Firewall versehen werden. Dies geschieht durch Verwendung von Masquerading in der forward chain der Firewall.
Die forward chain wird von Paketen durchlaufen, die an einem Netzwerkinterface ankommen, und über ein anderes die Firewall wieder verlassen. Die Pakete müssen also beim Durchlaufen dieser chain mit einer gültigen IP-Adresse maskiert werden.
Folgende Regel maskiert alle Pakete des lokalen Netzes, die die Firewall auf der externen Netzwerkschnittstelle (also dem Modem) verlassen wollen, mit der IP-Adresse der Firewall:
ipchains -A forward -i $ext_int -s $lan -j MASQ
Im ersten Moment erweckt diese Regel den Eindruck, daß nun alle Pakete die Firewall wieder verlassen dürfen, egal was für Regeln vorher für die output chain erstellt wurden. Es soll deshalb angemerkt werden, daß alle accept- und deny-Regeln der output chain der externen Schnittstelle der Firewall auf die Pakete nach dem Durchlaufen der forward-Regelliste angewandt werden. Dadurch ist sichergestellt, daß nur die Pakete die Firewall verlassen können, die dazu auch die Erlaubnis haben.
5.7.20 Erstellen des Firewall Skripts
Das in den vorherigen Abschnitten erstellte Skript sollte im Verzeichnis /etc/rc.d der Firewall abgespeichert werden. Das Skript sollte dem Benutzer root zugeordnet sein, und nur er sollte Schreib- und Ausführungsrechte für die Datei besitzen. Anderen Benutzern sollte auf keinen Fall Lesezugriff auf die Datei gestattet werden! Die Dateirechte lassen sich mit dem Kommando chmod ändern:
chmod 700 /etc/rc.d/<Name des Firewallskripts>
Zum automatischen Start des Skripts bei jedem Start des Rechners läßt man es von einem anderen Startupskript, z.B. /etc/rc.d/rc.local, aufrufen.
Sollten Änderungen am Skript vorgenommen worden sein oder möchte man die Firewall neu initialisieren, genügt ein erneuter Aufruf des Skripts durch
sh /etc/rc.d/<Name des Firewallskripts>
Verweise im Text
1 Vgl. Ziegler, Robert. Linux Firewalls
2 Bei X-Windows handelt es sich um die grafische Benutzeroberfläche von Linux.
3 Siehe Kapitel 3.3.1 - Flooding
4 Siehe Kapitel 2.1 - IP-Adresse
5 Mehr Informationen zur Funktionsweise von Multicast finden sich unter
http://wwwipmulticast.com/community/whitepapers/howipmcworks.html
6 Von reservierten IANA-Adreßbereichen zu reden, ist eigentlich falsch, da deren Aufgaben vor einiger Zeit von der ICANN - Internet Corporation for Internet Names and Numbers - übernommen wurden. Dennoch soll hier weiterhin von IANA-Adressen gesprochen werden.
7 Vgl. Ziegler, Robert. Linux Firewalls, S.70
8 Ein weiteres Protokoll zum Mailempfang ist das IMAP-Protokoll. Dies ist jedoch weniger verbreitet, da hier die Mails auf dem Server des Providers gespeichert bleiben. Das setzt eine entsprechend hohe Speicherkapazität voraus und ist dadurch auch mit hohen Investitionen verbunden, was viele Provider abschreckt.

