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 descritto un processo dettagliato per configurare il trunk TLS (Transport Layer Security) SIP (Session Initiation Protocol) su Communications Manager con un certificato firmato da un'autorità di certificazione (CA).
Dopo aver seguito questo documento, i messaggi SIP tra due cluster verranno crittografati tramite TLS.
Cisco raccomanda la conoscenza di:
Le informazioni di questo documento si basano sulle seguenti versioni software:
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.
Come illustrato in questa immagine, Handshake SSL con certificati.
Fare riferimento al collegamento: Configura CA su Windows 2003 Server
I certificati sono basati sui nomi. Assicurarsi che i nomi siano corretti prima di iniziare.
From SSH CLI admin:show cert own CallManager SignatureAlgorithm: SHA1withRSA (1.2.840.113549.1.1.5) Issuer Name: CN=CUCMA, OU=cisco, O=cisco, L=cisco, ST=cisco, C=IN Subject Name: CN=CUCMA, OU=cisco, O=cisco, L=cisco, ST=cisco, C=IN
Per modificare il nome dell'host, fare riferimento al collegamento: Modifica nome host in CUCM
CUCM 9.1(2)
Per generare il CSR, selezionare Amministratore sistema operativo > Sicurezza > Gestione certificati > Genera CSR
Nel campo Nome certificato, selezionare l'opzione CallManager dall'elenco a discesa.
Per scaricare il CSR, selezionare Amministratore del sistema operativo > Sicurezza > Gestione certificati > Scarica CSR
Nel campo Nome certificato, selezionare l'opzione CallManager dall'elenco a discesa.
CUCM 10.5(2)
Per generare il CSR, selezionare Amministratore sistema operativo > Sicurezza > Gestione certificati > Genera CSR
1. Nel campo Scopo certificato, selezionare CallManager dall'elenco a discesa.
2. Nel campo Lunghezza chiave, selezionare 1024 dall'elenco a discesa.
3. Nel campo Hash Algorithm, selezionare SHA1 dall'elenco a discesa.
Per scaricare il CSR, selezionare Amministratore del sistema operativo > Sicurezza > Gestione certificati > Scarica CSR
Nel campo Scopo certificato, selezionare l'opzione CallManager dall'elenco a discesa.
Nota: Il CSR di CallManager viene generato con le chiavi RSA (Rivest-Shamir-Addleman) a 1024 bit.
Informazioni facoltative per la firma del CSR con la CA di Microsoft Windows 2003.
1. Aprire l'Autorità di certificazione.
2. Fare clic con il pulsante destro del mouse sull'icona CA e selezionare All Tasks > Submit new request (Tutte le attività > Invia nuova richiesta)
3. Selezionare il CSR e fare clic sull'opzione Open (applicabile sia al CSR (CUCM 9.1(2) che al CUCM 10.5(2))
4. Tutti i CSR aperti vengono visualizzati nella cartella Richieste in sospeso. Fare clic con il pulsante destro del mouse su ciascun CSR e selezionare All Tasks > Issue per emettere i certificati. (Applicabile sia nel CSR (CUCM 9.1(2) che in CUCM 10.5(2))
5. Per scaricare il certificato, scegliere la cartella Certificati rilasciati.
Fare clic con il pulsante destro del mouse sul certificato e scegliere l'opzione Apri.
6. Vengono visualizzati i dettagli del certificato. Per scaricare il certificato, selezionare la scheda Dettagli e fare clic sul pulsante Copia su file...
7. Nella finestra Esportazione guidata certificati, fare clic sul pulsante di opzione X.509(.CER) con codifica Base 64.
8. Assegnare un nome accurato al file. In questo esempio viene utilizzato il formato CUCM1052.cer.
Per CUCM 9.1(2), seguire la stessa procedura.
Aprire la finestra Autorità di certificazione.
Per scaricare la CA radice
1. Fare clic con il pulsante destro del mouse sull'icona della CA e selezionare l'opzione Proprietà.
2. Nella scheda Generale, fare clic su Visualizza certificato.
3. Nella finestra Certificato, fare clic sulla scheda Dettagli.
4. Fare clic su Copia su file...
Per caricare il certificato radice CA, accedere a Amministratore del sistema operativo > Sicurezza > Gestione certificati > Carica certificato/catena di certificati
Nota: Eseguire questi passaggi sia su CUCM (CUCM 9.1(2) che su CUCM 10.5(2))
Per caricare la firma CA di CallManager CSR, accedere a Amministratore del sistema operativo > Sicurezza > Gestione certificati > Carica certificato/catena di certificati
Nota: Eseguire questi passaggi sia su CUCM (CUCM 9.1(2) che su CUCM 10.5(2))
CUCM 9.1(2)
Per creare il profilo di sicurezza trunk SIP, selezionare Sistema > Sicurezza > Profilo di sicurezza trunk SIP.
Copiare il profilo trunk SIP non sicuro esistente e assegnargli un nuovo nome. Nell'esempio, il profilo Trunk SIP non sicuro è stato rinominato con il profilo TLS.
In Nome soggetto X.509 utilizzare il nome comune (CN) di CUCM 10.5(2) (certificato firmato CA), come mostrato in questa immagine.
CUCM 10.5(2)
Passare a Sistema > Sicurezza > Profilo sicurezza trunk SIP.
Copiare il profilo trunk SIP non sicuro esistente e assegnargli un nuovo nome. Nell'esempio, il profilo Trunk SIP non sicuro è stato rinominato con il profilo TLS.
In Nome soggetto X.509 utilizzare il CN di CUCM 9.1(2) (certificato firmato CA) come evidenziato:
Entrambi i profili SIP Trunk Security hanno impostato una porta in ingresso di 5061, in cui ciascun cluster resta in ascolto sulla porta TCP 5061 per le nuove chiamate SIP TLS in ingresso.
Dopo aver creato i profili di sicurezza, creare i trunk SIP e apportare le modifiche per il parametro di configurazione riportato di seguito sul trunk SIP.
CUCM 9.1(2)
In questo modo viene protetto il protocollo RTP (Real-time Transport Protocol) da utilizzare per le chiamate su questo trunk. Questa casella deve essere selezionata solo quando si utilizza il protocollo SIP TLS in quanto le chiavi per il protocollo SRTP (Secure Real-time Transport Protocol) vengono scambiate nel corpo del messaggio SIP. La segnalazione SIP deve essere protetta da TLS, altrimenti chiunque con la segnalazione SIP non protetta potrebbe decrittografare il flusso SRTP corrispondente sul trunk.
CUCM 10.5(2)
Ciò consente di utilizzare il protocollo SRTP per le chiamate su questo trunk. Questa casella deve essere selezionata solo quando si utilizza SIP TLS, perché le chiavi per SRTP vengono scambiate nel corpo del messaggio SIP. La segnalazione SIP deve essere protetta dal TLS perché chiunque disponga di una segnalazione SIP non protetta può decrittografare il flusso Secure RTP corrispondente sul trunk.
Il metodo più semplice consiste nel creare un modello di percorso su ciascun cluster, che punti direttamente al trunk SIP. È inoltre possibile utilizzare i gruppi di route e gli elenchi di route.
CUCM 9.1(2) punta al modello di percorso 9898 attraverso il trunk SIP TLS al modello CUCM 10.5(2)
La CUCM 10.5(2) punta al modello di percorso 1018 attraverso il trunk SIP TLS al modello CUCM 9.1(2)
Attualmente non è disponibile una procedura di verifica per questa configurazione.
È possibile eseguire il debug della chiamata SIP TLS eseguendo la procedura seguente.
Per controllare la connettività tra CUCM 9.1(2) e CUCM 10.5(2), acquisire un pacchetto sui server CUCM e controllare il traffico SIP TLS.
Il traffico SIP-TLS viene trasmesso sulla porta TCP 5061 come sip-tls.
Nell'esempio seguente viene stabilita una sessione CLI SSH per CUCM 9.1(2)
1. CLI Packet Capture sullo schermo
Questa CLI stampa l'output sullo schermo per il traffico SIP TLS.
admin:utils network capture host ip 10.106.95.200 Executing command with options: interface=eth0 ip=10.106.95.200 19:04:13.410944 IP CUCMA.42387 > 10.106.95.200.sip-tls: P 790302485:790303631(1146) ack 3661485150 win 182 <nop,nop,timestamp 2864697196 5629758> 19:04:13.450507 IP 10.106.95.200.sip-tls > CUCMA.42387: . ack 1146 win 249 <nop,nop,timestamp 6072188 2864697196> 19:04:13.465388 IP 10.106.95.200.sip-tls > CUCMA.42387: P 1:427(426) ack 1146 win 249 <nop,nop,timestamp 6072201 2864697196>
2. Acquisizioni CLI su file
Questa CLI acquisisce i pacchetti in base all'host e crea un file denominato packets.
admin:utils network capture eth0 file packets count 100000 size all host ip 10.106.95.200
Riavviare il trunk SIP su CUCM 9.1(2) ed effettuare la chiamata dall'estensione 1018 (CUCM 9.1(2)) all'estensione 9898 (CUCM 10.5(2))
Per scaricare il file dalla CLI, eseguire questo comando:
admin:file get activelog platform/cli/packets.cap
L'acquisizione viene eseguita nel formato standard .cap. In questo esempio viene utilizzato Wireshark per aprire il file packets.cap, ma è possibile utilizzare qualsiasi strumento di visualizzazione per l'acquisizione dei pacchetti.
Verificare ulteriormente se vengono scambiati i certificati corretti. Dopo Server Hello, il server CUCM 10.5(2) invia il proprio certificato al client CUCM 9.1(2).
Il numero di serie e le informazioni sull'oggetto di cui dispone il server CUCM 10.5(2) vengono presentati al client CUCM 9.1(2). Il numero di serie, l'oggetto, l'emittente e le date di validità vengono confrontati con le informazioni riportate nella pagina Gestione certificati di amministrazione del sistema operativo.
Il server CUCM 10.5(2) presenta il proprio certificato per la verifica, ora verifica il certificato del client CUCM 9.1(2). La verifica viene eseguita in entrambe le direzioni.
In caso di mancata corrispondenza tra i certificati nell'acquisizione dei pacchetti e i certificati nella pagina Web Amministrazione del sistema operativo, i certificati corretti non vengono caricati.
I certificati corretti devono essere caricati nella pagina Admin Cert del sistema operativo.
Le tracce CUCM possono inoltre essere utili per determinare quali messaggi vengono scambiati tra i server CUCM 9.1(2) e CUCM 10.5(2) e se la sessione SSL è stabilita correttamente o meno.
Nell'esempio sono state raccolte le tracce di CUCM 9.1(2).
Flusso di chiamata:
Ext 1018 > CUCM 9.1(2) > SIP TLS TRUNK > CUCM 10.5(2) > Ext 9898
++ Analisi cifre
04530161.009 |19:59:21.185 |AppInfo |Digit analysis: match(pi="2", fqcn="1018", cn="1018",plv="5", pss="", TodFilteredPss="", dd="9898",dac="0") 04530161.010 |19:59:21.185 |AppInfo |Digit analysis: analysis results 04530161.011 |19:59:21.185 |AppInfo ||PretransformCallingPartyNumber=1018 |CallingPartyNumber=1018 |DialingPartition= |DialingPattern=9898 |FullyQualifiedCalledPartyNumber=9898
++ SIP TLS è in uso sulla porta 5061 per questa chiamata.
04530191.034 |19:59:21.189 |AppInfo |//SIP/SIPHandler/ccbId=0/scbId=0/SIP_PROCESS_ENQUEUE: createConnMsg tls_security=3 04530204.002 |19:59:21.224 |AppInfo |//SIP/Stack/Transport/0x0/sipConnectionManagerProcessConnCreated: gConnTab=0xb444c150, addr=10.106.95.200, port=5061, connid=12, transport=TLS Over TCP 04530208.001 |19:59:21.224 |AppInfo |SIPTcp - wait_SdlSPISignal: Outgoing SIP TCP message to 10.106.95.200 on port 5061 index 12 [131,NET] INVITE sip:9898@10.106.95.200:5061 SIP/2.0 Via: SIP/2.0/TLS 10.106.95.203:5061;branch=z9hG4bK144f49a43a From: <sip:1018@10.106.95.203>;tag=34~4bd244e4-0988-4929-9df2-2824063695f5-19024196 To: <sip:9898@10.106.95.200> Call-ID: 94fffc00-57415541-7-cb5f6a0a@10.106.95.203 User-Agent: Cisco-CUCM9.1
++ Messaggio SDL (Signal Distribution Layer) SIPCertificateInd fornisce dettagli sul CN soggetto e informazioni sulla connessione.
04530218.000 |19:59:21.323 |SdlSig |SIPCertificateInd |wait |SIPHandler(1,100,72,1) |SIPTcp(1,100,64,1) |1,100,17,11.3^*^* |[T:N-H:0,N:1,L:0,V:0,Z:0,D:0] connIdx= 12 --remoteIP=10.106.95.200 --remotePort = 5061 --X509SubjectName /C=IN/ST=cisco/L=cisco/O=cisco/OU=cisco/CN=CUCM10 --Cipher AES128-SHA --SubjectAltname = 04530219.000 |19:59:21.324 |SdlSig |SIPCertificateInd |restart0 |SIPD(1,100,74,16) |SIPHandler(1,100,72,1) |1,100,17,11.3^*^* |[R:N-H:0,N:0,L:0,V:0,Z:0,D:0] connIdx= 12 --remoteIP=10.106.95.200 --remotePort = 5061 --X509SubjectName /C=IN/ST=cisco/L=cisco/O=cisco/OU=cisco/CN=CUCM10 --Cipher AES128-SHA --SubjectAltname =