bernhard-b
Goto Top

Cisco 886VA VPN - "Xauth authentication by pre-shared key offered but does not match policy!"

Hallo,

nachdem mein Cisco 886VA Router am Internet hängt habe ich versucht eine VPN Verbindung via IPsec einzurichten, dabei habe ich mir neben dem IPsec VPNs einrichten mit Cisco ... Tutorial durchgelesen. Da sich die Konfigurationen in den einzelnen Tutorials unterscheiden und ich noch nicht alle verwendeten Befehle verstehe, habe ich mich an die Konfiguration aus dem IPsec VPNs Tutorial gehalten, da dieses auch die Konfiguration vom ShrewSoft VPN Client erklärt, den ich vorher auch schon für VPN verwendet habe. Ich habe gesehen, dass es auf der ShrewSoft Seite noch ein "Howto Cisco Asa" zu dem Thema gibt, da ich aber nicht mehrere Tutorials vermischen wollte habe ich die dortige Konfiguration nicht angewendet.

Nun zu meinem Problem:
Im IPsec VPNs Tutorial steht man solle folgende Konfiguration einfügen.

crypto map vpntest 10 ipsec-isakmp 
 set peer ÖFFENTLICHE-ROUTER-IP
 set transform-set VPN 
 match address vpntest 

Nachdem ich die Crypto map erstellt, die drei Parameter eingegeben habe und die Konfiguration per sh run anzeigen lasse steht dort nun

crypto map vpntest 10 ipsec-isakmp
 ! Incomplete
 set peer ÖFFENTLICHE-ROUTER-IP
 set transform-set VPN
 match address vpntest

Ich weiß leider nicht welche Parameter noch erwartet werden.

Und auch wenn mir klar ist das dies ein Fehler verursacht, habe ich den ShrewSoft Client mal konfiguriert und eine Verbindungsaufbau gewagt. Dieser kam wie erwartet nicht zustande. Der Router Log sagt mir aber das es noch ein Problem mit der Policy gibt, welches ich ebenfalls nicht verstehe.

Anbei ein Auszug aus der config und der zugehörige Log.

Config:
!
no ip source-route
no ip gratuitous-arps
!
ip name-server 8.8.8.8
ip name-server 8.8.4.4
ip inspect name myfw tcp
ip inspect name myfw udp
ip cef
no ipv6 cef
!
username admin privilege 15 secret 4 PASSWORT
username vpnuser privilege 0 secret 5 PASSWORT
username vpngroup password 0 PASSWORT
!
controller VDSL 0
 operating mode vdsl2
!
crypto isakmp policy 100
 encr aes 256
 hash md5
 authentication pre-share
crypto isakmp key 32-ZEICHEN-PASSWORT address ÖFFENTLICHE-ROUTER-IP
!
crypto ipsec transform-set VPN esp-des esp-md5-hmac
 mode tunnel
!
crypto map vpntest 10 ipsec-isakmp
 ! Incomplete
 set peer ÖFFENTLICHE-ROUTER-IP
 set transform-set VPN
 match address vpntest
!
interface Ethernet0
 description $ETH-LAN$
 no ip address
!
interface Ethernet0.7
 description VDSL - VLAN 7 tagged
 encapsulation dot1Q 7
 pppoe enable group global
 pppoe-client dial-pool-number 1
!
interface BRI0
 no ip address
 encapsulation hdlc
 shutdown
 isdn termination multidrop
 no cdp enable
!
interface ATM0
 no ip address
 shutdown
 no atm ilmi-keepalive
!
interface FastEthernet0 (gleiche Konfiguration für FastEthernet1-3)
 no ip address
 no cdp enable
!
interface Vlan1
 description Lokales Netzwerk
 ip address 192.168.1.1 255.255.255.0
 ip nat inside
 ip virtual-reassembly in
 ip tcp adjust-mss 1452
!
interface Dialer1
 description VDSL
 ip address negotiated
 ip access-group 111 in
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 ip mtu 1492
 ip nat outside
 ip inspect myfw out
 ip virtual-reassembly in
 encapsulation ppp
 dialer pool 1
 dialer-group 1
 no keepalive
 ppp authentication chap callin
 ppp chap hostname ZUGANGSDATEN
 ppp chap password 0 VDSL-PASSWORT
 ppp ipcp dns request
 ppp ipcp mask request
 ppp ipcp route default
 no cdp enable
 crypto map vpntest
