Ich habe erfolgreich einen Cisco 3750G konfiguriert, um die Authentifizierungsfunktion des 802.1x-Prozesses auszuführen. Ich habe einen Win7-Testcomputer als Supplicant und einen Windows 2008-Server, auf dem NPS als Authentifizierungsserver ausgeführt wird. Der Win7-Computer kann sich erfolgreich authentifizieren.
Ich habe jetzt ein Cisco 7941 IP-Telefon vor dem Win7-Computer angeschlossen, den Switch mit dem Befehl swtichport voice vlan konfiguriert , ihn angeschlossen und ihm wird Strom zugeführt , aber der Port wechselt schnell in einen ausgefallenen Zustand. Nachdem ich die Debug-Protokolle durchgesehen habe, glaube ich, dass das Problem bei 802.1x liegt, das versucht, sich sowohl im Access-VLAN als auch im Voice-VLAN zu authentifizieren. Gibt es eine Möglichkeit, nur 802.1x im Access VLAN auszuführen? und nicht die Stimme?
Szenario:
{RADIUS} <----> {3750G} <-----> {Cisco 7941 Phone} <-----> {Win7 802.1x client}
Ich teste gerade auf der Schnittstelle gi1 / 0/3, hier ist die Schnittstellenkonfigurationszeile:
interface GigabitEthernet1/0/3
description TestPort
switchport access vlan 100
switchport voice vlan 110
switchport mode access
authentication port-control auto
authentication periodic
authentication timer reauthenticate server
dot1x pae authenticator
spanning-tree portfast
auto qos voip cisco-phone
Einige der Debugs vom 3750G
*Apr 21 13:44:04.045: %ILPOWER-7-DETECT: Interface Gi1/0/3: Power Device detected: IEEE PD
*Apr 21 13:44:04.322: %ILPOWER-5-POWER_GRANTED: Interface Gi1/0/3: Power granted
*Apr 21 13:44:07.811: dot1x-ev(Gi1/0/3): Interface state changed to UP
*Apr 21 13:44:07.811: dot1x_auth Gi1/0/3: initial state auth_initialize has enter
*Apr 21 13:44:07.811: dot1x-sm(Gi1/0/3): 0x0000003B:auth_initialize_enter called
*Apr 21 13:44:07.811: dot1x_auth Gi1/0/3: during state auth_initialize, got event 0(cfg_auto)
*Apr 21 13:44:07.811: @@@ dot1x_auth Gi1/0/3: auth_initialize -> auth_disconnected
*Apr 21 13:44:07.811: dot1x-sm(Gi1/0/3): 0x0000003B:auth_disconnected_enter called
*Apr 21 13:44:07.811: dot1x_auth Gi1/0/3: idle during state auth_disconnected
*Apr 21 13:44:07.811: @@@ dot1x_auth Gi1/0/3: auth_disconnected -> auth_restart
*Apr 21 13:44:07.811: dot1x-sm(Gi1/0/3): 0x0000003B:auth_restart_enter called
*Apr 21 13:44:07.820: dot1x-ev(Gi1/0/3): Sending create new context event to EAP for 0x0000003B (0000.0000.0000)
*Apr 21 13:44:07.820: dot1x_auth_bend Gi1/0/3: initial state auth_bend_initialize has enter
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): 0x0000003B:auth_bend_initialize_enter called
*Apr 21 13:44:07.820: dot1x_auth_bend Gi1/0/3: initial state auth_bend_initialize has idle
*Apr 21 13:44:07.820: dot1x_auth_bend Gi1/0/3: during state auth_bend_initialize, got event 16383(idle)
*Apr 21 13:44:07.820: @@@ dot1x_auth_bend Gi1/0/3: auth_bend_initialize -> auth_bend_idle
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): 0x0000003B:auth_bend_idle_enter called
*Apr 21 13:44:07.820: dot1x-ev(Gi1/0/3): Created a client entry (0x0000003B)
*Apr 21 13:44:07.820: dot1x-ev(Gi1/0/3): Dot1x authentication started for 0x0000003B (0000.0000.0000)
*Apr 21 13:44:07.820: dot1x-ev:DOT1X Supplicant not enabled on GigabitEthernet1/0/3
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): Posting !EAP_RESTART on Client 0x0000003B
*Apr 21 13:44:07.820: dot1x_auth Gi1/0/3: during state auth_restart, got event 6(no_eapRestart)
*Apr 21 13:44:07.820: @@@ dot1x_auth Gi1/0/3: auth_restart -> auth_connecting
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): 0x0000003B:auth_connecting_enter called
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): 0x0000003B:auth_restart_connecting_action called
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): Posting RX_REQ on Client 0x0000003B
*Apr 21 13:44:07.820: dot1x_auth Gi1/0/3: during state auth_connecting, got event 10(eapReq_no_reAuthMax)
*Apr 21 13:44:07.820: @@@ dot1x_auth Gi1/0/3: auth_connecting -> auth_authenticating
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): 0x0000003B:auth_authenticating_enter called
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): 0x0000003B:auth_connecting_authenticating_action called
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): Posting AUTH_START for 0x0000003B
*Apr 21 13:44:07.820: dot1x_auth_bend Gi1/0/3: during state auth_bend_idle, got event 4(eapReq_authStart)
*Apr 21 13:44:07.820: @@@ dot1x_auth_bend Gi1/0/3: auth_bend_idle -> auth_bend_request
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): 0x0000003B:auth_bend_request_enter called
*Apr 21 13:44:07.820: dot1x-ev(Gi1/0/3): Sending EAPOL packet to group PAE address
*Apr 21 13:44:07.820: dot1x-ev(Gi1/0/3): Role determination not required
*Apr 21 13:44:07.820: dot1x-registry:registry:dot1x_ether_macaddr called
*Apr 21 13:44:07.820: dot1x-ev(Gi1/0/3): Sending out EAPOL packet
*Apr 21 13:44:07.820: EAPOL pak dump Tx
*Apr 21 13:44:07.820: EAPOL Version: 0x3 type: 0x0 length: 0x0005
*Apr 21 13:44:07.820: EAP code: 0x1 id: 0x1 length: 0x0005 type: 0x1
*Apr 21 13:44:07.820: dot1x-packet(Gi1/0/3): EAPOL packet sent to client 0x0000003B (0000.0000.0000)
*Apr 21 13:44:07.820: dot1x-sm(Gi1/0/3): 0x0000003B:auth_bend_idle_request_action called
*Apr 21 13:44:09.791: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/3, changed state to up
*Apr 21 13:44:10.798: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/3, changed state to up
*Apr 21 13:44:36.844: dot1x-ev(Gi1/0/3): Interface state changed to DOWN
*Apr 21 13:44:36.844: dot1x-ev(Gi1/0/3): Deleting client 0x0000003B (0000.0000.0000)
*Apr 21 13:44:36.844: dot1x-ev:dot1x_supp_port_down: No DOT1X subblock found on GigabitEthernet1/0/3
*Apr 21 13:44:36.844: dot1x-ev:Delete auth client (0x0000003B) message
*Apr 21 13:44:36.844: dot1x-ev:Auth client ctx destroyed
*Apr 21 13:44:37.842: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/3, changed state to down
*Apr 21 13:44:38.841: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/3, changed state to down
Neueste Schnittstellenkonfiguration: Schnittstelle GigabitEthernet1 / 0/3 Switchport-Zugriff vlan 105 Switchport-Modus Zugriff Switchport-Voice vlan 110 srr-Warteschlange Bandbreitenfreigabe 1 30 35 5 Prioritätswarteschlange aus Authentifizierungssteuerungsrichtung im Authentifizierungsereignis fehlgeschlagen Aktion Aktion der nächsten Methode Authentifizierung Hostmodus Multi-Auth-Authentifizierung offene Authentifizierungsreihenfolge dot1x mab Authentifizierungspriorität mab dot1x mab mls qos Vertrauensgerät Cisco-Telefon mls qos Vertrauen cos auto qos voip Cisco-Telefon dot1x pae Authentifikator Spanning-Tree Portfast Service-Policy-Eingabe AUTOQOS-SRND4-CISCOPHONE-POLICY
Global Configs Papa
Debugs:
show version
Switch Ports Model SW Version SW Image
------ ----- ----- ---------- ----------
* 1 28 WS-C3750G-24PS 15.0(2)SE6 C3750-IPSERVICESK9-M
#show authentication sessions interface gi1/0/3
Interface: GigabitEthernet1/0/3
MAC Address: Unknown
IP Address: Unknown
Status: Authz Success
Domain: DATA
Security Policy: Should Secure
Security Status: Unsecure
Oper host mode: multi-auth
Oper control dir: in
Authorized By: Authentication Server
Vlan Policy: N/A
Session timeout: N/A
Idle timeout: N/A
Common Session ID: 0A6363FE0000001900347F3C
Acct Session ID: 0x00000020
Handle: 0x7A00001A
Runnable methods list:
Method State
dot1x Authc Success
mab Not run
#show dot1x all details
Sysauthcontrol Enabled
Dot1x Protocol Version 3
Dot1x Info for GigabitEthernet1/0/3
-----------------------------------
PAE = AUTHENTICATOR
QuietPeriod = 60
ServerTimeout = 0
SuppTimeout = 30
ReAuthMax = 2
MaxReq = 2
TxPeriod = 30
Dot1x Authenticator Client List Empty
show run | in dot1x
aaa authentication dot1x default group RADIUS
dot1x system-auth-control
Konsole
Oct 15 20:16:41.392: dot1x-ev(Gi1/0/3): Interface state changed to DOWN
Oct 15 20:16:41.400: dot1x-ev(Gi1/0/3): Deleting client 0x74000003 (0000.0000.0000)
Oct 15 20:16:41.400: dot1x-ev:dot1x_supp_port_down: No DOT1X subblock found on GigabitEthernet1/0/3
Oct 15 20:16:41.400: dot1x-ev:Delete auth client (0x74000003) message
Oct 15 20:16:41.400: dot1x-ev:Auth client ctx destroyedshut
Oct 15 20:16:42.180: %SWITCH_QOS_TB-5-TRUST_DEVICE_LOST: cisco-phone no longer detected on port Gi1/0/3, operational port trust state is now untrusted
Oct 15 20:16:43.363: %LINK-5-CHANGED: Interface GigabitEthernet1/0/3, changed state to administratively down
Oct 15 20:16:44.370: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/3, changed state tno shut
SW1(config-if)#
Oct 15 20:16:47.801: %ILPOWER-7-DETECT: Interface Gi1/0/3: Power Device detected: IEEE PD
Oct 15 20:16:48.807: %ILPOWER-5-POWER_GRANTED: Interface Gi1/0/3: Power granted
Oct 15 20:16:48.916: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/3, changed state to down
Oct 15 20:16:50.124: dot1x-ev(Gi1/0/3): Interface state changed to UP
Oct 15 20:16:50.133: dot1x_auth Gi1/0/3: initial state auth_initialize has enter
Oct 15 20:16:50.133: dot1x-sm(Gi1/0/3): 0xD8000004:auth_initialize_enter called
Oct 15 20:16:50.133: dot1x_auth Gi1/0/3: during state auth_initialize, got event 1(cfg_force_auth)
Oct 15 20:16:50.133: @@@ dot1x_auth Gi1/0/3: auth_initialize -> auth_force_auth
Oct 15 20:16:50.133: dot1x-sm(Gi1/0/3): 0xD8000004:auth_force_auth_enter called
Oct 15 20:16:50.133: dot1x-ev(Gi1/0/3): Sending EAPOL packet to group PAE address
Oct 15 20:16:50.133: dot1x-ev(Gi1/0/3): Role determination not required
Oct 15 20:16:50.133: dot1x-registry:registry:dot1x_ether_macaddr called
Oct 15 20:16:50.133: dot1x-ev(Gi1/0/3): Sending out EAPOL packet
Oct 15 20:16:50.133: EAPOL pak dump Tx
Oct 15 20:16:50.133: EAPOL Version: 0x3 type: 0x0 length: 0x0004
Oct 15 20:16:50.133: EAP code: 0x3 id: 0x1 length: 0x0004
Oct 15 20:16:50.133: dot1x-packet(Gi1/0/3): dot1x_auth_txCannedStatus: EAPOL packet sent to client 0xD8000004 (0000.0000.0000)
Oct 15 20:16:50.133: dot1x_auth_bend Gi1/0/3: initial state auth_bend_initialize has enter
Oct 15 20:16:50.133: dot1x-sm(Gi1/0/3): 0xD8000004:auth_bend_initialize_enter called
Oct 15 20:16:50.133: dot1x_auth_bend Gi1/0/3: initial state auth_bend_initialize has idle
Oct 15 20:16:50.133: dot1x_auth_bend Gi1/0/3: during state auth_bend_initialize, got event 16383(idle)
Oct 15 20:16:50.133: @@@ dot1x_auth_bend Gi1/0/3: auth_bend_initialize -> auth_bend_idle
Oct 15 20:16:50.133: dot1x-sm(Gi1/0/3): 0xD8000004:auth_bend_idle_enter called
Oct 15 20:16:50.133: dot1x-ev(Gi1/0/3): Created a client entry (0xD8000004)
Oct 15 20:16:50.133: dot1x-ev(Gi1/0/3): Dot1x authentication started for 0xD8000004 (0000.0000.0000)
Oct 15 20:16:50.133: dot1x-ev:DOT1X Supplicant not enabled on GigabitEthernet1/0/3
Oct 15 20:16:50.141: dot1x-ev(Gi1/0/3): Sending event (2) to Auth Mgr for 0000.0000.0000
Oct 15 20:16:50.141: dot1x-redundancy: State for client 0000.0000.0000 successfully retrieved
Oct 15 20:16:52.113: %LINK-3-UPDOWN: Interface GigabitEthernet1/0/3, changed state to up
Oct 15 20:16:53.119: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet1/0/3, changed state to up
Oct 15 20:17:34.542: %SWITCH_QOS_TB-5-TRUST_DEVICE_DETECTED: cisco-phone detected on port Gi1/0/3, port's configured trust state is now operational.
Der Port befindet sich immer noch im heruntergefahrenen Zustand, versorgt das Telefon jedoch mit Strom ...
Antworten:
Sie müssten die MAB-Authentifizierung (Mac Auth Bypass) für das IP-Telefon in der Multi-VLAN-Schnittstelle konfigurieren. Sie benötigen außerdem eine Mehrfachauthentifizierung, damit der Switch nach mehr als einer MAC-Adresse suchen kann.
-authentication Host-Modus Multi-Auth
-Authentifizierungsauftrag mab dot1x
quelle
802.1x ist portbasiert. In einfachster Form ist der Port also entweder autorisiert oder nicht. Nach der Autorisierung - abgesehen von den MAC-Beschränkungen - wird Datenverkehr von irgendetwas zugelassen. Moderne 802.1x-Systeme sind viel intelligenter ("komplizierter") und können mehrere Hosts an einem einzigen Port unabhängig überwachen. Dies ist, wo
multi-auth
undmulti-domain
kommen Sie herein. (Wenden Sie sich hier an Cisco. )Wie Jaxxs betont, besteht der einzige Kompromiss darin, den Telefonzugriff ohne Authentifizierung (dh über MAC) zuzulassen, da der 7941 802.1x nicht selbst ausführt , sondern EAPOL durchläuft und eine Abmeldung "vortäuscht", wenn sich der PC-Port befindet getrennt.
(Ignorierend , dass es in Bezug auf die NX-OS ist, das ist , wie MAB funktioniert.)
quelle
CDP sollte sich tatsächlich um die Portauthentifizierung für ein Cisco IP-Telefon kümmern. Es gibt eine wenig bekannte Funktion namens "CDP-Bypass", mit der ein Cisco-Switch einen bestimmten TLV in der CDP-Nachricht erkennen kann, die eine sofortige Authentifizierung ermöglicht. Beachten Sie jedoch, dass neuere Versionen von Cisco IOS diese CDP-Bypass-Funktion nicht mehr enthalten.
quelle
Das Telefon muss CDP ausführen können. Wenn der Switch ein Telefon als CDP-Nachbarn sieht, führt er eine CDP-Umgehung durch und versucht nicht, sich zu authentifizieren.
Für ein Telefon ist keine Mehrfachauthentifizierung erforderlich. Dadurch werden mehrere Computer im Daten-VLAN zugelassen, das standardmäßig deaktiviert ist und in den Protokollen "Sicherheitsverletzung" anzeigt.
Mit mehreren Domänen kann sich ein Telefon authentifizieren.
Sie sollten die Authentifizierungsreihenfolge dot1x mab so konfigurieren, dass zuerst dot1x versucht wird.
Fügen Sie außerdem die automatische Authentifizierungsportsteuerung hinzu.
https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst3750x_3560x/software/release/12-2_55_se/configuration/guide/3750xscg/sw8021x.html
quelle