Sommario

Introduzione

Prerequisiti

Requisiti

Premesse

Configurazione BroadWorks

Esempio di laboratorio funzionale

Configurazione

Verifica

Controllo connettività

Esempio Lab Con Errore

Problema

Configurazione

Verifica

Controllo connettività

Risoluzione

Verifica della risoluzione

Introduzione

In questo documento viene descritto come configurare BroadWorks e risolverne i problemi per evitare l'errore "SSL_ERROR_NO_CIPHER_OVERLAP".

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza della piattaforma BroadWorks.

Premesse

Configurazione BroadWorks

Per Broadworks release 22 e successive, i protocolli e i cifrari sono configurabili dalla CLI tramite i contesti visualizzati a diversi livelli di configurazione.

'Interface/Port specific - low level'

CLI/Interface/Http/HttpServer/SSLSettings/Protocols

CLI/Interface/Http/HttpServer/SSLSettings/Ciphers

'All interfaces - mid level'

CLI/Interface/Http/SSLCommonSettings/Protocols

CLI/Interface/Http/SSLCommonSettings/Ciphers

'Generic system level - high level'

CLI/System/SSLCommonSettings/JSSE/Protocols

CLI/System/SSLCommonSettings/JSSE/Ciphers

Un contesto denominato SSLCommonSettings fa riferimento a un elemento meno specifico della gerarchia SSL e un contesto denominato SSLSettings fa riferimento a un elemento più specifico della gerarchia.

Esempio di laboratorio funzionale

Configurazione

Configurazione di basso livello legata all'interfaccia e alla porta specifiche senza crittografia:

CLI/Interface/Http/HttpServer/SSLSettings/Protocols> get 172.16.30.146 443

Protocol Name

===============

TLSv1.1

TLSv1.2

TLSv1

CLI/Interface/Http/HttpServer/SSLSettings/Ciphers> get 172.16.30.146 443

Cipher Name

=============

0 entry found.

Verifica

Verificare la configurazione con curl comando:

$ curl -v -k https://172.16.30.146