!
ip local pool vpnpool 192.168.1.100 192.168.1.109
ip forward-protocol nd
!
ip dns server
ip nat inside source list 101 interface Dialer1 overload
ip route 192.168.1.0 255.255.255.0 192.168.1.2
!
ip access-list extended vpntest
!
ip sla auto discovery
dialer-list 1 protocol ip list 101
no cdp run
!
ip access-list extended vpntest
 permit ip 192.168.1.0 0.0.0.255 any
!
route-map nonat permit 10
 match ip address 101
!
access-list 101 permit ip 192.168.1.0 0.0.0.255 any
access-list 111 permit udp any any eq non500-isakmp     (Freigabe für IPsec)
access-list 111 permit udp any any eq isakmp	        (Freigabe für IPsec)
access-list 111 permit esp any any			(Freigabe für IPsec)
access-list 111 permit ahp any any			(Freigabe für IPsec)
access-list 111 permit icmp any any administratively-prohibited
access-list 111 permit icmp any any echo-reply
access-list 111 permit icmp any any packet-too-big
access-list 111 permit icmp any any time-exceeded
access-list 111 permit icmp any any unreachable
access-list 111 permit udp any eq domain any
access-list 111 permit tcp any eq domain any
access-list 111 permit tcp any any eq www
access-list 111 permit gre any any
access-list 111 deny   ip any any log
!

Log:
ISAKMP (0): received packet from MEINE-IP dport 500 sport 500 Global (N) NEW SA
ISAKMP: Created a peer struct for MEINE-IP, peer port 500
ISAKMP: New peer created peer = 0x89D5F2F8 peer_handle = 0x80000011
ISAKMP: Locking peer struct 0x89D5F2F8, refcount 1 for crypto_isakmp_process_block
ISAKMP: local port 500, remote port 500
ISAKMP:(0):insert sa successfully sa = 87E77B34
ISAKMP:(0): processing SA payload. message ID = 0
ISAKMP:(0): processing ID payload. message ID = 0
ISAKMP (0): ID payload
        next-payload : 13
        type         : 11
        group id     : vpntest
        protocol     : 0
        port         : 0
        length       : 15
