Contenu

Introduction

Conditions préalables

Conditions requises

Components Used

Informations générales

Configuration

Étape 1. Utiliser l'autorité de certification publique ou la configuration de l'autorité de certification sur Windows Server 2003

Étape 2. Vérifier le nom d'hôte et les paramètres

Étape 3. Générer et télécharger la demande de signature de certificat (CSR)

Étape 4. Signer le CSR avec l'autorité de certification Microsoft Windows 2003

Étape 5. Obtenir le certificat racine de l'autorité de certification

Étape 6. Télécharger le certificat racine CA en tant que CallManager Trust

Étape 7. Télécharger le certificat CSR CallManager en tant que certificat CallManager.

Étape 8. Créer des profils de sécurité de liaison SIP

Étape 9. Créer des liaisons SIP

Étape 10. Créer des modèles de routage

Vérification

Dépannage

Collecter la capture de paquets sur CUCM

Collecter les traces CUCM

Introduction

Ce document décrit un processus étape par étape pour configurer la liaison TLS (Transport Layer Security) SIP (Session Initiation Protocol) sur Communications Manager avec un certificat signé Autorité de certification (CA).

Après avoir suivi ce document, les messages SIP entre deux clusters seront chiffrés à l'aide de TLS.

Conditions préalables

Conditions requises

Cisco vous recommande de connaître :

- Gestionnaire de communications unifiées de Cisco (version CUCM)

- SIP

Components Used

Les informations contenues dans ce document sont basées sur les versions de logiciel suivantes :

- CUCM version 9.1(2)

- CUCM version 10.5(2)

- Microsoft Windows Server 2003 en tant qu'autorité de certification

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

Informations générales

Comme l'illustre cette image, la connexion SSL à l'aide de certificats.

Configuration

Étape 1. Utiliser l'autorité de certification publique ou la configuration de l'autorité de certification sur Windows Server 2003

Reportez-vous au lien : Configurer l'autorité de certification sur le serveur Windows 2003

Étape 2. Vérifier le nom d'hôte et les paramètres

Les certificats sont basés sur des noms. Assurez-vous que les noms sont corrects avant de commencer.

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

Pour modifier le nom d'hôte, reportez-vous au lien : Modifier le nom d'hôte sur CUCM

Étape 3. Générer et télécharger la demande de signature de certificat (CSR)

CUCM 9.1(2)

Pour générer le CSR, accédez à OS Admin > Security > Certificate Management > Generate CSR.

Dans le champ Nom du certificat, sélectionnez CallManager dans la liste déroulante.

Pour télécharger le CSR, accédez à OS Admin > Security > Certificate Management > Download CSR.

Dans le champ Nom du certificat, sélectionnez CallManager dans la liste déroulante.

CUCM 10.5(2)

Pour générer le CSR, accédez à OS Admin > Security > Certificate Management > Generate CSR.

1. Dans le champ Objet du certificat, sélectionnez CallManager dans la liste déroulante.

2. Dans le champ Longueur de clé, sélectionnez 1024 dans la liste déroulante..

3. Dans le champ Hash Algorithm, sélectionnez SHA1 dans la liste déroulante.

Pour télécharger le CSR, accédez à OS Admin > Security > Certificate Management > Download CSR.

Dans le champ Objet du certificat, sélectionnez CallManager dans la liste déroulante.

Note: Le CSR CallManager est généré avec les clés RSA (Rivest-Shamir-Addleman) 1 024 bits.

Étape 4. Signer le CSR avec l'autorité de certification Microsoft Windows 2003

Il s'agit d'une information facultative permettant de signer le CSR avec l'autorité de certification Microsoft Windows 2003.

1. Ouvrez l'autorité de certification.

2. Cliquez avec le bouton droit sur l'icône AC et accédez à Toutes les tâches > Soumettre une nouvelle demande

3. Sélectionnez le CSR et cliquez sur l'option Open (Applicable dans les CSR (CUCM 9.1(2) et CUCM 10.5(2))

