Brkcol 3224
Brkcol 3224
BRKCOL-3224
Cisco Webex Teams
Questions?
Use Cisco Webex Teams to chat
with the speaker after the session
How
1 Find this session in the Cisco Events Mobile App
2 Click “Join the Discussion”
3 Install Webex Teams or go directly to the team space
4 Enter messages/questions in the team space
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 3
UC Security Sessions
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 4
Agenda
• Introduction
• Where to Begin
• Implementing Secure Signaling and Media
• Cisco Expressway
• Cisco Unified Border Element (CUBE)
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 5
Where to Begin
Session Prerequisites
• Working knowledge of
• SIP
• CUCM Phone and SIP trunk configuration
• IOS/CUBE configuration
• Expressway configuration
SIP
PSTN
SIP SIP
CUBE CUCM Expressway
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 7
Deploying CA-
Signed Certificates
Certificate Exchange – CA vs Self-signed
CA-Server
CUCM Self-Signed CA-Signed
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
Generating
Certificate Signing
Requests (CSR)
Generating a CSR in CUBE/IOS
Generating the Key-pair
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
Generating a CSR in CUBE/IOS
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 15
Generating a CSR in CUBE/IOS
2. Generate the CSR from the Trustpoint
ISR4KCUBE(config)#crypto pki enroll caServer
% Start certificate enrollment ..
MIIBEzCBuwIBADA4MRwwGgYDVQQDExM0NDUxLUNVQkUuY2lzY28uY29tMRgwFgYJ
...snip...
ceZ+rgIhAN8AzHEJKdUnFovHCetMSed60qHkKjn/H+C1iOxaH4Yz
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 16
Generating a CSR in Maintenance > Security > Server certificate >
Generate CSR
Expressway
Maintenance > Security > Server certificate
Notes
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 17
Importing the
Certificate Trust
Chain
Importing the Root/Intermediate and Identity
Certificates to CUBE
Import the Root Certificate via the Terminal using the crypto pki authenticate
<trustpoint_name> command
ISR4KCUBE(config)#crypto pki authenticate caServer
Enter the base 64 encoded CA certificate.
End with a blank line or the word "quit" on a line by itself
-----BEGIN CERTIFICATE-----
...snip...
-----END CERTIFICATE-----
Certificate has the following attributes:
Fingerprint MD5: 45F42000 781A427A 152E9DBD 7C438967
Fingerprint SHA1: A8E57437 3AE1E33B 22768143 EE308B79 0A3C43E6
View and
manage trusted
server
certificates
View the CA
trust file
Add one or
more certificate
to the CA trust
file
Reset back to
default
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 22
CA-signed Certificate Trust Chain
Trust
Chain
Certificate
Authority
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 23
Let’s Encrypt
support
on Expressway-E
Let’s Encrypt Introduction
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 25
Expressway-E ACME Requirements
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 26
CSR considerations when using Let’s Encrypt
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 27
Automated Certificate Renewal and Deployment
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 28
Implementing
Secure Signaling
Do Unsecure calls work?
TLS Session Establishment
Client Server
TCP Established
ClientHello
ServerHello
Certificate
ServerKeyExchange
Certificate CertificateRequest
ClientKeyExchange ServerHelloDone
CertificateVerify
[ChangeCipherSpec]
Finished
[ChangeCipherSpec]
Finished
TLS Established
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 32
SIP Session Establishment
Client Server
TCP Established
TLS Established
Invite (Offer)
100 Trying
180 Ringing
200 Ok (Answer)
Ack
Media/RTP
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 33
MRA CUCM Phone Device Security Profile
MRA
SRTP SRTP
Exp-C Exp-E
SRTP SRTP
Exp-C Exp-E
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 35
Expressway Configuration
Enabling SIP TLS B2B/Hybrid
Configuration > Protocols > SIP Configuration Settings
MTLS settings here may conflict with the following default zone settings
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 36
Expressway Configuration
Enabling SIP TLS on Zones B2B/Hybrid
SIP
• Transport – (TLS) Set the zone’s outbound transport type to
TLS
• TLS Port – Peer’s SIP TLS Listening port
• TLS Verify Mode:
• On – Match the peers x.509 subject name to the zone’s
peer
• Off – Accept any useable x.509 certificate
Location
• Peer Address – FQDN or IP address of peer
Configuration>Zones>Zones>Edit zone>Location
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 37
Expressway Configuration
Cipher Suites Global
Maintenance>Security>Ciphers xconfig //cipher
CUBE
incoming called-number 418....... incoming called-number 9.T
dtmf-relay rtp-nte dtmf-relay rtp-nte
codec g711ulaw codec g711ulaw
no vad no vad
<enter> (default)
ecdsa-cipher
strict-cipher
crypto signaling remote-addr <ip.address> <mask> trustpoint <name>
<enter> (default)
ecdsa-cipher
strict-cipher
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 42
IOS Configuration – crypto signaling
Enabling Secure Signaling and Server Identity Validation 16.11.1+
Associate CUBE trustpoint with voice process and enable Common Name (CN)/Subject Alternate Name (SAN) validation
sip-ua
crypto signaling remote-addr 14.50.248.100 255.255.255.255 trustpoint caServer cn-san-validate
• Validates that the Common Name (CN) Configure session target with SAN/CN
or Subject Alternate Name (SAN) in the
dial-peer voice 1 voip
server certificate matches the dial-peer
description to CUCM Sub – Secure Signaling
session target configuration. preference 1
• If both SAN and CN are in the server destination-pattern 418110....
session protocol sipv2
certificate, SAN takes precedence and
ipv4:14.50.248.101
session target dns:cucmsub.cisco-uc.com
session target must match SAN entry. session transport tcp tls
incoming called-number 9.T
dtmf-relay rtp-nte
codec g711ulaw
no vad
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 43
IOS Signaling Cipher Suites
TLS_RSA_WITH_RC4_128_MD5
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_CBC_SHA1
Default Cipher TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_128_CBC_SHA1
Strict Cipher
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
ECDSA Cipher
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 44
Configuring the SIP Trunk Security Profile
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
CUCM SIP Trunk Security Profile Configuration
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 46
CUCM Configuring the IOS SIP Trunk
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 47
Are Our Calls Completely Secure Now?
Signaling
Media
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 49
Implementing
Secure Media
What’s Secure RTP?
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 51
Secure RTP – SDP Security Descriptions (SDES)
Breaking down the crypto m-line
a=crypto:1 AES_CM_128_HMAC_SHA1_32 inline: L5+zq2AXJxLk+058lu/XRQWJZiK0c0D0
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 52
Secure RTP – SDP Security Descriptions (SDES)
Additional Parameters
SRTP Session Parameters: Allows further session flexibility, such as unencrypted/unauthenticated RTCP
Key Lifetime and Master Key Index: Not generally used in collaboration
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 53
Secure RTP – SDP Signaling for DTLS
DTLS SDP Attributes Setup
Indicates DTLS support. The
a=setup:passive value is negotiated between
both endpoints in the offer
a=connection:new
answer model.
a=fingerprint:SHA-1 4A:AD:B9:B1:3F:82:18:3B:54:02:12:DF:3E:5D:49:6B:19:E5:7C:AB
Connection
Offer Answer
Setup Values Used to indicate whether the
active* • passive* offer/answer exchange is
active: The endpoint will initiate an outgoing *default using an existing connection
• holdconn
connection.
passive: The endpoint will accept an incoming passive • active
connection. • holdconn Fingerprint
actpass: The endpoint is willing to accept an
incoming connection or to initiate an outgoing actpass • active A cryptographic hash of the
connection. • passive x509 certificate to be used in
• holdconn the key exchange and the
holdconn: The endpoint does not want the hashing algorithm used
connection to be established for the time being.
holdconn • holdconn
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 54
Secure RTP
SRTP Packet Format
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<+
|V=2|P|X| CC |M| PT | sequence number | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| timestamp | | RTP Headers
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| synchronization source (SSRC) identifier | |
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | RTP Headers are authenticated, but
|
|
contributing source (CSRC) identifiers
....
| |
| |
not encrypted
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| RTP extension (OPTIONAL) | |
+>+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
| | payload ... | |
| | +-------------------------------+ |
| | | RTP padding | RTP pad count | |
+>+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<+
Encrypted Portion
| ~ SRTP MKI (OPTIONAL) ~ |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | The payload, MKI (if present), and
| : authentication tag (RECOMMENDED) : |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
authentication tag are encrypted
| | and authenticated
+- Encrypted Portion* Authenticated Portion ---+
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 55
As per RFC 3711, SRTP is “a profile of the Real-time Transport
Protocol (RTP), which can provide confidentiality, message
authentication, and replay protection to the RTP traffic“
Confidentiality
Confidentiality is achieved by encrypting the RTP payload using AES ciphers
Message Authentication
HMAC provides the authentication mechanism by reducing the packet contents to a 160 bit number using SHA1
Replay Protection
Replay attacks assume that the attacker has access to the SRTP stream and can send duplicated packets to the receiver
in order to waste resources. The SRTP cryptographic context keeps track of the number of packets signed by the master
key in a sliding window that is tolerant of loss and out of order packet delivery (up to 2^15 packets)
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 56
MRA CUCM Phone Device Security Profile
MRA
Note
Any setting other than Auto will force the call media to traverse the
VCS and thus consume a traversal call license.
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 58
Security modes explained
Global
Mode Description Expressway UCM Configuration
Configuration
Mandatory Media encryption is required. Force encrypted Mixed Mode On
Unencrypted calls should always fail Phones Security Profile(s)
no fallback is allowed. • Device Security Mode:
Encrypted
• Transport Type: TLS
Trunk Settings
SIP Trunk Security Profile
• Incoming Transport Type: TLS
• Outgoing Transport Type: TLS
SRTP Allowed Checked
Best Effort Calls that can be encrypted are Best Effort Mixed Mode On
encrypted. Phone and Trunk security settings as
If encryption cannot be established required
Calls should fall back to unencrypted Normalization script applied
media if encryption can not be
established
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 59
Secure Media – IOS Configuration
Enabling Secure Media Pre-16.5.1
1. Enables SRTP
1. Enable SRTP on Dial-peer
2. Configure SRTP cipher suite support
dial-peer voice 1 voip
description to CUCM Sub – Secure Signaling In 15.4(1), support for sha1-80
preference 1 AES_CM_128_HMAC_SHA1_80 was
destination-pattern 418110.... added
session protocol sipv2
session target ipv4:14.50.248.103 3. (Optional) Configure NGE cipher
srtp suite support.
voice-class sip srtp-auth sha1-80 sha1-32
Introduced in 15.6(1)
voice-class sip srtp pass-thru
Allows for unsupported SRTP cipher
or suites to be negotiated,
1. Enable SRTP Globally • AEAD_AES_128_GCM
voice service voip • AEAD_AES_256_GCM
srtp • AEAD_AES_128_CCM
srtp pass-thru • AEAD_AES_256_CCM
sip
srtp-auth sha1-80 sha1-32 CUBE will pass-thru offered cipher
suites and keys from one call-leg to the
other call-leg.
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
Secure Media – IOS-XE Configuration
Enabling Secure Media 16.5.1+
Define SRTP crypto suite support 2. Enable SRTP and apply voice-class crypto-suite on Dial-peer
voice class srtp-crypto 1 dial-peer voice 1 voip
crypto 1 AEAD_AES_256_GCM description to CUCM Sub – Secure Signaling
crypto 2 AEAD_AES_128_GCM
preference 1
crypto 3 AES_CM_128_HMAC_SHA1_80
crypto 4 AES_CM_128_HMAC_SHA1_32 destination-pattern 418110....
session protocol sipv2
session target ipv4:14.50.248.103
1. Create a voice class to define srtp
supported SRTP cipher suites. voice-class sip srtp-crypto 1
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 61
IOS Cipher Suite Support for Media
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 63
Are Our Calls Completely Secure Now?
Signaling
Media
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 65
Secure to Non-
Secure
Interoperability
SRTP to RTP
Interworking
CUBE-based SRTP-RTP Interworking
SIP
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 71
SRTP Fallback
Secure Call Establishment
Secure
CUBE CUCM Phone
Invite
SDP: RTP/SAVP
200 OK
SDP: RTP/SAVP
SRTP
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 73
Secure Call Establishment Failure
Unsecure
CUBE CUCM Phone
Invite
SDP: RTP/SAVP
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 74
SRTP Fallback Call Establishment
Unsecure
CUBE CUCM Phone
Invite
Supported: x-cisco-srtp-fallback
SDP: RTP/SAVP
200 OK
Supported: x-cisco-srtp-fallback
SDP: RTP/AVP
RTP
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 75
SRTP Fallback - IOS Configuration
Enable on Dial-peer
dial-peer voice 1 voip
description to CUCM – Secure Signaling Enable Globally
preference 1
destination-pattern 418110....
or
voice service voip
session protocol sipv2
srtp fallback
session target ipv4:14.50.248.101
sip
srtp fallback
srtp negotiate cisco
voice-class sip srtp negotiate cisco
incoming called-number 9.T
dtmf-relay rtp-nte
codec g711ulaw
no vad
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 76
Secure Media – Expressway and UCM Interop
Unified Communications
Mode Description Expressway Behavior
Manager Behavior
Media encryption is not allowed. m=RTP/AVP media description m=RTP/AVP media description
None Calls that require encryption should No crypto attributes present in No crypto attributes present in
fail. SDP SDP
Warning
Expressway will not send crypto keys without a secure signaling transport (TLS)
UCM Does not have this limitation and will send crypto keys in clear text over non secure (TCP, UDP) transport types
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 77
Secure Media – vcs-interop Lua Script
B2B
Direction Conditions Behavior Applies to
Convert media descriptions to
Inbound to m=RTP/AVP media description RTP/SAVP All requests containing
UCM a=crypto lines in the SDP Add x-cisco-srtp-fallback SDP
header
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 78
Troubleshooting
Troubleshooting
Methodology
Troubleshooting
Methodology • When was it first reported?
• How often does it occur?
Identify and
• What’s the impact ?
Quantify the
• Individual user
Problem • Site
• Entire deployment
• What’s changed?
• Software versions?
Gather
• Call flow?
Information • Network topology?
• Debugs/Traces/Packet Captures
Analyze
Gathered
Information
and Narrow
the Scope
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 83
Narrowing the Scope
Is it a Signaling or Media problem?
Signaling Path
• SIP
• TLS
• Media
Negotiation
Media Path
• Media Encryption
• Media
Decryption
• Voice Quality
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 84
Identifying the Problem
• Troubleshoot and resolve
Does an unsecure call work in the same call flow? before implementing secure
configuration.
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 85
Identifying the Problem
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 86
Identifying the Problem
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 87
Identifying the Problem
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 88
Identifying the Problem
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 89
Troubleshooting
Tools
IOS Command Output dial-peer matched
show call [active|history] voice brief Call direction
Answer = received call
Call leg identifier Originate = placed call
ISR4KCUBE#show call active voice brief
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 91
IOS Command Output
show call [active|history] voice brief
Call duration
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 92
IOS Command Output
show sip-ua calls
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 93
Diagnostic Logs
Anatomy • Available through the Expressway Web UI (Maintenance > Diagnostics >
Diagnostic Logging)
Click to Download
the logs
Click to Start
Click to Stop after the
issue is reproduced
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 97
Diagnostic Logs
What do they capture?
• SIP/H.323 traffic
• MRA Reverse Proxy Traffic
• TCP, SSL, and DNS traffic
• Application logic, and much more
2017-09-19T14:01:46.462-04:00 amer-expressway01 tvcs: UTCTime="2017-09-19 18:01:46,461"
Module="network.tcp" Level="DEBUG": Src-ip="146.20.193.73" Src-port="40342" Dst-ip="172.16.2.2" Dst-
port="5062" Detail="TCP Connecting“
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 99
Openssl
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 100
openssl s_client
panholt@whiskeyjack:~$ openssl s_client -connect amer-expressway01.ciscotac.net.:5061
CONNECTED(00000003)
depth=2 C=US, ST=Arizona, L=Scottsdale, O="GoDaddy.com, Inc.", CN=Go Daddy Root Certificate Authority - G2
verify return:1
depth=1 C=US, ST=Arizona, L=Scottsdale, O="GoDaddy.com, Inc.", OU=http://certs.godaddy.com/repository/, CN=Go Daddy Secure Certificate Authority - G2
verify return:1
depth=0 OU=Domain Control Validated, CN=amer-expressway01.ciscotac.net Socket is connected and the peers server
verify return:1 cert is verified against local CA trust store
---
Certificate chain
0 s:/OU=Domain Control Validated/CN=amer-expressway01.ciscotac.net
i:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certs.godaddy.com/repository//CN=Go Daddy Secure Certificate Authority - G2
1 s:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certs.godaddy.com/repository//CN=Go Daddy Secure Certificate Authority - G2
i:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./CN=Go Daddy Root Certificate Authority - G2
2 s:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./CN=Go Daddy Root Certificate Authority - G2 Server cert’s trust chain is
i:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./CN=Go Daddy Root Certificate Authority - G2 displayed
---
Server certificate
-----BEGIN CERTIFICATE----- PEM encoded server cert is displayed (use -showcerts to display all the certs in the
MIIGrDCCBZSg … trust chain)
-----END CERTIFICATE-----
subject=/OU=Domain Control Validated/CN=amer-expressway01.ciscotac.net
issuer=/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certs.godaddy.com/repository//CN=Go Daddy Secure Certificate Authority - G2
---
No client certificate CA names sent
Peer signing digest: SHA512 SSL/TLS Handshake is
Server Temp Key: ECDH, P-521, 521 bits complete
---
SSL handshake has read 4901 bytes and written 499 bytes
---
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 101
openssl s_client (continued)
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-GCM-SHA384
Server public key is 4096 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1.2
Cipher : ECDHE-RSA-AES256-GCM-SHA384
Session-ID: A6A286C01CAE78D6F4A2F0A10E413AD121578DD01CFD1160B776E73F2E69A130
Session-ID-ctx:
Master-Key: 3EF487C8C18BCA4D10A16D4E25DB31F68238425B80E11CCC28697B0E45047FED5CD8EC3F2D885BF6D68B560280B953F6
Key-Arg : None
SSL/TLS Session PSK identity: None
Info PSK identity hint: None
SRP username: None
TLS session ticket lifetime hint: 300 (seconds)
TLS session ticket:
0000 - 44 81 19 97 12 96 ee 0c-68 25 37 e6 ae 92 43 41 D.......h%7...CA
0010 - fc 75 c0 38 4f 35 d7 af-55 c9 a7 d7 76 75 64 a2 .u.8O5..U...vud.
0020 - ac 27 0a 5a c9 f8 80 31-4c 39 15 9f 7e e2 23 c9 .'.Z...1L9..~.#.
0030 - 36 fa 86 ce 0c 52 67 90-e2 7d ad 5b 94 93 96 89 6....Rg..}.[....
0040 - e6 be b2 d6 ac ee d3 36-d0 62 25 8d 58 93 c7 d0 .......6.b%.X...
0050 - d1 ab 5d 43 e3 59 9d bb-98 8d c2 ef 82 ac 9a 26 ..]C.Y.........&
0060 - 0c 0c bf ba 4f 88 49 55-e3 ef a6 12 d4 5d df bb ....O.IU.....]..
0070 - b7 38 3f 6d b1 b4 7e 2a-d1 c5 5a 05 0d c0 08 af .8?m..~*..Z.....
0080 - e7 3a a8 24 3a a1 12 d2-e1 d7 f0 e0 46 44 95 13 .:.$:.......FD..
0090 - 04 63 81 6a 97 7a 6f 4c-37 39 68 a7 12 00 cb 5c .c.j.zoL79h....\
starttls prot - use the STARTTLS command before starting TLS for those protocols that support it,
where 'prot' defines which one to assume. Currently, only "smtp", "pop3", "imap", "ftp" and
"xmpp“ are supported.
TLS Extension testing tlsextdebug - hex dump of all TLS extensions received
servername host - Set TLS extension servername in ClientHello
and debugging (SNI, alpn arg - enable ALPN extension, named protocols supported (comma-separated list)
ALPN)
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 103
in – input file (default stdin)
openssl x509 inform – input file format (DER, NET or PEM default: PEM)
noout – no certificate output
text - print the certificate in text form
panholt@whiskeyjack:/tmp$ openssl x509 -in server.pem -inform pem -noout -text
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 8041775998364328096 (0x6f9a20a9d1c4a0a0)
Signature Algorithm: sha256WithRSAEncryption
Issuer: C=US,ST=Arizona,L=Scottsdale,O=GoDaddy.com, Inc.,OU=http://certs.godaddy.com/repository/,CN=Go Daddy Secure Certificate Authority-G2
Validity
Not Before: May 31 14:48:01 2017 GMT
Not After : May 31 14:48:01 2020 GMT
Subject: OU=Domain Control Validated, CN=amer-expressway01.ciscotac.net
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (4096 bit)
Modulus:
00:8e:26:ce:19:f6:3e:a4:33:
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints: critical
CA:FALSE
X509v3 Extended Key Usage:
TLS Web Server Authentication, TLS Web Client Authentication
X509v3 Key Usage: critical
Digital Signature, Key Encipherment
X509v3 CRL Distribution Points:
{snip}
X509v3 Subject Alternative Name:
DNS:amer-expressway01.ciscotac.net, DNS:www.amer-expressway01.ciscotac.net, DNS:rtp.ciscotac.net, DNS:ciscotac.net, DNS:amer-
expressway01.rtp.ciscotac.net
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 104
openssl x509 (other uses)
inform arg - input format - default PEM (one of DER, NET or PEM)
outform arg - output format - default PEM (one of DER, NET or PEM)
keyform arg - private key format - default PEM
in arg - input file - default stdin
out arg - output file - default stdout
subject - print subject DN
issuer - print issuer DN
email - print email address(es)
startdate - notBefore field
enddate - notAfter field
dates - both Before and After dates
text - print the certificate in text form
x509toreq - output a certification request object
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 105
Data to Collect
Phone Registration
Type of Problem CUCM Expressway Other
LSC Installation CAPF traces Start Log Phone console
Collection logs
Secure Phone Registration CCM traces
Media Establishment
Type of
IOS Debugs IOS Command Output CUCM Expressway Other
Problem
SRTP-RTP debug voip hpi show voip rtp connection Start Log
Interworking
Collection
ISR-G2 only error
debug ccsip
info
show call active|history voice brief Packet
CCM traces Start Log
Media debug ccsip media capture
show sip-ua call Collection
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 106
Data to Collect
Signaling and Call Establishment
Type of Problem IOS Debugs IOS command output CUCM Expressway Other
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 107
Troubleshooting
Scenarios
Scenario 1:
Call Setup Failure
Problem Description
SIP SIP
TCP/RTP TLS/SRTP
Outbound call
Inbound call
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 110
IOS Command Output after Outbound Call
show sip-ua connection tcp tls detail
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 111
IOS Command Output after Inbound Call Attempt
show sip-ua connection tcp tls detail
Remote-Agent:14.50.248.101, Connections-Count:2
Remote-Port Conn-Id Conn-State WriteQ-Size Local-Address TLS-Version
=========== ======= =========== =========== ============= ===========
54715 122 Established 0 - TLSv1.2
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 112
debug ccsip message
Troubleshooting
Inbound call
14.50.211.3 14.50.211.41
1
INVITE
Jun 22 00:16:55.003: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg: Audio codec
Received: G711ulaw
INVITE sip:[email protected]:5060 SIP/2.0
Via: SIP/2.0/TCP 14.50.211.31:5060;branch=z9hG4bKfe6e7c6463
DTMF-relay RFC2833
From: <sip:[email protected]>;tag=44900~bb0e39ab-e0bf-401d
To: <sip:[email protected]>
Date: Thu, 22 Jun 2017 00:16:55 GMT v=0
Call-ID: [email protected] o=CiscoSystemsCCM-SIP 8576 1 IN IP4 14.50.211.31
s=SIP Call
Unique call identifier c=IN IP4 14.50.212.51
Remote media IP m=audio 17714 RTP/AVP 0 101
address and RTP port a=rtpmap:0 PCMU/8000
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 113
debug voip ccapi inout
Troubleshooting
Inbound call dial-peer voice 3 voip
description inbound PSTN unsecure
14.50.211.31 14.50.211.182 translation-profile incoming switch21
session transport tcp
incoming called-number 1...
INVITE dtmf-relay rtp-nte
codec g711ulaw
Jun 22 00:16:55.021: //-1/17C53B000000/CCAPI/cc_api_call_setup_ind_common:
no vad
Interface=0x7F12BB8C3E80, Call Info(
Calling Number=1052062,(Calling Name=)(TON=Unknown, NPI=Unknown, dial-peer voice 2 voip
Screening=User,
description to CUCM Pub – Secure
Called Number=1001(TON=Unknown, NPI=Unknown),
preference 1
Incoming Dial-peer=3, Progress Indication=NULL(0), Calling IE Present=TRUE,
destination-pattern 1...
Source Trkgrp Route Label=, Target Trkgrp Route Label=, CLID Transparent=FALSE), Call sipv2
session protocol
session target ipv4:14.50.248.100
Jun 22 00:16:55.025: //33288/17C53B000000/CCAPI/ccCallSetupRequest:
session transport tcp tls
Calling Number=1052062(TON=Unknown, NPI=Unknown, Screening=User, Passed,called-number
incoming Called 8.T
Number=1001(TON=Unknown, NPI=Unknown), dtmf-relay rtp-nte
Account Number=1052062, Final Destination Flag=TRUE, srtp
Guid=17C53B00-0001-0000-003A1FD3320E, Outgoing Dial-peer=2 codec g711ulaw
no vad
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 114
debug ccsip transport
Troubleshooting debug ip tcp transaction
debug crypto pki
Inbound call
14.50.211.31 14.50.248.100
TCP
TCP SYN
Established
Sent
Client Hello
Server Hello
Server
ClientHello Certificate
Server Certificate
Jun 22 00:16:55.075: <<< TLS 1.2 Handshake [length 03C3], Certificate
Jun 22 00:16:55.075: 0B 00 03 BF 00 03 BC 00 03 B9 30 82 03 B5 30 82
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 116
14.50.248.31 14.50.248.100
Troubleshooting
TCP Established
Client Hello
Server Hello
Server
Certificate
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 117
14.50.248.31 14.50.248.100
Troubleshooting
TCP Established
Client Hello
Server Hello
Server
Certificate
TLS Alert
TLS Alert
Jun 22 00:16:55.103: >>> TLS 1.2 Alert [length 0002], fatal bad_certificate
Jun 22 00:16:55.103: 02 2A
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 118
14.50.248.31 14.50.248.100
Verifying Certificates
ISR4KCUBE#sh crypto pki certificate
CA Certificate
Status: Available
Certificate Serial Number (hex):
3A0E15FE9124C0B040801DC535DBA5C3
Certificate Usage: Signature
Issuer:
cn=BRKUCC_CA
Subject:
cn=BRKUCC_CA
Validity Date:
start date: 17:44:42 EDT May 29 2017
end date: 17:54:41 EDT May 29 2022
Associated Trustpoints: caServer
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 119
14.50.248.31 14.50.248.100
Verifying Certificates
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 120
Summary
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 121
Scenario 2:
Secure Mobile and
Remote Access
Call Issues
Problem Description
We secured our existing and working MRA solution for end to end security. Now calls
establish, but devices cannot end calls and users are reporting call drops after
around 15 minutes
SIP TCP
TLS SIP TCP
SIP TLS SIP TLS SIP TLS
RTP
SRTP SRTP
RTP SRTP SRTP
Exp-C Exp-E
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 123
Verify Call is Encrypted
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 124
CSA Ladder Diagram
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 125
CSA Analysis
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 126
Packet Capture analysis
© 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public
Expressway-C Trust Store
Subject: CN=rtp12-tpdmz-118-ucmpub.rtp.ciscotac.net
First Entry Serial Number: 7c:dc:3c:62:5c:f7:27:e9:7e:01:9a:41:98:0b:15:48
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 128
Verify CUCM Certificates
Matches first entry in Expressway Trusted CA Matches second entry in Expressway Trusted CA
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 129
Summary
• Openssl, within the Expressway, parses the trust store from top-down
looking for a match on the CN, and finds the Tomcat.pem entry.
• The Callmanager.pem is used for SIP and Media thus the Tomcat.pem
certificate is unacceptable for this scenario and the TLS connection
fails to establish.
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 130
Solutions
1. Use CA-signed
certificates, generate a
new CSR on the CUCM
and have a trusted CA
sign them. Configuration > Unified Communications > Unified CM servers > Edit
(Recommended)
2. Delete the Tomcat.pem
certificate from the
Expressway-C’s trust
store and turn TLS
Verify Mode to Off for
the UCM Server.
(Workaround)
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 131
Additional UC Security Sessions
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 133
Complete your
online session
survey • Please complete your session survey
after each session. Your feedback
is very important.
• Complete a minimum of 4 session
surveys and the Overall Conference
survey (starting on Thursday) to
receive your Cisco Live t-shirt.
• All surveys can be taken in the Cisco Events
Mobile App or by logging in to the Content
Catalog on ciscolive.com/emea.
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 134
Continue your education
Demos in the
Walk-in labs
Cisco campus
BRKCOL-3224 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 135
Thank you