ISAKMP:(0):: peer matches *none* of the profiles
ISAKMP:(0): processing vendor id payload
ISAKMP:(0): vendor ID seems Unity/DPD but major 123 mismatch
ISAKMP:(0): vendor ID is NAT-T v2
ISAKMP:(0): processing vendor id payload
ISAKMP:(0): vendor ID seems Unity/DPD but major 157 mismatch
ISAKMP:(0): vendor ID is NAT-T v3
ISAKMP:(0): processing vendor id payload
ISAKMP:(0): vendor ID seems Unity/DPD but major 69 mismatch
ISAKMP (0): vendor ID is NAT-T RFC 3947
ISAKMP:(0): processing vendor id payload
ISAKMP:(0): vendor ID seems Unity/DPD but major 237 mismatch
ISAKMP:(0): processing vendor id payload
ISAKMP:(0): processing IKE frag vendor id payload
ISAKMP:(0):Support for IKE Fragmentation not enabled
ISAKMP:(0): processing vendor id payload
ISAKMP:(0): vendor ID seems Unity/DPD but major 83 mismatch
ISAKMP:(0): processing vendor id payload
ISAKMP:(0): vendor ID is Unity
ISAKMP : Scanning profiles for xauth ...
ISAKMP:(0):Checking ISAKMP transform 1 against priority 100 policy
ISAKMP:      encryption AES-CBC
ISAKMP:      keylength of 256
ISAKMP:      hash MD5
ISAKMP:      default group 2
ISAKMP:      auth pre-share
ISAKMP:      life type in seconds
ISAKMP:      life duration (VPI) of  0x0 0x1 0x51 0x80
ISAKMP:(0):Preshared authentication offered but does not match policy!
ISAKMP:(0):atts are not acceptable. Next payload is 0
ISAKMP:(0):no offers accepted!
ISAKMP:(0): phase 1 SA policy not acceptable! (local ÖFFENTLICHE-ROUTER-IP remote MEINE-IP)
ISAKMP (0): incrementing error counter on sa, attempt 1 of 5: construct_fail_ag_init
ISAKMP:(0): Failed to construct AG informational message.
ISAKMP:(0): sending packet to MEINE-IP my_port 500 peer_port 500 (R) AG_NO_STATE
ISAKMP:(0):Sending an IKE IPv4 Packet.
ISAKMP:(0):peer does not do paranoid keepalives.
ISAKMP:(0):deleting SA reason "Phase1 SA policy proposal not accepted" state (R) AG_NO_STATE (peer MEINE-IP)  
ISAKMP:(0): processing KE payload. message ID = 0
ISAKMP:(0): group size changed! Should be 0, is 128
ISAKMP (0): incrementing error counter on sa, attempt 2 of 5: reset_retransmission
ISAKMP (0): Unknown Input IKE_MESG_FROM_PEER, IKE_AM_EXCH:  state = IKE_READY
ISAKMP:(0):Input = IKE_MESG_FROM_PEER, IKE_AM_EXCH
ISAKMP:(0):Old State = IKE_READY  New State = IKE_READY
%CRYPTO-6-IKMP_MODE_FAILURE: Processing of Aggressive mode failed with peer at MEINE-IP
ISAKMP:(0):deleting SA reason "Phase1 SA policy proposal not accepted" state (R) AG_NO_STATE (peer MEINE-IP)  
ISAKMP: Unlocking peer struct 0x89D5F2F8 for isadb_mark_sa_deleted(), count 0
ISAKMP: Deleting peer node by peer_reap for MEINE-IP: 89D5F2F8
ISAKMP:(0):Input = IKE_MESG_INTERNAL, IKE_PHASE1_DEL
ISAKMP:(0):Old State = IKE_READY  New State = IKE_DEST_SA
IPSEC(key_engine): got a queue event with 1 KMI message(s)
ISAKMP (0): received packet from MEINE-IP dport 500 sport 500 Global (R) MM_NO_STATE

An der Zeile "Preshared authentication offered but does not match policy!" sehe ich, dass es etwas mit der policy 100 und dem Preshared-Key zu tun hat und während der Phase 1 passiert, allerdings verstehe ich nicht was genau.
Ich muss auch erwähnen das ich mich versuche aus dem gleichen Netz einzuwählen in das ich hinein will, mir ist klar, das ich den Router mit den identischen internen IPs verwirren kann. Aber die Ursache scheint mir in diesem Fall eine andere zu sein. Zumal ich gestern abend die Einwahl aus einem anderen Netz aus probiert hatte und der gleiche Fehler auftrat.

Meine ShrewSoft Konfiguration habe ich als Bild mit angehängt.
zwischenablage14

Content-ID: 301197

Url: https://administrator.de/contentid/301197

Ausgedruckt am: 25.11.2024 um 01:11 Uhr

Pjordorf
Pjordorf 07.04.2016 um 22:38:32 Uhr
Goto Top
Hallo,

Zitat von @Bernhard-B:
nachdem mein Cisco 886VA Router
Überhaupt jemals schon ein Cisco 88xxx eingerichtet? Verständniss von WAN und LAN sowie Netzwerke und IPs?
Firmware stand deiner Cisco Büchse?

Gruß,
Peter
Bernhard-B
Bernhard-B 07.04.2016 um 23:51:37 Uhr
Goto Top
Hallo Peter,

nein das ist der erste Cisco Router den ich konfiguriere. Ich kann nich behaupten ein Experte in dem Bereich zu sein, aber in meinem Studium hatte ich Vorlesung in Netzwerk- und Kommunikationstechnik, wodurch ich zumindest Grundlagenwissen habe und ich habe auch kein Problem mir Fachlektüre durchzulesen. Sonst hätte ich mich auch gar nicht daran getraut einen solchen Router zu erstehen und gegen eine Fritzbox auszutauschen. Hinter dem Router (und vorher der Fritzbox) hängt noch ein Cisco SG300 Switch mit dem ich relativ gut zurecht komme (WebGUI).

