Grundlage Konfiguration Circuit Level Proxy und Paketfilter
Hallo Leute,
ich habe mal eine Frage zur DMZ, die wir gerade in der Schule durchnehmen.
folgender Aufbau:
sicheres Netz - Paketfilter - Application Level Gateway (dual homed) - Paketfilter - unsicheres Netz
So sollte der Aufbau einer optimal ausgelegten DMZ sein.
Was ist aber jetzt wenn mehrere Clients aus dem sicheren Netz eine Verbindung zu einem außenstehen (unsicheres Netz) aufnehmen wollen. In diesem Fall bestimmt doch der Circuit Level Proxy, über welchen Port die Clients nach draußen zum gewünschten (z.B.) FTP-Server sich verbinden, sofern dieser Proxy auf dem ALG installiert ist.
Wenn jedoch die Paketfilter so ausgelegt sind, dass sie auf Schicht 3 alle Ports blocken, dann kann dieser Aufbau jedoch nie stattfinden, oder findet an dieser Stelle ein Austausch zwischen ALG und PK-Filter statt? Meineswissens nicht. Das heißt der Einsatz einer Circuit Level Proxys wäre an dieser Stelle Schwachsinn. Sinn würde nur ein Application Leven Proxy amchen, der auf Schicht 4 die Pakete auf Daten und Befehlinhalt prüft.
Ist das so richtig wie ich das formuliert habe?
Wann machen Circuit Level Proxys Sinn diese einzusetzen?
Mit freundlichen Grüßen
Freaky
ich habe mal eine Frage zur DMZ, die wir gerade in der Schule durchnehmen.
folgender Aufbau:
sicheres Netz - Paketfilter - Application Level Gateway (dual homed) - Paketfilter - unsicheres Netz
So sollte der Aufbau einer optimal ausgelegten DMZ sein.
Was ist aber jetzt wenn mehrere Clients aus dem sicheren Netz eine Verbindung zu einem außenstehen (unsicheres Netz) aufnehmen wollen. In diesem Fall bestimmt doch der Circuit Level Proxy, über welchen Port die Clients nach draußen zum gewünschten (z.B.) FTP-Server sich verbinden, sofern dieser Proxy auf dem ALG installiert ist.
Wenn jedoch die Paketfilter so ausgelegt sind, dass sie auf Schicht 3 alle Ports blocken, dann kann dieser Aufbau jedoch nie stattfinden, oder findet an dieser Stelle ein Austausch zwischen ALG und PK-Filter statt? Meineswissens nicht. Das heißt der Einsatz einer Circuit Level Proxys wäre an dieser Stelle Schwachsinn. Sinn würde nur ein Application Leven Proxy amchen, der auf Schicht 4 die Pakete auf Daten und Befehlinhalt prüft.
Ist das so richtig wie ich das formuliert habe?
Wann machen Circuit Level Proxys Sinn diese einzusetzen?
Mit freundlichen Grüßen
Freaky
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 94922
Url: https://administrator.de/contentid/94922
Ausgedruckt am: 25.11.2024 um 17:11 Uhr
1 Kommentar
Hallo Freaky,
ein "Application Level Proxy" operiert auf Schicht 5. Er kann also das Protokoll FTP oder HTTP usw. sprechen und damit umgehen. Diese Proxy's werden verwendet, um in einem Protokoll selbst zu filtern. Typisch ist dies für Content Filter oder ReverseProxy's.
Generische Proxy's verwendet man meistens, um verbindungen auf Schicht 4 über die Firewall zu bekommen. Er kann mehr als einfaches NAT, zb. Authentifizierung oder erweiterte Filterung, versteht allerdings nicht das L5 Protokoll. Ein solcher Proxy währe zb. ein SOCKS5 Proxy, der nur UDP uder TCP Verbindungen nach Authentifizierung des Users durchreicht.
Alle Proxy's benötigen auf dem Host entsprechende Regeln des Paketfilters am ausgehendem Interface. Wenn zb. der L5 Proxy den Portbereich 10000-12000 für ausgehende Verbindungen verwendet, muss dieser Bereich für ausgehende Verbindungen frei bleiben. Der Socks könnte zb. 13000-15000 und FTP 16000-19000 verwenden. Neuere Paketfilter arbeiten auch STATE-Basis (SPI). Dabei muss nicht mehr jeder Verbindungszustand einzeln in einer Regel definiert werden (SYN, SYN-ACK, ACK) sondern es wird der Status einer Verbindung (NEW, ESTABLISHED, RELATED, INVALID ...) erkannt. Um die ausgehenden HTTP-Verbnindungen des ALG durchzulassen, muss man in OUTPUT nur Pakete vom Status NEW und in INPUT Pakete vom Status ESTABLISHED durchlassen. Genauer Filtert man mit dem vorher im ALG konfigurierten Source-Ports.
Beispiel:
Der HTTP-Proxy verwendet Ports 10000-12000 für Client-Verbindungen zu Port 80, 8080, 443. Das würde folgende Regeln am Paketfilter erfordern:
Hochwertige ALG's verwenden für diese Regeln keine statische Konfiguration, sondern öffnen die Ports vom ALG. Der Proxy öffnet quase die Firewall für eingehende EST Verbindungen und ausgehende NEW, EST sobald er eine neue Verbindung aufbaut. In diesem Fall findet tatsächlich eine Kommunikation zwischen Proxy und Portfilter statt.
Was den generischen Proxy angeht, er macht das ganz genauso. Nur das diese das Protokoll nicht verstehen sondern allein auf der Transportschicht arbeiten. Es gibt ach zwischenlösungen, die beides machen.
Falls ein Protokoll weder über L5 noch L4 Proxy's funktioniert, bleibt noch NAT. Dabei werden die Pakete einfach nur durchgeleitet und am ausgehendem Interface die Quelladresse umgeschrieben. Eine besondere Art von NAT ist MASQ. Dabei wird für alle ausgehenden verbindungen die selbe IP verwendet und zusätzlich der Client-Port (source-Port) umgeschrieben. Dies ist schon die Vorstufe eines generischen Proxy's, schafft aber leider keine völlige Trennung der Verbindung am Gateway.
Ich hoffe das hilft dir erstmal weiter. Sollte ich etwas verdreht oder vergessen haben, werden mich andere sicher Korrigieren oder Vervollständigen.
ein "Application Level Proxy" operiert auf Schicht 5. Er kann also das Protokoll FTP oder HTTP usw. sprechen und damit umgehen. Diese Proxy's werden verwendet, um in einem Protokoll selbst zu filtern. Typisch ist dies für Content Filter oder ReverseProxy's.
Generische Proxy's verwendet man meistens, um verbindungen auf Schicht 4 über die Firewall zu bekommen. Er kann mehr als einfaches NAT, zb. Authentifizierung oder erweiterte Filterung, versteht allerdings nicht das L5 Protokoll. Ein solcher Proxy währe zb. ein SOCKS5 Proxy, der nur UDP uder TCP Verbindungen nach Authentifizierung des Users durchreicht.
Alle Proxy's benötigen auf dem Host entsprechende Regeln des Paketfilters am ausgehendem Interface. Wenn zb. der L5 Proxy den Portbereich 10000-12000 für ausgehende Verbindungen verwendet, muss dieser Bereich für ausgehende Verbindungen frei bleiben. Der Socks könnte zb. 13000-15000 und FTP 16000-19000 verwenden. Neuere Paketfilter arbeiten auch STATE-Basis (SPI). Dabei muss nicht mehr jeder Verbindungszustand einzeln in einer Regel definiert werden (SYN, SYN-ACK, ACK) sondern es wird der Status einer Verbindung (NEW, ESTABLISHED, RELATED, INVALID ...) erkannt. Um die ausgehenden HTTP-Verbnindungen des ALG durchzulassen, muss man in OUTPUT nur Pakete vom Status NEW und in INPUT Pakete vom Status ESTABLISHED durchlassen. Genauer Filtert man mit dem vorher im ALG konfigurierten Source-Ports.
Beispiel:
Der HTTP-Proxy verwendet Ports 10000-12000 für Client-Verbindungen zu Port 80, 8080, 443. Das würde folgende Regeln am Paketfilter erfordern:
Ausgehend TCP Source 10000:120000 Dest any Destports 80,8080,443 state NEW,ESTABLISHED ERLAUBEN
Eingehend TCP Source any Sourceports 80,8080,443 Dest $EXT_INTERFACE Destport 10000:12000 state ESTABLISHED
Hochwertige ALG's verwenden für diese Regeln keine statische Konfiguration, sondern öffnen die Ports vom ALG. Der Proxy öffnet quase die Firewall für eingehende EST Verbindungen und ausgehende NEW, EST sobald er eine neue Verbindung aufbaut. In diesem Fall findet tatsächlich eine Kommunikation zwischen Proxy und Portfilter statt.
Was den generischen Proxy angeht, er macht das ganz genauso. Nur das diese das Protokoll nicht verstehen sondern allein auf der Transportschicht arbeiten. Es gibt ach zwischenlösungen, die beides machen.
Falls ein Protokoll weder über L5 noch L4 Proxy's funktioniert, bleibt noch NAT. Dabei werden die Pakete einfach nur durchgeleitet und am ausgehendem Interface die Quelladresse umgeschrieben. Eine besondere Art von NAT ist MASQ. Dabei wird für alle ausgehenden verbindungen die selbe IP verwendet und zusätzlich der Client-Port (source-Port) umgeschrieben. Dies ist schon die Vorstufe eines generischen Proxy's, schafft aber leider keine völlige Trennung der Verbindung am Gateway.
Ich hoffe das hilft dir erstmal weiter. Sollte ich etwas verdreht oder vergessen haben, werden mich andere sicher Korrigieren oder Vervollständigen.