Probleme mit DHCP over IPsec am Openswan Server
Hi.
Ich bin dabei ein Roadwarrior Setup zur Einwahl mobiler Clients in unser Netzwerk zu implementieren.
Mein Hauptproblem ist die Vergabe von IP Addressen an die Clients. Inklusive DNS Server DNS Suffix und entsprechende Routen.
Da die ganze Aktion mit einer Windows Einwahlclient - L2TP over IPSec Lösung mit IPPool-Dienst nicht so super geklappt hat habe ich mich auf anraten von aqui (siehe hier: Windows 2008 L2TP Server mit Openswan IPSec VPN benutzen) für einen systemunabhängigen Software Client entschieden.
Ich habe Shrewsoft VPN benutzt (gerade probiere ich noch mit der NCP Secure Entry Client Testversion um etwas Redundanz in die Tests zu bekommen).
Die Netzwerkkonfiguration:
- Der Openswan Server ist direkt am Internet und hat eine feste IP
- Openswan 2.6.21, OpenSUSE 10.3 Kernel 2.6.22.19-0.2, KLIPS als Stack
- Der Client befindet sich hinter einem Router, der eine andere Internetverbindung nutzt; NAT, dynamisch IP
Wie man am Log unten sehen kann, wird die Verbindung gestartet und Phase 1 abgeschlossen.
Dann tritt folgender Fehler auf:
Der Shrew Soft Client gibt dann aus: "no DHCP response from gateway"
Der NCP Client: "ERROR - 4037: IKE(phase2): Waiting for message2, retry timeout" (Das Openswan Log unten ist auch während der Nutzung vom NCP Client entstanden, ist aber identisch mit dem vom ShrewSoft Client)
Die Konfigurationen der beiden Clients sind so, dass sie DHCP over IPSec nutzen sollen. Es ist keine Addresse voreingestellt.
Wenn ich die verschiedenen Dokus im Internet richtig verstanden habe, dann soll erst kurzzeitig eine IPSec Verbindung hergestellt werden um via DHCP eine Addresse zu beziehen. Danach wird erst die eigentliche Verbindung aufgebaut... Die Verbindung "roadwarrior" im Log ist aber schon die "Hauptverbindung". Für DHCP müsste "roadwarrior-dhcp" verwendet werden. Vorher taucht diese im Log auch nicht auf...
Meine ipsec.conf:
(Die Einstellungen zur DHCP Vebindung sind aus dem Openswan Readme zusammengestellt)
Schreibe ich die "conn roadwarrior-dhcp" vor die "conn roadwarrior" benutzt Openswan diese (steht dann im Log). Trotz der Tatsache, dass für die "conn roadwarrior" eigentlich noch kein gültiges rightsubnet vorhanden ist. Die interne IP 192.168.20.20 die der Testlaptop hat ist ja nicht in virtual_private eingetragen...
Scheinbar erkennt Openswan nicht, welche Verbindung zu nutzen ist und nimmt die Erste.
Oder interpretiere ich das falsch und es hat einen anderen Grund?
Greets,
Martin.
Das Log: (entfernt; zu lang und nicht mehr aktuell)
Ich bin dabei ein Roadwarrior Setup zur Einwahl mobiler Clients in unser Netzwerk zu implementieren.
Mein Hauptproblem ist die Vergabe von IP Addressen an die Clients. Inklusive DNS Server DNS Suffix und entsprechende Routen.
Da die ganze Aktion mit einer Windows Einwahlclient - L2TP over IPSec Lösung mit IPPool-Dienst nicht so super geklappt hat habe ich mich auf anraten von aqui (siehe hier: Windows 2008 L2TP Server mit Openswan IPSec VPN benutzen) für einen systemunabhängigen Software Client entschieden.
Ich habe Shrewsoft VPN benutzt (gerade probiere ich noch mit der NCP Secure Entry Client Testversion um etwas Redundanz in die Tests zu bekommen).
Die Netzwerkkonfiguration:
- Der Openswan Server ist direkt am Internet und hat eine feste IP
- Openswan 2.6.21, OpenSUSE 10.3 Kernel 2.6.22.19-0.2, KLIPS als Stack
- Der Client befindet sich hinter einem Router, der eine andere Internetverbindung nutzt; NAT, dynamisch IP
Wie man am Log unten sehen kann, wird die Verbindung gestartet und Phase 1 abgeschlossen.
Dann tritt folgender Fehler auf:
cannot respond to IPsec SA request because no connection is known for 0.0.0.0/0===xxx.xxx.xxx.xxx[C=DE, ST=Brandenburg, L=Potsdam, O=Krellmann, OU=Servers, CN=vpngate, E=root@vpngate.potsdam.krellmann.net,+S=C]:17/67...xxx.xxx.xxx.xxx[C=DE, O=krellmann, OU=roadwarrior, CN=potsdam.krellmann.net, E=adminmail@maildom.de,+S=C]:17/68===192.168.20.20/32
Der Shrew Soft Client gibt dann aus: "no DHCP response from gateway"
Der NCP Client: "ERROR - 4037: IKE(phase2): Waiting for message2, retry timeout" (Das Openswan Log unten ist auch während der Nutzung vom NCP Client entstanden, ist aber identisch mit dem vom ShrewSoft Client)
Die Konfigurationen der beiden Clients sind so, dass sie DHCP over IPSec nutzen sollen. Es ist keine Addresse voreingestellt.
Wenn ich die verschiedenen Dokus im Internet richtig verstanden habe, dann soll erst kurzzeitig eine IPSec Verbindung hergestellt werden um via DHCP eine Addresse zu beziehen. Danach wird erst die eigentliche Verbindung aufgebaut... Die Verbindung "roadwarrior" im Log ist aber schon die "Hauptverbindung". Für DHCP müsste "roadwarrior-dhcp" verwendet werden. Vorher taucht diese im Log auch nicht auf...
Meine ipsec.conf:
config setup
interfaces=%defaultroute
klipsdebug=none
nat_traversal=yes
nhelpers=0
plutodebug=none
protostack=klips
uniqueids=yes
virtual_private=%v4:10.0.1.0/24,%v4:10.0.2.0/24,%v4:!192.168.10.0/24,%v4:!192.168.178.0/24
conn %default
type=tunnel
authby=rsasig
pfs=no
rekey=no
keylife=1h
ikelifetime=3h
keyingtries=3
left=%defaultroute
leftrsasigkey=%cert
rightca=%same
rightrsasigkey=%cert
conn roadwarrior
leftcert=g1.krellmann.net.pem
leftsubnet=192.168.10.0/24
right=%any
rightcert=roadwarrior.potsdam.krellmann.net.pem
rightsubnet=vhost:%no,%priv
auto=add
conn roadwarrior-dhcp
keylife=20s
rekeymargin=10s
left=%defaultroute
leftcert=g1.krellmann.net.pem
leftprotoport=udp/bootps
#this allows DHCP discovery broadcast:
leftsubnet=0.0.0.0/0
right=%any
rightcert=roadwarrior.potsdam.krellmann.net.pem
rightprotoport=udp/bootpc
auto=add
(Die Einstellungen zur DHCP Vebindung sind aus dem Openswan Readme zusammengestellt)
Schreibe ich die "conn roadwarrior-dhcp" vor die "conn roadwarrior" benutzt Openswan diese (steht dann im Log). Trotz der Tatsache, dass für die "conn roadwarrior" eigentlich noch kein gültiges rightsubnet vorhanden ist. Die interne IP 192.168.20.20 die der Testlaptop hat ist ja nicht in virtual_private eingetragen...
Scheinbar erkennt Openswan nicht, welche Verbindung zu nutzen ist und nimmt die Erste.
Oder interpretiere ich das falsch und es hat einen anderen Grund?
Greets,
Martin.
Das Log: (entfernt; zu lang und nicht mehr aktuell)
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 117213
Url: https://administrator.de/contentid/117213
Ausgedruckt am: 22.11.2024 um 21:11 Uhr
3 Kommentare
Neuester Kommentar
Da der IPsec Client (Shrew) hinter einem Router ist hast du dort bedacht ein Port Forwarding von
UDP 500 (IKE)
UDP 4500 (NAT-T)
ESP (IP Protokoll Nummer 50)
auf die lokale IP des Client PCs einzurichten ???
Das ist zwingend notwendig bei IPsec Clients mit ESP !
Aus diesem Grunde sollte man dem Client auch eine statische IP intern geben damit die Port Weiterleitungsregel durch die Dynamik von DHCP nicht ausgehebelt wird.
UDP 500 (IKE)
UDP 4500 (NAT-T)
ESP (IP Protokoll Nummer 50)
auf die lokale IP des Client PCs einzurichten ???
Das ist zwingend notwendig bei IPsec Clients mit ESP !
Aus diesem Grunde sollte man dem Client auch eine statische IP intern geben damit die Port Weiterleitungsregel durch die Dynamik von DHCP nicht ausgehebelt wird.