Der Router läuft auf IOS 15.3(3) M2, auf eine neuere Firmware habe ich leider keinen Zugriff.

Gruß,
Bernhard
brammer
brammer 08.04.2016 aktualisiert um 07:57:30 Uhr
Goto Top
Hallo,

hier noch mal der Link zu einem Grundlagen Tutorial.

außerdem solltest du mal ein debug laufen lassen.
debug crypto isakmp 
debug crypto ipsec

brammer
Bernhard-B
Bernhard-B 12.04.2016 um 20:50:27 Uhr
Goto Top
Hallo,

ich habe mir das oben genannte Tutorial im Cisco Forum durchgelesenn, den "Internet Key Exchange for IPsec VPNs Configuration Guide" [1], sowie weitere Cisco Guides und die Security Commands Reference. Ich weiß jetzt, dass das "Inclomplete" dadurch verursacht wurde, dass keine sa-lifetime gesetzt war. Diesen Fehler habe ich behoben. Aber ich scheitere noch immer an einer erfolgreichen Authentifizierung via ISAKMP.

Ich habe die Konfiguration dahingehend geändert, dass ich Algorithmen verwende, die von Cisco empfohlen werden [2]. Des Weiteren habe ich verstanden, das die Konfiguration aus meinem Startpost dazu gedacht ist, einen Standort mit fester IP zu verbinden, da ich aber von wechselnden IPs einloggen möchte habe ich hierfür einen dynamic crypto map erstellt.

Ich habe eine IKE policy, die wie folgt aussieht:
crypto isakmp policy 100
 encr aes 256
 hash sha256
 authentication pre-share
 group 14
.
.
.

Router#show crypto isakmp policy

Global IKE policy
Protection suite of priority 100
        encryption algorithm:   AES - Advanced Encryption Standard (256 bit keys).
        hash algorithm:         Secure Hash Standard 2 (256 bit)
        authentication method:  Pre-Shared Key
        Diffie-Hellman group:   #14 (2048 bit)
        lifetime:               86400 seconds, no volume limit

So habe ich dann auch die Phase 1 im Shrewsoft Client konfiguriert:
phase1

Den Pre-Shared Key habe ich wie in der Command Reference beschrieben eingegeben, damit ich mich von wechselnden IPs einloggen kann habe ich die peer-address als Meta-Addresse eingegeben.

crypto isakmp key test123 address 0.0.0.0
Wobei "test123" für den Pre-Shared Key steht. Diesen habe ich dann bei SHrewsoft im Authentication-Bereich eingetragen.
pre-shared-key

Daraufhin habe ich eine transform-set, eine statische crypto map und eine dynamische crypto map erstellt. Die dynamische crypto-map habe ich wie im "Configuring Security for VPNs with IPsec"-Guide [3] zu der statischen crypto map hinzugefügt. Das ganze sieht in der Config dann so aus:
crypto ipsec transform-set VPN esp-aes 256 esp-sha-hmac
 mode tunnel
!
!
crypto dynamic-map dynvpn 30
 description Remote VPN
 set transform-set VPN
!
!
crypto map vpntest 30 ipsec-isakmp dynamic dynvpn

Die crypto map vpntest habe ich dann dem interface Dialer hinzugefügt, mit dem ich per VDSL ins Internet gehe. Das ganze nochmal überprüft:
Router#show crypto dynamic-map
Crypto Map Template"dynvpn" 30  
        No matching address list set.
        Security association lifetime: 4608000 kilobytes/3600 seconds
        Responder-Only (Y/N): N
        PFS (Y/N): N
        Mixed-mode : Disabled
        Transform sets={
                VPN:  { esp-256-aes esp-sha-hmac  } ,
        }

Router#show crypto map
Crypto Map IPv4 "vpntest" 30 ipsec-isakmp  
        Dynamic map template tag: dynvpn
        Interfaces using crypto map vpntest:
                Dialer1
Und in Shrewsoft hinzugefügt.
phase2
localidentity
(Ich war mir nicht sicher, ob ich als KeyIdentifier den Namen der crypto map oder der dynamic-map eintragen muss, ich habe aber beides probiert, mit dem gleichen Resultat)