* About to connect() to 172.16.30.146 port 443 (#0)

* Trying 172.16.30.146...

* Connected to 172.16.30.146 (172.16.30.146) port 443 (#0)

* Initializing NSS with certpath: sql:/etc/pki/nssdb

* skipping SSL peer certificate verification

* SSL connection using TLS_RSA_WITH_AES_256_CBC_SHA256 <-----

* Server certificate:

* subject: E=broadworks_tac@cisco.com,CN=*.calo.cisco.com,OU=BroadworksTAC,O=TestIssuer,ST=Veracruz,C=MX

* start date: Apr 04 20:39:56 2022 GMT

* expire date: Apr 04 20:39:56 2023 GMT

* common name: *.calo.cisco.com

* issuer: CN=Root CA test,OU=BroadworksTAC,O=TestIssuer,L=Tecolutla,ST=Veracruz,C=MX

> GET / HTTP/1.1

> User-Agent: curl/7.29.0

> Host: 172.16.30.146

> Accept: */*

>

< HTTP/1.1 302 Found

In questo caso la connessione tramite TLSv1.2 è riuscita con la cifratura TLS_RSA_WITH_AES_256_CBC_SHA256.

Controllo connettività

Per verificare i protocolli e i cifrari accettati:

$ nmap -sV --script ssl-enum-ciphers -p 443 172.16.30.146

Starting Nmap 6.40 ( http://nmap.org ) at 2022-05-09 04:26 EDT

Nmap scan report for r23xsp01.calo.cisco.com (172.16.30.146)

Host is up (0.00013s latency).

PORT STATE SERVICE VERSION

443/tcp open ssl/https?

| ssl-enum-ciphers:

| TLSv1.0:

| ciphers:

| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - strong

| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - strong

| TLS_ECDHE_RSA_WITH_RC4_128_SHA - strong

| TLS_RSA_WITH_AES_128_CBC_SHA - strong

| TLS_RSA_WITH_AES_256_CBC_SHA - strong

| TLS_RSA_WITH_RC4_128_SHA - strong

| compressors:

| NULL

| TLSv1.1:

| ciphers:

| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - strong

| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - strong

| TLS_ECDHE_RSA_WITH_RC4_128_SHA - strong

| TLS_RSA_WITH_AES_128_CBC_SHA - strong

| TLS_RSA_WITH_AES_256_CBC_SHA - strong

| TLS_RSA_WITH_RC4_128_SHA - strong

| compressors:

| NULL

| TLSv1.2:

| ciphers:

| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - strong

| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 - strong

| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA - strong

| TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 - strong

| TLS_ECDHE_RSA_WITH_RC4_128_SHA - strong

| TLS_RSA_WITH_AES_128_CBC_SHA - strong

| TLS_RSA_WITH_AES_128_CBC_SHA256 - strong

| TLS_RSA_WITH_AES_256_CBC_SHA - strong

| TLS_RSA_WITH_AES_256_CBC_SHA256 - strong

| TLS_RSA_WITH_RC4_128_SHA - strong

| compressors:

| NULL

|_ least strength: strong

Esempio Lab Con Errore

Problema

Errore rilevato: "SSL_ERROR_NO_CIPHER_OVERLAP" tramite il browser.

# curl -v https://172.16.30.146

* About to connect() to 172.16.30.146 port 443 (#0)

* Trying 172.16.30.146...

* Connected to 172.16.30.146 (172.16.30.146) port 443 (#0)

* Initializing NSS with certpath: sql:/etc/pki/nssdb * CAfile: /etc/pki/tls/certs/ca-bundle.crt CApath: none

* NSS error -12286 (SSL_ERROR_NO_CYPHER_OVERLAP)

* Cannot communicate securely with peer: no common encryption algorithm(s).

* Closing connection 0 curl: (35) Cannot communicate securely with peer: no common encryption algorithm(s).

Configurazione

Configurazione di basso livello legata all'interfaccia e alla porta specifiche con il protocollo TLSv1.2 impostato e la crittografia TLSv1.0 impostata su TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256:

CLI/Interface/Http/HttpServer/SSLSettings/Protocols> get 172.16.30.146 443

Protocol Name

===============

TLSv1.2

CLI/Interface/Http/SSLCommonSettings/Ciphers> get

Cipher Name

======================================

TLS_ECDH_RSA_WITH_AES_128_GCM_SHA256

Verifica

Verificare la configurazione con curl comando:

$ curl -v -k https://172.16.30.146

* About to connect() to 172.16.30.146 port 443 (#0)

* Trying 172.16.30.146...

* Connected to 172.16.30.146 (172.16.30.146) port 443 (#0)

* Initializing NSS with certpath: sql:/etc/pki/nssdb

* NSS error -12286 (SSL_ERROR_NO_CYPHER_OVERLAP)

* Cannot communicate securely with peer: no common encryption algorithm(s).

* Closing connection 0

curl: (35) Cannot communicate securely with peer: no common encryption algorithm(s).

Controllo connettività

Per verificare i protocolli e i cifrari accettati:

$ nmap -sV --script ssl-enum-ciphers -p 443 172.16.30.146

Starting Nmap 6.40 ( http://nmap.org ) at 2022-05-09 05:31 EDT

Nmap scan report for r23xsp01.calo.cisco.com (172.16.30.146)

Host is up (0.000049s latency).

PORT STATE SERVICE VERSION

443/tcp open https?

| ssl-enum-ciphers:

|_ TLSv1.2: No supported ciphers found

Dai risultati dello strumento si osserva che il protocollo TLSv1.2 è disponibile ma non sono disponibili cifrari supportati.

Risoluzione

Eliminare la cifratura TLSv1.1 in CLI/Interface/Http/SSLCommonSettings/Ciphers , quindi aprire di nuovo tutte le cifrature TLSv1.2 (o aggiungere una cifratura TLSv1.2).

CLI/Interface/Http/HttpServer/SSLSettings/Protocols> get 172.16.30.146 443

Protocol Name

===============

TLSv1.2

CLI/Interface/Http/HttpServer/SSLSettings/Ciphers> get 172.16.30.146 443

Cipher Name

=============

0 entry found.

CLI/Interface/Http/SSLCommonSettings/Ciphers> get

Cipher Name

=============

0 entry found.

Verifica della risoluzione

$ curl -v -k https://172.16.30.146

* About to connect() to 172.16.30.146 port 443 (#0)

* Trying 172.16.30.146...

* Connected to 172.16.30.146 (172.16.30.146) port 443 (#0)

* Initializing NSS with certpath: sql:/etc/pki/nssdb

* skipping SSL peer certificate verification

* SSL connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 <-----

* Server certificate:

* subject: E=broadworks_tac@cisco.com,CN=*.calo.cisco.com,OU=BroadworksTAC,O=TestIssuer,ST=Veracruz,C=MX

* start date: Apr 04 20:39:56 2022 GMT

* expire date: Apr 04 20:39:56 2023 GMT

* common name: *.calo.cisco.com

* issuer: CN=Root CA test,OU=BroadworksTAC,O=TestIssuer,L=Tecolutla,ST=Veracruz,C=MX

> GET / HTTP/1.1

> User-Agent: curl/7.29.0

> Host: 172.16.30.146

> Accept: */*

>

< HTTP/1.1 302 Found

$ nmap -sV --script ssl-enum-ciphers -p 443 172.16.30.146

Starting Nmap 6.40 ( http://nmap.org ) at 2022-05-09 05:44 EDT

Nmap scan report for r23xsp01.calo.cisco.com (172.16.30.146)

Host is up (0.000063s latency).

PORT STATE SERVICE VERSION

443/tcp open https?

| ssl-enum-ciphers:

| TLSv1.2:

| ciphers:

| TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 - strong

| TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 - strong

| TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 - strong

| TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 - strong