IPsec und NAT

20.08.2002, 20:22
Member
Avatar Emba

Beiträge: 907
#1 so...

bitte seht das nich als spam, ich habs schon in 1000 anderen foren versucht, keiner konnte mir helfen...

so: meine frage diesmal
warum kann man nicht ohne weiteres Daten, die mit IPsec verschlüsselt sind, über einen NAT Router laufen lassen,
es geht zwar, soweit ich weiß, aber mir fehlt noch die antwort auf die erste frage

danke
Seitenanfang Seitenende
20.08.2002, 21:20
Ehrenmitglied
Avatar Robert

Beiträge: 2283
#2 Bei IPSec findet eine Verschlüsselung der Daten und der Verbindungsinformationen statt. Die Daten werden über einen geschlossenen Tunnel übertragen. Es ist somit für den NAT Router nicht möglich eine ankommende IPSec Verbindung an einen internen Rechner weiterzuleiten, da er Ziel IP oder Port nicht lesen kann. Somit lassen sich keine Regeln für die Weiterleitung dieser Verkehrsart definieren.

Geholfen?

Robert
__________
powered by http://different-thinking.de - Netze, Protokolle, Sicherheit, ...
Seitenanfang Seitenende
21.08.2002, 15:10
dicon
zu Gast
#3 Hi Emba

da hast du dir ja ne spannende Frage ausgedacht ;)... hoffendlich wird's jetzt nicht zu kompliziert.

IPsec verwendet unter anderem zwei Protokolle (Authentication Header[AH] & Encapsulating Security Payload [ESP]) die Beschreiben, wie z.b. die Verbindung in einem VPN gehandhabt wird.

Der Authentication Header enthält einen Hash-Wert, der über das gesamte, ursprüngliche IP-Paket gebildet wird, einschliesslich Quell- u. Zieladresse, und zur Identifizierung beim Empfänger dient. Wird auch nur ein Feld des Ur-Paketes, z.b durch NAT bei der Ãœbersetzung der lokalen in eine öffentliche IP, verändert, stimmt der Hash-Wert nicht mehr und das Paket wird abgelehnt.
AH soll so unter anderem verhindern, dass manipulierte IP-Paketen ins System gelangen.

Beim Encapsulating Security Payload ist es etwas komplizierter. Hier wird auch ein Hash-Wert gebildet, allerdings nicht über das gesamte IP-Paket, sondern nur über die Nutzlast (Payload). Bestandteil des Payloads ist u.a. TCP. NAT muss die TCP-Checksumme modifizieren, um die Integrität zu erhalten. Damit stimmt ESP-Hash nicht mehr. Verzichtet man auf die Modifizierung der Checksumme, stimmt die TCP-Integrität nicht mehr. Das Ergebnis ist in beiden fällen gleich: die Pakete werden abgelehnt.

Für dieses Problem gibt es allerdings eine Lösung, wenn beim Empfänger die Checksummenprüfung für TCP ausgeschaltet werden kann. Dann können passieren die Pakete NAT und werden nicht verworfen... ABER...

Das nächste Problem ;)... entscheidender Bestandteil von IPsec für die Partner, die eine verschlüsselte Verbindung aufnehmen wollen, ist die Authentifizierung. Das Schlüsselmanagement übernimmt das IKE-Protokoll (Internet Key Exchange). Am meisten verbreitet ist die Verwendung von preshared keys, die im Wesentlichen auf der Quell-IP des Datenpaketes aufbauen. Kommt ein Datenpaket am Router an, übersetzt dieser die ursprüngliche Quell-IP und... genau ;)... die Authentifizierung des Paketes scheitert.

...

Zitat

Robert schrieb:Es ist somit für den NAT Router nicht möglich eine ankommende IPSec Verbindung an einen internen Rechner weiterzuleiten...


Für den "Normaluser" trifft das sicher zu, allerdings gibt es schon Möglichkeiten IPsec und NAT zu kombinieren. Allerdings mit sehr viel Aufwand und nur mit äusserster Vorsicht.

Die einfachste Möglichkeit wäre in jedem Fall, den IPsec-Endpunkt im öffentlichen IP-Adressbereich zu belassen. Auf einem entsprechenden Gateway können die ankommenden Pakete erst "entschlüsselt" werden, bevor sie dann über den NAT-Router ans LAN weitergegeben werden. Alternativ dazu klappt's natürlich auch mit einem IPsec fähigen Router.

Für normale NAT-Router gibt's die Möglichkeit des VPN-passthrough. Hier wird der Tunnelendpunkt auf den Client verlagert. Soweit ich weiss, klappt das aber nur bei Verwendung von PPTP (Point-to-Point Tunneling Protokoll) oder L2TP (Layer2 Tunneling Protokoll). Der verschlüsselte Payload wird in ein GRE-Paket gekapselt (Generic Route Encapsulation) und im Tunnel übertragen. Dazu muss am Router der Port 1723 (pptp) für das GRE-Protokoll freigegeben werden.

So... bevor ich hier ganz zerfliesse (32 Grad) mach ich erstmal Schluss.

Grüsse, dicon
Seitenanfang Seitenende
21.08.2002, 15:21
Ehrenmitglied
Avatar Robert

Beiträge: 2283
#4 @Dicon: Trotz der 32 Grad bei Dir, kann ich nichts mehr hinzufügen ;)

R.
__________
powered by http://different-thinking.de - Netze, Protokolle, Sicherheit, ...
Seitenanfang Seitenende
21.08.2002, 22:10
Member

Themenstarter
Avatar Emba

Beiträge: 907
#5 vielen dank!
das wars schon!

greez
Dieser Beitrag wurde am 21.08.2002 um 22:13 Uhr von Emba editiert.
Seitenanfang Seitenende
22.08.2002, 13:32
dicon
zu Gast
#6

Zitat

Robert meinte:
...kann ich nichts mehr hinzufügen

*lool*... hoffentlich sieht das der Bademeister auch so... äh, sorry... der Lehrmeister ;)

Grüße, dicon
Seitenanfang Seitenende
17.10.2002, 10:48
Toyota76
zu Gast
#7 Hi an alle,

bin ein kleines Dummschen und brauche hilfe. Habe hier gelesen das ich für den VPN den Port 1723 für das GRE Protokoll freigeben muss. Wie mache ich das unter Linux. Ich habe Suse 7.3 und eine mit iptables selbstgebastelte Firewall und will meinen VPN Server der dahinter liegt erreichen.

MfG

Toyota76
Seitenanfang Seitenende
17.10.2002, 11:53
Ehrenmitglied
Avatar sh4rk

Beiträge: 1148
#8 Wenn du ein neues thema anfängst, erstelle bitte einen neuen Thread.
__________
So wird mein Post von allen gelesen..
Seitenanfang Seitenende
22.10.2002, 12:15
Toyota76
zu Gast
#9 Sorry ich dachte das passt noch zum Thema.

MfG

Toyota76
Seitenanfang Seitenende
Um auf dieses Thema zu ANTWORTEN
bitte erst » hier kostenlos registrieren!!

Folgende Themen könnten Dich auch interessieren: