La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento viene fornito un esempio di configurazione della crittografia MACsec (Media Access Control Security) tra un supplicant 802.1x (Cisco AnyConnect Mobile Security) e un autenticatore (switch). Cisco Identity Services Engine (ISE) viene utilizzato come server per l'autenticazione e le policy.
MACsec è standardizzato in 802.1AE e supportato sugli switch Cisco 3750X, 3560X e 4500 SUP7E. 802.1AE definisce la crittografia dei collegamenti su reti cablate che utilizzano chiavi fuori banda. Tali chiavi di crittografia vengono negoziate con il protocollo MACsec Key Agreement (MKA), utilizzato dopo la riuscita dell'autenticazione 802.1x. MKA è standardizzato in IEEE 802.1X-2010.
Un pacchetto viene crittografato solo sul collegamento tra il PC e lo switch (crittografia point-to-point). Il pacchetto ricevuto dallo switch viene decrittografato e inviato tramite uplink non crittografati. Per crittografare la trasmissione tra gli switch, è consigliata la crittografia dello switch. Per tale crittografia viene utilizzato il protocollo SAP (Security Association Protocol) per negoziare e rigenerare le chiavi. SAP è un protocollo standard sviluppato da Cisco.
Cisco raccomanda la conoscenza dei seguenti argomenti:
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Passaggio 1. Il richiedente (AnyConnect NAM) avvia la sessione 802.1x. Lo switch è l'autenticatore e l'ISE è il server di autenticazione. Il protocollo EAPOL (Extensible Authentication Protocol over LAN) viene utilizzato come trasporto per EAP tra il richiedente e lo switch. RADIUS è utilizzato come protocollo di trasporto per EAP tra lo switch e l'ISE. Non è possibile usare MAB (MAC Authentication Bypass) perché le chiavi EAPOL devono essere restituite da ISE e usate per la sessione MKA (MACsec Key Agreement).
Passaggio 2. Al termine della sessione 802.1x, lo switch avvia una sessione MKA con EAPOL come protocollo di trasporto. Se il supplicant è configurato correttamente, le chiavi per la crittografia AES-GCM (modalità Galois/Contatore) simmetrica a 128 bit corrispondono.
Passaggio 3. Tutti i pacchetti successivi tra il richiedente e lo switch sono crittografati (incapsulamento 802.1AE).
La configurazione ISE prevede uno scenario 802.1x tipico con un'eccezione al profilo di autorizzazione che potrebbe includere criteri di crittografia.
Per aggiungere lo switch come dispositivo di rete, scegliere Amministrazione > Risorse di rete > Dispositivi di rete. Immettere una chiave già condivisa RADIUS (segreto condiviso).
Si può usare la regola di autenticazione predefinita (per gli utenti definiti localmente su ISE).
Per definire l'utente "cisco" localmente, scegliere Amministrazione > Gestione delle identità > Utenti.
Il profilo di autorizzazione può includere criteri di crittografia. Come mostrato nell'esempio, selezionare Policy > Results > Authorization Profiles (Policy > Risultati > Profili di autorizzazione) per visualizzare le informazioni restituite da ISE allo switch in cui la crittografia del collegamento è obbligatoria. Inoltre, è stato configurato il numero VLAN (10).
Per utilizzare il profilo di autorizzazione nella regola di autorizzazione, scegliere Criterio > Autorizzazione. In questo esempio viene restituito il profilo configurato per l'utente "cisco". Se 802.1x ha esito positivo, ISE restituisce Radius-Accept allo switch con Cisco AVPair link-policy=must-secure. Questo attributo forza lo switch ad avviare una sessione MKA. Se la sessione ha esito negativo, anche l'autorizzazione 802.1x sullo switch ha esito negativo.
Le impostazioni tipiche della porta 802.1x includono (parte superiore mostrata):
aaa new-model
aaa authentication dot1x default group radius
aaa authorization network default group radius
aaa group server radius ISE
server name ISE
dot1x system-auth-control
interface GigabitEthernet1/0/2
description windows7
switchport mode access
authentication order dot1x
authentication port-control auto
dot1x pae authenticator
radius server ISE
address ipv4 10.48.66.74 auth-port 1645 acct-port 1646
timeout 5
retransmit 2
key cisco
Il criterio MKA locale viene creato e applicato all'interfaccia. Inoltre, MACsec è abilitato sull'interfaccia.
mka policy mka-policy
replay-protection window-size 5000
interface GigabitEthernet1/0/2
macsec
mka policy mka-policy
Il criterio MKA locale consente di configurare impostazioni dettagliate che non possono essere estratte dall'ISE. Il criterio MKA locale è facoltativo.
Il profilo del supplicant 802.1x può essere configurato manualmente o push tramite Cisco ASA. Nei passaggi successivi viene illustrata una configurazione manuale.
Per gestire i profili NAM:
Aggiungere un nuovo profilo 802.1x con MACsec. Per lo standard 802.1x, viene utilizzato il protocollo PEAP (Protected Extensible Authentication Protocol) (configurato dall'utente "cisco" su ISE):
Per verificare che la configurazione funzioni correttamente, consultare questa sezione.
AnyConnect NAM configurato per EAP-PEAP richiede le credenziali corrette.
La sessione sullo switch deve essere autenticata e autorizzata. Lo stato di protezione deve essere "Protetto":
bsns-3750-5#show authentication sessions interface g1/0/2
Interface: GigabitEthernet1/0/2
MAC Address: 0050.5699.36ce
IP Address: 192.168.1.201
User-Name: cisco
Status: Authz Success
Domain: DATA
Security Policy: Must Secure
Security Status: Secured
Oper host mode: single-host
Oper control dir: both
Authorized By: Authentication Server
Vlan Policy: 10
Session timeout: N/A
Idle timeout: N/A
Common Session ID: C0A8000100000D56FD55B3BF
Acct Session ID: 0x00011CB4
Handle: 0x97000D57
Runnable methods list:
Method State
dot1x Authc Success
Le statistiche MACsec sullo switch forniscono i dettagli relativi all'impostazione della policy locale, gli identificatori di canale sicuri (SCI) per il traffico ricevuto/inviato, nonché le statistiche delle porte e gli errori.
bsns-3750-5#show macsec interface g1/0/2
MACsec is enabled
Replay protect : enabled
Replay window : 5000
Include SCI : yes
Cipher : GCM-AES-128
Confidentiality Offset : 0
Capabilities
Max. Rx SA : 16
Max. Tx SA : 16
Validate Frames : strict
PN threshold notification support : Yes
Ciphers supported : GCM-AES-128
Transmit Secure Channels
SCI : BC166525A5020002
Elapsed time : 00:00:35
Current AN: 0 Previous AN: -
SC Statistics
Auth-only (0 / 0)
Encrypt (2788 / 0)
Receive Secure Channels
SCI : 0050569936CE0000
Elapsed time : 00:00:35
Current AN: 0 Previous AN: -
SC Statistics
Notvalid pkts 0 Invalid pkts 0
Valid pkts 76 Late pkts 0
Uncheck pkts 0 Delay pkts 0
Port Statistics
Ingress untag pkts 0 Ingress notag pkts 2441
Ingress badtag pkts 0 Ingress unknownSCI pkts 0
Ingress noSCI pkts 0 Unused pkts 0
Notusing pkts 0 Decrypt bytes 176153
Ingress miss pkts 2437
Su AnyConnect, le statistiche indicano l'utilizzo della crittografia e le statistiche dei pacchetti.
Le informazioni contenute in questa sezione permettono di risolvere i problemi relativi alla configurazione.
Abilitare i debug sullo switch (alcuni output sono stati omessi per chiarezza).
debug macsec event
debug macsec error
debug epm all
debug dot1x all
debug radius
debug radius verbose
Una volta stabilita una sessione 802.1x, vengono scambiati più pacchetti EAP tramite EAPOL. L'ultima risposta di successo da ISE (EAP success) trasmessa all'interno di Radius-Accept include anche diversi attributi Radius.
RADIUS: Received from id 1645/40 10.48.66.74:1645, Access-Accept, len 376
RADIUS: EAP-Key-Name [102] 67 *
RADIUS: Vendor, Cisco [26] 34
RADIUS: Cisco AVpair [1] 28 "linksec-policy=must-secure"
RADIUS: Vendor, Microsoft [26] 58
RADIUS: MS-MPPE-Send-Key [16] 52 *
RADIUS: Vendor, Microsoft [26] 58
RADIUS: MS-MPPE-Recv-Key [17] 52 *
EAP-Key-Name viene utilizzato per la sessione MKA. Il criterio di sec di collegamento impone allo switch di utilizzare MACsec. Se l'autorizzazione non è completa, non verrà eseguita. Questi attributi possono essere verificati anche nelle acquisizioni dei pacchetti.
Autenticazione completata.
%DOT1X-5-SUCCESS: Authentication successful for client (0050.5699.36ce) on
Interface Gi1/0/2 AuditSessionID C0A8000100000D56FD55B3BF
%AUTHMGR-7-RESULT: Authentication result 'success' from 'dot1x' for client
(0050.5699.36ce) on Interface Gi1/0/2 AuditSessionID C0A8000100000D56FD55B3BF
Lo switch applica gli attributi (inclusi un numero VLAN opzionale che è stato anch'esso inviato).
%AUTHMGR-5-VLANASSIGN: VLAN 10 assigned to Interface Gi1/0/2 AuditSessionID
C0A8000100000D56FD55B3BF
Lo switch avvia quindi la sessione MKA quando invia e riceve pacchetti EAPOL.
%MKA-5-SESSION_START: (Gi1/0/2 : 2) MKA Session started for RxSCI 0050.5699.36ce/0000,
AuditSessionID C0A8000100000D56FD55B3BF, AuthMgr-Handle 97000D57
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
EAPOL pak dump rx
dot1x-packet(Gi1/0/2): Received an EAPOL frame
dot1x-packet(Gi1/0/2): Received an MKA packet
Dopo la creazione di 4 identificatori di protezione per lo scambio di pacchetti insieme all'associazione di protezione di ricezione (RX).
HULC-MACsec: MAC: 0050.5699.36ce, Vlan: 10, Domain: DATA
HULC-MACsec: Process create TxSC i/f GigabitEthernet1/0/2 SCI BC166525A5020002
HULC-MACsec: Process create RxSC i/f GigabitEthernet1/0/2 SCI 50569936CE0000
HULC-MACsec: Process install RxSA request79F6630 for interface GigabitEthernet1/0/2
La sessione è terminata e viene aggiunta l'associazione di protezione Trasmissione (TX).
%MKA-5-SESSION_SECURED: (Gi1/0/2 : 2) MKA Session was secured for
RxSCI 0050.5699.36ce/0000, AuditSessionID C0A8000100000D56FD55B3BF,
CKN A2BDC3BE967584515298F3F1B8A9CC13
HULC-MACsec: Process install TxSA request66B4EEC for interface GigabitEthernet1/0/
Il criterio "must-secure" corrisponde e l'autorizzazione ha esito positivo.
%AUTHMGR-5-SUCCESS: Authorization succeeded for client (0050.5699.36ce) on
Interface Gi1/0/2 AuditSessionID C0A8000100000D56FD55B3BF
Ogni 2 secondi i pacchetti MKA Hello vengono scambiati per garantire che tutti i partecipanti siano vivi.
dot1x-ev(Gi1/0/2): Received TX PDU (5) for the client 0x6E0001EC (0050.5699.36ce)
dot1x-packet(Gi1/0/2): MKA length: 0x0084 data: ^A
dot1x-ev(Gi1/0/2): Sending EAPOL packet to group PAE address
EAPOL pak dump Tx
Quando il richiedente non è configurato per MKA e ISE richiede la crittografia dopo un'autenticazione 802.1x riuscita:
RADIUS: Received from id 1645/224 10.48.66.74:1645, Access-Accept, len 342
%DOT1X-5-SUCCESS: Authentication successful for client (0050.5699.36ce) on
Interface Gi1/0/2 AuditSessionID C0A8000100000D55FD4D7529
%AUTHMGR-7-RESULT: Authentication result 'success' from 'dot1x' for client
(0050.5699.36ce) on Interface Gi1/0/2 AuditSessionID C0A8000100000D55FD4D7529
Lo switch cerca di avviare una sessione MKA quando invia 5 pacchetti EAPOL.
%MKA-5-SESSION_START: (Gi1/0/2 : 2) MKA Session started for RxSCI 0050.5699.36ce/0000,
AuditSessionID C0A8000100000D55FD4D7529, AuthMgr-Handle A4000D56
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
dot1x-ev(Gi1/0/2): Sending out EAPOL packet
EAPOL pak dump Tx
E alla fine esce e manca l'autorizzazione.
%MKA-4-KEEPALIVE_TIMEOUT: (Gi1/0/2 : 2) Peer has stopped sending MKPDUs for RxSCI
0050.5699.36ce/0000, AuditSessionID C0A8000100000D55FD4D7529, CKN
F8288CDF7FA56386524DD17F1B62F3BA
%MKA-4-SESSION_UNSECURED: (Gi1/0/2 : 2) MKA Session was stopped by MKA and not
secured for RxSCI 0050.5699.36ce/0000, AuditSessionID C0A8000100000D55FD4D7529,
CKN F8288CDF7FA56386524DD17F1B62F3BA
%AUTHMGR-5-FAIL: Authorization failed or unapplied for client (0050.5699.36ce)
on Interface Gi1/0/2 AuditSessionID C0A8000100000D55FD4D7529
La sessione 802.1x riporta l'autenticazione riuscita, ma l'autorizzazione non è riuscita.
bsns-3750-5#show authentication sessions int g1/0/2
Interface: GigabitEthernet1/0/2
MAC Address: 0050.5699.36ce
IP Address: 192.168.1.201
User-Name: cisco
Status: Authz Failed
Domain: DATA
Security Policy: Must Secure
Security Status: Unsecure
Oper host mode: single-host
Oper control dir: both
Session timeout: N/A
Idle timeout: N/A
Common Session ID: C0A8000100000D55FD4D7529
Acct Session ID: 0x00011CA0
Handle: 0xA4000D56
Runnable methods list:
Method State
dot1x Authc Success
Il traffico di dati verrà bloccato.
Quando il traffico viene acquisito sul sito supplicant 4, vengono inviate e ricevute richieste/risposte echo Internet Control Message Protocol (ICMP), si verificherà quanto segue:
Ciò è dovuto al modo in cui AnyConnect si collega all'API Windows (prima di libpcap quando i pacchetti vengono inviati e prima di libpcap quando i pacchetti vengono ricevuti):
Nota: non è supportata la possibilità di verificare il traffico MKA o 802.1AE sullo switch con funzionalità quali SPAN (Switched Port Analyzer) o EPC (Embedded Packet Capture).
Non tutte le modalità 802.1x sono supportate per MACsec.
La Guida alle procedure di Cisco TrustSec 3.0: Introduzione agli stati MACsec e NDAC che:
Modalità host singolo: MACsec è supportato in modalità host singolo. In questa modalità, solo un indirizzo MAC o IP singolo può essere autenticato e protetto con MACsec. Se viene rilevato un indirizzo MAC diverso sulla porta dopo l'autenticazione di un endpoint, sulla porta verrà attivata una violazione della sicurezza.
Modalità Multi-Domain Authentication (MDA): In questa modalità, un endpoint può trovarsi nel dominio dati e un altro nel dominio voce. MACsec è completamente supportato in modalità MDA. Se entrambi gli endpoint sono compatibili con MACsec, ciascuno di essi verrà protetto tramite una sessione MACsec indipendente. Se solo un endpoint supporta MACsec, è possibile proteggere tale endpoint mentre l'altro invia il traffico in modalità non crittografata.
Modalità multi-autenticazione: In questa modalità, è possibile autenticare un numero illimitato di endpoint su una singola porta dello switch. MACsec non supportato in questa modalità.
Modalità multi-host: L'utilizzo di MACsec in questa modalità è tecnicamente possibile, ma non è consigliato. In modalità multi-host, il primo endpoint sulla porta viene autenticato e quindi tutti gli endpoint aggiuntivi verranno autorizzati all'accesso alla rete tramite la prima autorizzazione. MACsec funzionerebbe con il primo host connesso, ma in realtà non passerebbe alcun traffico di altri endpoint, in quanto non sarebbe traffico crittografato.