4. Tous les CSR ouverts s'affichent dans le dossier Demandes en attente. Cliquez avec le bouton droit sur chaque CSR et accédez à Toutes les tâches > Émettre afin d'émettre les certificats. (Applicable dans les CSR [CUCM 9.1(2) et CUCM 10.5(2)]

5. Afin de télécharger le certificat, choisissez le dossier Certificats émis.

Cliquez avec le bouton droit sur le certificat et cliquez sur l'option Ouvrir.

6. Les détails du certificat s'affichent. Pour télécharger le certificat, sélectionnez l'onglet Détails et cliquez sur le bouton Copier dans un fichier...

7. Dans la fenêtre Assistant Exportation de certificat, cliquez sur la case d'option X.509(.CER) codée en Base-64.

8. Nommez le fichier avec précision. Cet exemple utilise le format CUCM1052.cer.

Pour CUCM 9.1(2), suivez la même procédure.

Étape 5. Obtenir le certificat racine de l'autorité de certification

Ouvrez la fenêtre Autorité de certification.

Afin de télécharger la racine-CA

1. Cliquez avec le bouton droit sur l'icône CA et cliquez sur l'option Propriétés.

2. Dans l'onglet Général, cliquez sur Afficher le certificat.

3. Dans la fenêtre Certificat, cliquez sur l'ONGLET Détails.

4. Cliquez sur Copier dans le fichier...

Étape 6. Télécharger le certificat racine CA en tant que CallManager Trust

Afin de télécharger le certificat racine CA, connectez-vous à OS Admin > Security > Certificate Management > Upload Certificate/Certificate Chain

Note: Exécutez ces étapes sur les CUCM (CUCM 9.1(2) et CUCM 10.5(2))

Étape 7. Télécharger le certificat CSR CallManager en tant que certificat CallManager.

Afin de télécharger le CSR CallManager du panneau AC, connectez-vous à OS Admin > Security > Certificate Management > Upload Certificate/Certificate Chain

Note: Exécutez ces étapes sur les CUCM (CUCM 9.1(2) et CUCM 10.5(2))

Étape 8. Créer des profils de sécurité de liaison SIP

CUCM 9.1(2)

Afin de créer le profil de sécurité de liaison SIP, accédez à System > Security > SIP Trunk Security Profile.

Copiez le profil de liaison SIP non sécurisé existant et donnez-lui un nouveau nom. Dans l'exemple, le profil de liaison SIP non sécurisé a été renommé avec le profil de liaison SIP sécurisé TLS.

Dans X.509 Subject Name, utilisez le Common Name (CN) du CUCM 10.5(2) (certificat signé CA) comme indiqué dans cette image.

CUCM 10.5(2)

Accédez à System > Security > SIP Trunk Security Profile.

Copiez le profil de liaison SIP non sécurisé existant et donnez-lui un nouveau nom. Dans l'exemple, le profil de liaison SIP non sécurisé a été renommé avec le profil de liaison SIP sécurisé TLS.

Dans X.509 Subject Name, utilisez le CN du CUCM 9.1(2) (certificat signé CA) comme indiqué :

Les deux profils de sécurité de liaison SIP définissent un port entrant de 5061, dans lequel chaque cluster écoute sur le port TCP 5061 les nouveaux appels TLS SIP entrants.

Étape 9. Créer des liaisons SIP

Une fois les profils de sécurité créés, créez les liaisons SIP et modifiez le paramètre de configuration ci-dessous sur la liaison SIP.

CUCM 9.1(2)

1. Dans la fenêtre Configuration de liaison SIP, cochez la case SRTP Allowed du paramètre de configuration.

Cela sécurise le protocole RTP (Real-time Transport Protocol) à utiliser pour les appels sur cette liaison. Cette case ne doit être cochée que lorsque vous utilisez SIP TLS, car les clés du protocole SRTP (Secure Real-time Transport Protocol) sont échangées dans le corps du message SIP. La signalisation SIP doit être sécurisée par TLS, sinon toute personne avec la signalisation SIP non sécurisée pourrait déchiffrer le flux SRTP correspondant sur la liaison.

2. Dans la section Informations SIP de la fenêtre Configuration de liaison SIP, ajoutez l'adresse de destination, le port de destination et le profil de sécurité de liaison SIP.

CUCM 10.5(2)

1. Dans la fenêtre Configuration de liaison SIP, cochez la case SRTP Allowed du paramètre de configuration.

Cela permet d'utiliser SRTP pour les appels sur cette liaison. Cette case ne doit être cochée que lorsque vous utilisez SIP TLS, car les clés de SRTP sont échangées dans le corps du message SIP. La signalisation SIP doit être sécurisée par le TLS, car toute personne disposant d'une signalisation SIP non sécurisée peut déchiffrer le flux RTP sécurisé correspondant sur le trunk.

2. Dans la section Informations SIP de la fenêtre Configuration de liaison SIP, ajoutez l'adresse IP de destination, le port de destination et le profil de sécurité

Étape 10. Créer des modèles de routage

La méthode la plus simple consiste à créer un modèle de route sur chaque cluster, en pointant directement vers la ligne principale SIP. Les groupes de routage et les listes de routage peuvent également être utilisés.

CUCM 9.1(2) pointe vers le modèle de route 9898 via la ligne principale SIP TLS vers le CUCM 10.5(2)

Le CUCM 10.5(2) pointe vers le modèle de route 1018 via la liaison SIP TLS jusqu'au CUCM 9.1(2)

Vérification

Aucune procédure de vérification n'est disponible pour cette configuration.

Dépannage

L'appel TLS SIP peut être débogué à l'aide de ces étapes.

Collecter la capture de paquets sur CUCM

Afin de vérifier la connectivité entre CUCM 9.1(2) et CUCM 10.5(2), prenez une capture de paquets sur les serveurs CUCM et observez le trafic TLS SIP.

Le trafic TLS SIP est transmis sur le port TCP 5061, considéré comme sip-tls.

Dans l'exemple suivant, une session CLI SSH est établie pour CUCM 9.1(2)

1. Capture de paquets CLI à l'écran

Cette interface de ligne de commande imprime le résultat à l'écran pour le trafic TLS SIP.

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. Captures CLI dans un fichier

Cette interface de ligne de commande effectue la capture de paquets en fonction de l’hôte et crée un fichier nommé paquets.

admin:utils network capture eth0 file packets count 100000 size all host ip 10.106.95.200

Redémarrez la liaison SIP sur CUCM 9.1(2) et passez l'appel du poste 1018 (CUCM 9.1(2)) au poste 9898 (CUCM 10.5(2))

Afin de télécharger le fichier à partir de l'interface de ligne de commande, exécutez cette commande :

admin:file get activelog platform/cli/packets.cap

La capture est effectuée au format .cap standard. Cet exemple utilise Wireshark pour ouvrir le fichier packet.cap, mais n'importe quel outil d'affichage de capture de paquets peut être utilisé.

1. La synchronisation du protocole de contrôle de transmission (TCP) (SYN) pour établir la communication TCP entre CUCM 9.1(2)(Client) et CUCM 10.5(2)(Serveur).

2. CUCM 9.1(2) envoie le message Hello du client pour démarrer la session TLS.

3. CUCM 10.5(2) envoie le message Hello du serveur, le certificat du serveur et la demande de certificat pour démarrer le processus d'échange de certificat.

4. Certificat que le client CUCM 9.1(2) envoie pour terminer l'échange de certificat.

5. Les données d'application qui sont des signaux SIP chiffrés indiquent que la session TLS a été établie.

Vérifiez en outre si les certificats corrects sont échangés. Après Server Hello, le serveur CUCM 10.5(2) envoie son certificat au client CUCM 9.1(2).

Le numéro de série et les informations d'objet du serveur CUCM 10.5(2) sont présentés au client CUCM 9.1(2). Le numéro de série, l'objet, l'émetteur et les dates de validité sont tous comparés aux informations de la page Gestion des certificats d'administration du système d'exploitation.

Le serveur CUCM 10.5(2) présente son propre certificat pour vérification, maintenant il vérifie le certificat du client CUCM 9.1(2). La vérification se fait dans les deux directions.

En cas d'incompatibilité entre les certificats de la capture de paquets et les certificats de la page Web d'administration du système d'exploitation, les certificats corrects ne sont pas téléchargés.

Les certificats corrects doivent être téléchargés sur la page OS Admin Cert.

Collecter les traces CUCM

Les traces CUCM peuvent également être utiles pour déterminer quels messages sont échangés entre les serveurs CUCM 9.1(2) et CUCM 10.5(2) et si la session SSL est correctement établie.

Dans l'exemple, les traces de CUCM 9.1(2) ont été collectées.

Flux d'appels :

Ext 1018 > CUCM 9.1(2) > SIP TLS TRUNK > CUCM 10.5(2) > Ext 9898

++ Analyse de chiffres

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 est utilisé sur le port 5061 pour cet appel.

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

++ Le message SDL (Signal Distribution Layer) SIPCertificateInd fournit des détails sur le CN d'objet et les informations de connexion.

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 =