Fürs xauth noch einen user angelegt:
username vpnuser password 0 MEIN-PASSWORT

Noch debug crypto isakmp und debug crypto ipsec auf on gesetzt und versucht mich einzuloggen:

ISAKMP:(0):Checking ISAKMP transform 1 against priority 100 policy
ISAKMP:      encryption AES-CBC
ISAKMP:      keylength of 256
ISAKMP:      hash SHA256
ISAKMP:      default group 14
ISAKMP:      auth XAUTHInitPreShared
ISAKMP:      life type in seconds
ISAKMP:      life duration (VPI) of  0x0 0x1 0x51 0x80
ISAKMP:(0):Xauth authentication by pre-shared key offered but does not match policy!
ISAKMP:(0):atts are not acceptable. Next payload is 0
ISAKMP:(0):no offers accepted!
ISAKMP:(0): phase 1 SA policy not acceptable! (local xxx.xxx.xxx.xxx remote xxx.xxx.xxx.xxx)
ISAKMP (0): incrementing error counter on sa, attempt 1 of 5: construct_fail_ag_init
ISAKMP:(0): Failed to construct AG informational message.
ISAKMP:(0): sending packet to xxx.xxx.xxx.xxx my_port 500 peer_port 500 (R) AG_NO_STATE
ISAKMP:(0):Sending an IKE IPv4 Packet.
ISAKMP:(0):peer does not do paranoid keepalives.

Wie man sieht scheitere ich schon an der Authentifizierung. Und wie ich dort lese akzeptiert der Router den gesendeten Pre-Share-Key. Und das verstehe ich nicht, denn das ist ja das "test123", das ich mit dem Befehl "crypto isakmp key..." eingegeben habe. Ich habe dort auch den key "123456" eingegeben und dreimal kontrolliert, das ich den gleichen Key auch bei Shrewsoft habe.

Ich weiß leider nicht weiter.

Bernhard-B


[1]: http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/sec_conn_ikevpn/config ...
[2]: http://www.cisco.com/c/en/us/about/security-center/next-generation-cryp ...
[3]: http://www.cisco.com/en/US/docs/ios-xml/ios/sec_conn_vpnips/configurati ...
brammer
brammer 13.04.2016 um 08:53:00 Uhr
Goto Top
Hallo,

prüfe bitte mal ob dein pre shared key wirklich als test123 eingegeben ist.
mancher ist es gewohnt nach der EIngabe automatisch ein Freizeichen zu tippen!
Dann wäre den psk nicht 'test123' sondern 'test123 ' also nicht 7-stellig sondern mit freizeichen 8 stellig.

brammer
BitBurg
Lösung BitBurg 16.04.2016 aktualisiert um 17:57:00 Uhr
Goto Top
Hallo Bernhard,

wenn du diese Anleitung benutzt, musst du den Teil unter der Überschrift: VPN (IPsec) Server für iPhone, Android und Mac OS-X User mit onboard Client aktivieren konfigurieren.
In Shrew müsstest du dann "vpngroup" als Key Identifier und "test123" als Pre-shared Key eintragen. Als Beispiel kannst du auch diesen Link verwenden. Die Fehlermeldung rührt daher, dass du in Shrew die "eXended Authentication" (XAUTH), also die Authentifizerung mit Benutzername/Passwort nutzen möchtest, der Cisco-Router dafür aber nicht konfiguriert ist.

Viel Erfolg
BB
Bernhard-B
Bernhard-B 17.05.2016 um 14:39:47 Uhr
Goto Top
Hallo BitBurger,

ich habe die Zeit am Wochenende genutzt und mir beide Anleitungen durchgelesen und bin sie Schritt für Schritt mit der Command Reference durchgegangen.
Der Aufbau einer IPSec Verbindung zwischen ShrewSoft und Cisco-Router funktioniert jetzt endlich. Das Split Tunneling, welches in der zweiten Anleitung zusätzlich beschrieben wurde funktioniert bei mir zwar nicht aber dennoch ist das Ergebnis zufriedenstellend.

Vielen Dank für die Hilfen.

Bernhard-B