IPsec VPN Road-warrior

pbtraveller

Well-Known Member
Hallo zusammen,

wollte auf meinem Gateway (FreeBSD 8.2) ein VPN für Roadwarriors bereitstellen, um insbesondere mit einem iPhone auf die Geräte im internen Netzwerk zugreifen zu können.

Das interne Netzwerk hat den Adressraum 192.168.1.0/24. Das Gateway übernimmt das NAT.

Habe folgende einfache Anleitung für das Erstellen eines VPN gefunden und bereits umgesetzt: http://wiki.polymorf.fr/index.php?title=Howto:FreeBSD_Roadwarrior_IPSec

Darin steht seltsamerweise nicht, wie ich per ifconfig das interface gif0 einrichten muss.
Ich konnte mir bisher auch nicht erschließen, wie das bei sich ändernden IP-Adresse des clients (iphone) geht. Im Handbuch ist ja auch nur die Konfiguration gateway to gateway beschrieben.

Wenn ich mich mit dem iphone mit der Box verbinde, bekomme ich bisher meine racoon motd angezeigt und das iphone bekommt eine IP aus dem internen Netz. Ich kann aber nicht auf die Geräte im internen Netzwerk vom iphone aus zugreifen. Wenn ich die route zu der "internen" IP-adresse, die dem iPhone beim Aufbau des VPN zugewiesen wurde, am Gateway abfrage, wird natürlich nur das Interface zum LAN angezeigt.

Wie erstelle ich denn in meinem Szenario das gif0 interface, bzw. was muss ich alternativ machen?

Wie filter ich denn den traffic, wenn nicht über ein virtuelles TAP oder gif0 interface?

Sorry, hab bisher nur mit openvpn unter Linux gearbeitet, tue mich daher etwas schwer, das IPsec-Konzept zu verstehen.

ach ja, mein log gibt beim Verbindungsversuch übrigens Folgendes aus:

#######################

2011-12-12 20:55:04: INFO: respond new phase 1 negotiation: 81.210.233.205[500]<=>89.104.131.178[37124]
2011-12-12 20:55:04: INFO: begin Identity Protection mode.
2011-12-12 20:55:04: INFO: received Vendor ID: RFC 3947
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsec-nat-t-ike-08
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsec-nat-t-ike-07
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsec-nat-t-ike-06
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsec-nat-t-ike-05
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsec-nat-t-ike-04
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsec-nat-t-ike-03
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsec-nat-t-ike-02
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsec-nat-t-ike-02
2011-12-12 20:55:04: INFO: received Vendor ID: draft-ietf-ipsra-isakmp-xauth-06.txt
2011-12-12 20:55:04: INFO: received Vendor ID: CISCO-UNITY
2011-12-12 20:55:04: INFO: received Vendor ID: DPD
2011-12-12 20:55:04: INFO: Selected NAT-T version: RFC 3947
2011-12-12 20:55:04: INFO: Adding xauth VID payload.
2011-12-12 20:55:05: INFO: NAT-D payload #0 doesn't match
2011-12-12 20:55:05: INFO: NAT-D payload #1 doesn't match
2011-12-12 20:55:05: INFO: NAT detected: ME PEER
2011-12-12 20:55:05: INFO: Hashing 89.104.131.178[37124] with algo #2 (NAT-T forced)
2011-12-12 20:55:05: INFO: Hashing 81.210.233.205[500] with algo #2 (NAT-T forced)
2011-12-12 20:55:05: INFO: Adding remote and local NAT-D payloads.
2011-12-12 20:55:07: INFO: NAT-T: ports changed to: 89.104.131.178[63221]<->81.210.233.205[4500]
2011-12-12 20:55:07: INFO: KA list add: 81.210.233.205[4500]->89.104.131.178[63221]
2011-12-12 20:55:07: WARNING: ignore INITIAL-CONTACT notification, because it is only accepted after phase1.
2011-12-12 20:55:07: WARNING: unable to get certificate CRL(3) at depth:0 SubjectName:/C=DE/ST=DE/L=Berlin/O=home/OU=home/CN=iphone/name=changeme/emailAddress=mail@domain.de
2011-12-12 20:55:07: WARNING: unable to get certificate CRL(3) at depth:1 SubjectName:/C=DE/ST=Berlin/L=Berlin/O=home/OU=home/CN=Gateway/name=changeme/emailAddress=mail@domain.de
2011-12-12 20:55:07: INFO: Sending Xauth request
2011-12-12 20:55:07: INFO: ISAKMP-SA established 81.210.233.205[4500]-89.104.131.178[63221] spi:7ff848684300bf95:4196e73e0a49ab44
2011-12-12 20:55:08: INFO: Using port 0
2011-12-12 20:55:08: INFO: login succeeded for user "user"
2011-12-12 20:55:08: WARNING: Ignored attribute INTERNAL_ADDRESS_EXPIRY
2011-12-12 20:55:08: WARNING: Ignored attribute 28683
2011-12-12 20:55:09: INFO: respond new phase 2 negotiation: 81.210.233.205[4500]<=>89.104.131.178[63221]
2011-12-12 20:55:09: INFO: no policy found, try to generate the policy : 192.168.1.201/32[0] 0.0.0.0/0[0] proto=any dir=in
2011-12-12 20:55:09: INFO: Adjusting my encmode UDP-Tunnel->Tunnel
2011-12-12 20:55:09: INFO: Adjusting peer's encmode UDP-Tunnel(3)->Tunnel(1)
2011-12-12 20:55:09: INFO: IPsec-SA established: ESP/Tunnel 89.104.131.178[63221]->81.210.233.205[4500] spi=190825268(0xb5fc334)
2011-12-12 20:55:09: INFO: IPsec-SA established: ESP/Tunnel 81.210.233.205[4500]->89.104.131.178[63221] spi=5599068(0x556f5c)
2011-12-12 20:55:09: ERROR: such policy does not already exist: "192.168.1.201/32[0] 0.0.0.0/0[0] proto=any dir=in"
2011-12-12 20:55:09: ERROR: such policy does not already exist: "0.0.0.0/0[0] 192.168.1.201/32[0] proto=any dir=out"

