Contents

Introduction

Prerequisites

Requirements

Componentes Utilizados

Restrição

Informações de Apoio

Principais benefícios

Arquitetura geral

Configuração - Jabber no local

1. Configurar Logons de Atualização.

2. Configurar portas OAuth.

3. Ative o modo SIP OAuth.

4. Reinicie o Cisco CallManager Service.

5. Configurar o suporte OAuth no perfil de segurança.

Configuração - Jabber sobre MRA

Pré-requisitos

Etapa 1. Ative Atualizar logon no MRA.

Etapa 2. Atualize os nós do Unified CM no Expressway-C.

Etapa 3. Configurar o suporte OAuth no perfil de segurança.

Verificar

1. Verifique se o modo SIP OAuth está habilitado globalmente.

2. Verifique se as entradas de SAN Expressway-C foram enviadas para o CUCM com êxito.

3. Verifique a(s) zona(s) CEOAuth no Expressway-C.

4. Verifique se o processo do CallManager escuta nas portas SIP OAuth.

Troubleshoot

Exemplo de log Jabber (no local)

Cenário 1 - Incompatibilidade da porta de registro OAuth do SIP

Cenário 2 - CA desconhecida do Expressway

Cenário 3 - CA desconhecida do UCM

Introduction

Este documento descreve as etapas básicas de configuração e solução de problemas para implementar o modo SIP OAuth com o Cisco Jabber.

Prerequisites

Requirements

A Cisco recomenda que você tenha conhecimento destes tópicos:

- Registro de softphone Jabber

- Unified Communications Manager (UCM)

- Solução MRA (Mobile and Remote Access, acesso móvel e remoto)

Componentes Utilizados

Versão mínima do software para suportar o modo SIP OAuth:

- Cisco UCM 12.5

- Cisco Jabber 12.5

- Cisco Expressway X12.5

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. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.

Restrição

Quando o SIP OAuth Mode está ativado, as opções Enable Digest Authentication e TFTP Encrypted Config não são suportadas.

Informações de Apoio

Principais benefícios

A proteção da sinalização e da mídia SIP para o softphone Cisco Jabber atualmente envolve várias etapas de configuração. O mais difícil é instalar e renovar certificados de clientes (LSCs), especialmente se um dispositivo Cisco Jabber estiver alternando entre dentro e fora das instalações, e manter os certificados dentro do arquivo CTL atualizados.

O modo SIP OAuth permite que o Cisco Jabber Softphone use tokens autodescritivos OAuth em vez do certificado LSC do cliente para autenticação na interface SIP segura. O suporte a OAuth na interface SIP do UCM permite a sinalização e a mídia seguras para implantações Jabber no local e MRA sem a necessidade do modo misto ou operação CAPF.

Principais benefícios do suporte do modo SIP OAuth para o Cisco Jabber:

- Habilita a criptografia sempre ativa sem carga administrativa adicional.

- Sinalização e mídia seguras para o Cisco Jabber sem a necessidade do modo misto (sem atualizações CTL, manutenção de certificados e assim por diante)

- Não há necessidade de instalar e manter o LSC em clientes Jabber.

- Desafios com o LSC em vários dispositivos (laptops/dispositivos móveis..)

- Operação CAPF necessária a qualquer momento que o Jabber é instalado em um novo dispositivo.

- Operação CAPF não suportada através de MRA.

Arquitetura geral

