Linux Firewall mit ipchains

Portfilter: erlaubte Zugriffe

Als erste wichtige Filterregel sollte man den lokalen Verkehr erlauben, der über die sogenannte loopback-Schnittstelle (lo) läuft. Strenggenommen müssten Sie auch hier Filter installieren, doch das würde den Rahmen dieses Artikels sprengen:

# Loopback-Verkehr erlauben
ipchains -A input -i lo -j ACCEPT
ipchains -A output -i lo -j ACCEPT

Falls Sie die Firewall per SSH fernadministrieren wollen, erlaubt die nächste Regel den Zugriff vom internen Netz über Port 22 auf die Firewall. Die benötigten Angaben sind der interne Netzwerkbereich (z.B. 192.168.1.0/24) sowie die IPv4-Adresse der internen Schnittstelle (hier 192.168.1.1 an eth0). Anzumerken ist auch, dass SSH-Clients von Unix-Hosts teilweise mit Quellports zwischen 513 und 1023 eine Verbindung aufbauen, Windows-Hosts (mit z. B. PuTTY) dagegen immer ab 1024. Eingehende Pakete lassen Sie mit folgender Regel passieren:

# intern -> SSH auf Firewall (eingehend)
ipchains -A input -i eth0 -p tcp -s 192.168.1.0/24 512: -d 192.168.1.1 22 -j ACCEPT

Damit der SSH-Dienst auch Antwortpakete zurücksenden kann, müssen diese natürlich auch erlaubt sein. Das erledigt diese Regel:

# intern -> SSH auf Firewall (Antwort)
ipchains -A output -i eth0 -p tcp -s 192.168.1.1 22 -d 192.168.1.0/24 512: ! -y -j ACCEPT

Sie erlaubt durch den Schalter "! -y" keinen von der Firewall ausgehenden Verbindungsaufbau mit Quellport 22. Das behindert nicht die Funktionalität, sondern erhöht die Sicherheit.