Kann mir jemand weiterhelfen?

Vielen Dank!

Gruß

pbtraveller
 
hi

also
gif kann ist kein muss
fuer roadwarriror mit dynamischen ips muss der aggresive mode verwendet werden.

http://www.freebsd.org/doc/handbook/ipsec.html

ein gif kann ganz normal erstellt werden da es erstmal vom ipsec unabhaengig ist.

wen pf als fierewall verwendet wird

block on gif0 all

allow on gif from x.x.x.x to y.y.y.y

details siehe man pf.conf

holger
 
Hi, was hießt denn aber in meinem Beispiel

ein gif kann ganz normal erstellt werden da es erstmal vom ipsec unabhaengig ist.

holger

?

Was muss ich denn auf dem Gateway angeben?

# ifconfig gif0 create
# ifconfig gif0 "192.168.1.1, d.h. interne IP des Gateways)" "?"
# ifconfig gif0 tunnel "externe IP des Gateway?" "?"

pf einrichten, ist nicht so das Problem, wenn ich mal das gif0 richtig eingerichtet habe.

die route auf die IP der road warriors müsste ich ja dann ganz einfach auf das gif0 interface laufe lassen können.

Danke für Eure Hilfe.

pbtraveller
 
gif bekommt keine ip es ist ein reines tunnel devices

sprich im ipsec sinne laeuft da der traffic rein , bzw kommt raus ist ergo der endpunkt
fuer den ipsec tunnel.

wie er eingerichtet wird steht in der man zu ifconfig

holger
 
Seltsam, also mit aggressive mode bekomme ich keine Verbindung hin. Mein iPhone sagt mir immer, das der Server nicht antwortet. Im main mode geht es dagegen.

Wenn ich gif0 nicht zwingend brauche und auch über enc0 filtern kann, sehe ich nicht unbedingt einen Sinn gif0 einzurichten.

Hab Ihr sonst eine Idee, warum ich auf die Geräte im LAN vom iPhone aus nicht zugreifen kann?

Danke und Gruß

pbtraveller
 
Du musst racoon so patchen das es ein Wildcard PSK nimmt.

oder isakmpd nehmen , der sollte via ports zu verfuegung stehen.

aber nicht destso trotz solltest du dich mal informieren was ein tunnel device ist
und ipsec funktioniert.


documentation hatte ich ja schon gepostet.

und ich gehe fest davon aus das auch ein ihhhhhhhphone ipsec mit aggressive
mode kann.


holger
 
Zurück
Oben