O dispositivo Cisco Jabber reconhece que a autenticação OAuth está habilitada na interface SIP analisando o arquivo de configuração do CSF (http://<cucmIP>:6970/<CSF-device-name>.cnf.xml), exemplo de arquivo de configuração (algumas linhas deixadas para ser breve):

O Cisco Jabber lê o parâmetro sipOAuthMode para determinar se o modo SIP OAuth está ativado ou não. Esse parâmetro pode assumir um dos seguintes valores:

- 0 - SIP OAuth está desabilitado

- 1 - OAuth do SIP ativado

Se o modo SIP OAuth estiver habilitado, o Jabber usará um desses parâmetros para determinar a porta da conexão SIP TLS - sipOAuthPort para implantações no local ou sipMRAOAuthPort para MRA. O exemplo apresenta os valores padrão - sipOAuthPort 5090 e sipMRAOAuthPort 5091. Esses valores são configuráveis e podem ser diferentes em cada nó CUCM.

Se o modo SIP OAuth estiver desabilitado, o Jabber usará as portas herdadas não seguras (5060) ou seguras (5061) para o registro SIP.

Note: O Cisco UCM usa a porta OAuth do telefone SIP (5090) para ouvir o registro de linha SIP de dispositivos Jabber OnPremise sobre TLS. No entanto, o UCM usa a porta de acesso remoto móvel SIP (padrão 5091) para ouvir registros de linha SIP do Jabber sobre Expressway através do mLTS. Ambas as portas são configuráveis. Consulte a seção de configuração.

O serviço CallManager escuta sipOAuthPort e sipMRAOAuthPort. No entanto, ambas as portas usam o certificado Tomcat e Tomcat-trust para conexões TLS/mTLS de entrada. Certifique-se de que seu armazenamento Tomcat-trust possa verificar o certificado Expressway-C para o modo OAuth SIP para que o MRA funcione com precisão.

Em situações em que o certificado Tomcat é regerado, o processo CallManager deve ser reiniciado nos nós afetados também depois. Isso é necessário para que o processo CCM carregue e use novos certificados em portas sipOAuth.

Esta imagem descreve o registro do Cisco Jabber enquanto está no local:

Esta imagem descreve o registro do Cisco Jabber sobre MRA:

*Os nós Expressway-C usam API AXL para informar o UCM da CN/SAN em seu certificado. O UCM usa essas informações para validar o certificado Exp-C quando uma conexão TLS mútua é estabelecida.

Configuração - Jabber no local

Note:

Certifique-se de que você concluiu os pontos abaixo antes da configuração do modo SIP OAuth:

- O MRA é configurado e a conexão é estabelecida entre o Unified Communication Manager (UCM) e o Expressway (aplicável somente se o MRA estiver em uso).

- O UCM está registrado em uma Smart ou Virtual Account com funcionalidade de exportação controlada.

1. Configurar Logons de Atualização.

Configure os Logins de Atualização com tokens de acesso OAuth e os tokens de atualização para clientes Cisco Jabber. No Cisco Unified CM Administration, escolha System > Enterprise Parameters.

2. Configurar portas OAuth.

Escolha System > Cisco Unified CM. Esta é uma etapa opcional. A imagem apresenta os valores padrão. O intervalo configurável aceitável é de 1024 a 49151. Repita o mesmo procedimento para cada servidor.

3. Ative o modo SIP OAuth.

Use a Interface de Linha de Comando do Publisher para ativar o modo SIP OAuth globalmente. Execute o comando: utils sipOAuth-mode enable.

4. Reinicie o Cisco CallManager Service.

No Cisco Unified Serviceability, escolha Tools > Control Center - Feature Services. Selecione e reinicie o serviço Cisco CallManager em todos os nós onde o serviço está ativo.

5. Configurar o suporte OAuth no perfil de segurança.

No Cisco Unified CM Administration, escolha System > Phone Security Profile. Selecione Habilitar autenticação OAuth para habilitar o suporte OAuth SIP para o endpoint.

Configuração - Jabber sobre MRA

Pré-requisitos

Antes da configuração do modo OAuth SIP para Jabber sobre MRA, execute as etapas de 1 a 4 do capítulo Configuração - Jabber nas instalações deste artigo.

Etapa 1. Ative Atualizar logon no MRA.

Os logins de atualização devem ser habilitados no Expressway (também chamado de tokens autodescritivos) antes da configuração da autenticação SIP OAuth com o Cisco Jabber sobre MRA. No Expressway-C, navegue até Configuration > Unified Communications > Configuration e certifique-se de que o Token Authorize by OAuth com parâmetro de atualização esteja definido como On (Ativado).

Etapa 2. Atualize os nós do Unified CM no Expressway-C.

Navegue até Configuration > Unified Communications > Unified CM servers. Descubra ou atualize os nós do Unified CM no Expressway-C.

Note: Uma nova zona CEOAuth (TLS) é criada automaticamente no Expressway-C. Por exemplo, CEOAuth <Unified CM name>. Uma regra de pesquisa é criada para proxy das solicitações SIP originadas do Jabber sobre MRA para o nó do Unified CM. Essa zona usa conexões TLS independentemente de o Unified CM estar configurado com o modo misto. Para estabelecer confiança, o Expressway-C também envia os detalhes do nome do host e do nome alternativo do assunto (SAN) para o cluster do Unified CM. Consulte a parte de verificação deste artigo para garantir que a configuração correta esteja estabelecida.

Etapa 3. Configurar o suporte OAuth no perfil de segurança.

No Cisco Unified CM Administration, escolha System > Phone Security Profile. Ative o suporte OAuth no perfil atribuído ao Cisco Jabber.

Verificar

1. Verifique se o modo SIP OAuth está habilitado globalmente.

Verifique o modo OAuth do Cisco Unified CM Administration, escolha System > Enterprise Parameters.

Como alternativa, use a CLI Admin - Execute o comando: run sql select paramvalue FROM processconfig WHERE paramname = 'ClusterSIPOAuthMode'

Valores possíveis: 0 - para Desabilitado (Padrão), 1 - para Habilitado.

2. Verifique se as entradas de SAN Expressway-C foram enviadas para o CUCM com êxito.

O Expressway-C envia os detalhes de CN/SAN de seu certificado para o UCM por meio do AXL. Esses detalhes são salvos na tabela expresswayconfiguration. Esse processo é chamado toda vez que você descobre ou atualiza os nós do Unified CM no Expressway-C. Essas entradas são usadas para estabelecer a confiança entre o UCM e o Expressway-C. O campo CN/SAN do certificado Expressway-C é comparado às entradas durante a conexão MTLS com a porta SIP MRA OAuth (5091 por padrão). Se a verificação não for bem-sucedida, a conexão MTLS falhará.

Verifique as entradas do Cisco Unified CM Administration, escolha Device > Expressway-C (disponível a partir do UCM 12.5.1Su1)

Como alternativa, use a CLI Admin - Execute o comando: run sql select * from expresswaycconfiguration

3. Verifique a(s) zona(s) CEOAuth no Expressway-C.

Navegue até Expressway-C > Configuration > Zones > Zones. Verifique se todas as zonas CEOAuth recém-criadas estão no estado ativo.

4. Verifique se o processo do CallManager escuta nas portas SIP OAuth.

Execute o comando da CLI do administrador: show open ports regexp 5090 (SIP OAuth Port padrão)

Execute o comando da CLI do administrador: show open ports regexp 5091 (SIP MRA OAuth Port padrão)

Troubleshoot

Exemplo de log Jabber (no local)

Exemplo de registro do SIP OAuth no local na porta 5090 da perspectiva do log do Jabber.

## CSF configuration retrieved 2020-03-30 13:03:18,278 DEBUG [0x000012d8] [src\callcontrol\ServicesManager.cpp(993)] [csf.ecc] [csf::ecc::ServicesManager::fetchDeviceConfig] - fetchDeviceConfig() retrieved config for CSFrado 2020-03-30 13:03:18,278 DEBUG [0x000012d8] [rc\callcontrol\ServicesManager.cpp(1003)] [csf.ecc] [csf::ecc::ServicesManager::fetchDeviceConfig] - Device Config:

10.10.10.1

ccm12pub

2000

5060

5061

5090

5091

…

1

## Setting SIP oauth mode to 1 2020-03-30 13:03:18,747 DEBUG [0x00002968] [ig\CertificateVerificationHelper.cpp(35)] [csf.ecc] [csf::ecc::CertificateVerificationHelper::setSipOauthMode] - sip OAuth Mode=1 ## Setting OAuth ports (5090 and 5091) for each UCM server 13:03:19,013 INFO  [0x00002484] [\core\ccapp\config\config_parser.c(1491)] [csf.sip-call-control] [config_process_ccm_properties] - ccm0=10.10.10.1 ccm1=10.10.10.2  ccm2= sip_oauth_port_0=5090 sip_oauth_port_1=5090 sip_oauth_port_2=5090 length=0 13:03:19,013 INFO  [0x00002484] [\core\ccapp\config\config_parser.c(1494)] [csf.sip-call-control] [config_process_ccm_properties] - sip_mar_oauth_port_0=5091 sip_mar_oauth_port_1=5091 sip_mar_oauth_port_2=5091 ## Open TLS connection to 5090 2020-03-30 13:03:18,528 DEBUG [0x00000e2c] [sipstack\sip_transport_connection.c(431)] [csf.sip-call-control] [sip_create_transport_connection] - [SIP][CONN][0] create TLS connection 10.10.10.10:5061-----10.10.10.1:5090. ## Sending register message 2020-03-30 13:03:19,200 DEBUG [0x00000e2c] [\sipcc\core\sipstack\ccsip_debug.c(1041)] [csf.sip-call-control] [platform_print_sip_msg] - sipio-sent---> REGISTER sip:10.10.10.1 SIP/2.0 Via: SIP/2.0/TLS 10.10.10.10:62162;branch=z9hG4bK00001188 From:

;tag=882323451234089000003bdd-00005eff To:

Call-ID: 88232345-12340017-00001c0b-00000cfa@10.10.10.10 Max-Forwards: 70 Date: Mon, 30 Mar 2020 11:03:19 GMT CSeq: 2270 REGISTER User-Agent: Cisco-CSF Contact:

;+sip.instance="

";+u.sip!devicename.ccm.cisco.com="CSFrado";+u.sip!model.ccm.cisco.com="503";video Supported: replaces,join,sdp-anat,norefersub,resource-priority,extended-refer,X-cisco-callinfo,X-cisco-serviceuri,X-cisco-escapecodes,X-cisco-service-control,X-cisco-srtp-fallback,X-cisco-monrec,X-cisco-config,X-cisco-sis-7.0.0,X-cisco-xsi-8.5.1,X-cisco-graceful-reg,X-cisco-duplicate-reg ## 407 Proxy Authentication Required 2020-03-30 13:03:19,310 DEBUG [0x00000e2c] [\sipcc\core\sipstack\ccsip_debug.c(1041)] [csf.sip-call-control] [platform_print_sip_msg] - sipio-recv<--- SIP/2.0 407 Proxy Authentication Required Via: SIP/2.0/TLS 10.10.10.10:62162;branch=z9hG4bK00001188 From:

;tag=882323451234089000003bdd-00005eff To:

;tag=441122775 Date: Mon, 30 Mar 2020 11:03:31 GMT Call-ID: 88232345-12340017-00001c0b-00000cfa@10.10.10.10 Server: Cisco-CUCM12.5 CSeq: 2270 REGISTER Proxy-Authenticate: Bearer realm="ccmsipline" Content-Length: 0 ## Register with OAuth token included in the Proxy-Authorization header 2020-03-30 13:03:19,310 DEBUG [0x00000e2c] [\sipcc\core\sipstack\ccsip_debug.c(1041)] [csf.sip-call-control] [platform_print_sip_msg] - sipio-sent---> REGISTER sip:10.10.10.1 SIP/2.0 Via: SIP/2.0/TLS 10.10.10.10:62162;branch=z9hG4bK00004a82 From:

;tag=882323451234089000003bdd-00005eff To:

Call-ID: 88232345-12340017-00001c0b-00000cfa@10.10.10.10 Max-Forwards: 70 Date: Mon, 30 Mar 2020 11:03:19 GMT CSeq: 2271 REGISTER User-Agent: Cisco-CSF Contact:

;+sip.instance="

";+u.sip!devicename.ccm.cisco.com="CSFrado";+u.sip!model.ccm.cisco.com="503";video Proxy-Authorization: Bearer token="

" Supported: replaces,join,sdp-anat,norefersub,resource-priority,extended-refer,X-cisco-callinfo,X-cisco-serviceuri,X-cisco-escapecodes,X-cisco-service-control,X-cisco-srtp-fallback,X-cisco-monrec,X-cisco-config,X-cisco-sis-7.0.0,X-cisco-xsi-8.5.1,X-cisco-graceful-reg,X-cisco-duplicate-reg Reason: SIP;cause=200;text="cisco-alarm:111 Name=CSFrado ActiveLoad=Jabber_for_Windows-12.8.0.51973 InactiveLoad=Jabber_for_Windows-12.8.0.51973 Last=Application-Requested-Destroy" Expires: 3600 Content-Type: multipart/mixed; boundary=uniqueBoundary Mime-Version: 1.0 Content-Length: 1271 # 200 OK for Register 2020-03-30 13:03:19,325 DEBUG [0x00000e2c] [\sipcc\core\sipstack\ccsip_debug.c(1041)] [csf.sip-call-control] [platform_print_sip_msg] - sipio-recv<--- SIP/2.0 200 OK Via: SIP/2.0/TLS 10.10.10.10:62162;branch=z9hG4bK00004a82 From:

;tag=882323451234089000003bdd-00005eff To:

;tag=1915868308 Date: Mon, 30 Mar 2020 11:03:31 GMT Call-ID: 88232345-12340017-00001c0b-00000cfa@10.10.10.10 Server: Cisco-CUCM12.5 CSeq: 2271 REGISTER Expires: 120 Contact:

;+sip.instance="

";+u.sip!devicename.ccm.cisco.com="CSFrado";+u.sip!model.ccm.cisco.com="503";video;x-cisco-newreg Supported: X-cisco-srtp-fallback,X-cisco-sis-9.1.0 Content-Type: application/x-c

Cenário 1 - Incompatibilidade da porta de registro OAuth do SIP

O dispositivo Jabber no local no modo SIP OAuth não consegue se registrar no UCM. O UCM envia 403 para a mensagem de registro:

SIP/2.0 403 Forbidden Via: SIP/2.0/TLS 10.5.10.121:50347;branch=z9hG4bK00005163 From:

;tag=005056867e66010a00006698-00002a32 To:

;tag=1946377502 Date: Fri, 03 Aug 2018 05:00:18 GMT Call-ID: 00505686-7e660005-0000216b-0000366f@10.5.10.121 Server: Cisco-CUCM12.5 CSeq: 363 REGISTER Retry-After: 35 Warning: 399 UCM2-PUB "SIP OAuth Registration port Mismatch" Content-Length: 0

Possível solução: Certifique-se de que as seguintes condições sejam atendidas:

- O modo OAuth está ativado globalmente

- O perfil de segurança do dispositivo associado ao dispositivo tem o suporte OAuth ativado

- Mensagem recebida na porta 5090 sobre TLS em vez de mTLS

Cenário 2 - CA desconhecida do Expressway

O Expressway-C não consegue estabelecer o handshake mTLS com UCM em sipMRAOAuthport (padrão 5091). O Expressway-C não confia no certificado compartilhado pelo UCM e responde com a mensagem CA desconhecida durante a configuração do mTLS.

Possível solução: O serviço CallManager envia seu certificado Tomcat durante o handshake mTLS. Certifique-se de que o Expressway-C confie no assinante do certificado Tomcat do UCM.

Cenário 3 - CA desconhecida do UCM

O Expressway-C não consegue estabelecer o handshake mTLS com UCM em sipMRAOAuthport (padrão 5091). O UCM não confia no certificado compartilhado pelo Expressway e responde com a mensagem CA desconhecida durante a configuração do mTLS.

Captura de pacote desta comunicação (UCM 10.x.x.198, Expressway-C 10.x.x.182):

Possível solução: O UCM usa o armazenamento Tomcat-trust para verificar os certificados de entrada durante o handshake mTLS nas portas SIP OAuth. Verifique se o certificado do assinante para Expressway-C foi carregado corretamente no UCM.