Guest

Cisco ASA 5500-X Series Next-Generation Firewalls

SSLVPN with IP Phones Configuration Example

Cisco - SSLVPN with IP Phones Configuration Example

Document ID: 115945

Updated: Mar 13, 2013

Contributed by Nicholas Carrieri, William Ryan Bennett, and Walter Lopez, Cisco TAC Engineers.

   Print

Introduction

This document describes how to configure IP phones over a Secure Sockets Layer VPN (SSLVPN), also known as a WebVPN. Two Cisco Unified Communications Managers (CallManagers) and three types of certificates are used with this solution. The CallManagers are:

  • Cisco Unified Communications Manager (CUCM)

  • Cisco Unified Communications Manager Express (Cisco Unified CME)

The certificate types are:

  • Self-signed certificates

  • Third-party certificates, such as Entrust, Thawte, and GoDaddy

  • Cisco IOS®/Adaptive Security Appliance (ASA) certificate authority (CA)

The key concept to understand is that, once the configuration on the SSLVPN gateway and CallManager are completed, you must join the IP phones locally. This enables the phones to join the CUCM and to use the correct VPN information and certificates. If the phones are not joined locally, they cannot find the SSLVPN gateway and do not have the correct certificates to complete the SSLVPN handshake.

The most common configurations are CUCM/Unified CME with ASA self-signed certificates and Cisco IOS self-signed certificates. Consequently, they are the easiest to configure.

Prerequisites

Requirements

Ensure that you meet these requirements before you attempt this configuration:

  • ASA Premium license.

  • AnyConnect VPN Phone license.

    • For ASA Release 8.0.x, the license is AnyConnect for Linksys Phone.

    • For ASA Release 8.2.x or later, the license is AnyConnect for Cisco VPN Phone.

  • SSLVPN Gateway: ASA 8.0 or later (with an AnyConnect for Cisco VPN Phone License), or Cisco IOS 12.4T or later.

    • Cisco IOS 12.4T or later is not formally supported as documented in the SSL VPN Configuration Guide.

    • In Cisco IOS Release 15.0(1)M, the SSLVPN gateway is a seat-counted licensing feature on the Cisco 880, Cisco 890, Cisco 1900, Cisco 2900, and Cisco 3900 platforms. A valid license is required for a successful SSLVPN session.

  • CallManager: CUCM 8.0.1 or later, or Unified CME 8.5 or later.

Components Used

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.

Conventions

Refer to the Cisco Technical Tips Conventions for more information on document conventions.

Configure

In this section, you are presented with the information to configure the features described in this document.

Note: Use the Command Lookup Tool (registered customers only) to obtain more information on the commands used in this section.

Basic ASA SSLVPN Configuration

The basic ASA SSLVPN configuration is described in these documents:

Once this configuration is complete, a remote test PC should be able to connect to the SSLVPN gateway, connect via AnyConnect, and ping the CUCM. Ensure the ASA has an AnyConnect for Cisco IP phone license (the show ver command). Both TCP and UDP port 443 must be open between the gateway and the client.

Basic IOS SSLVPN Configuration

caution Caution: IP phones are designated as not supported in IOS SSLVPN; configurations are in best effort only.

The basic Cisco IOS SSLVPN configuration is described in these documents:

Once this configuration is complete, a remote test PC should be able to connect to the SSLVPN gateway, connect via AnyConnect, and ping the CUCM. In Cisco IOS 15.0 and later, you must have a valid SSLVPN license to complete this task. Both TCP and UDP port 443 must be open between the gateway and the client.

CUCM: ASA SSLVPN with Self-Signed Certificates Configuration

See IP Phone SSL VPN to ASA using AnyConnect for more detailed information.

The ASA must have a license for AnyConnect for Cisco VPN Phone. After you configure the SSLVPN, you then configure your CUCM for the VPN.

  1. Use this command in order to export the self-signed certificate from the ASA:

    ciscoasa(config)# crypto ca export trustpoint name identity-certificate
    
    

    This command displays a pem encoded identity certificate to the terminal.

  2. Copy and paste the certificate to a text editor, and save it as a .pem file. Be sure to include the BEGIN CERTIFICATE and END CERTIFICATE lines or the certificate will not import correctly. Do not modify the format of the certificate because this will problems when the phone tries to authenticate to the ASA.

  3. Navigate to Cisco Unified Operating System Administration > Security > Certificate Management > Upload Certificate/Certificate Chain in order to load the certificate file to the CERTIFICATE MANAGEMENT section of the CUCM.

  4. Download the CallManager.pem, CAPF.pem, and Cisco_Manufacturing_CA.pem certificates from the same area used to load the self-signed certificates from the ASA (see Step 1), and save them to your desktop.

    1. For example, in order to import the CallManager.pem to the ASA, use these commands:

      ciscoasa(config)# crypto ca trustpoint certificate-name
      
      
      ciscoasa(config-ca-trustpoint)# enrollment terminal
      
      ciscoasa(config)# crypto ca authenticate certificate-name
      
      
    2. When you are prompted to copy and paste the corresponding certificate for the trustpoint, open the file you saved from the CUCM, then copy and paste the Base64-encoded certificate. Be sure to include the BEGIN CERTIFICATE and END CERTIFICATE lines (with hyphens).

    3. Type end, then press Return.

    4. When prompted to accept the certificate, type yes, then press Enter.

    5. Repeat steps a to d for the other two certificates (CAPF.pem, Cisco_Manufacturing_CA.pem) from the CUCM.

  5. Configure the CUCM for the correct VPN configurations, as described in CUCM IPphone VPN config.pdf.

Load-balanced SSLVPN is not supported for VPN phones.

Note: The VPN gateway configured on the CUCM must match the URL that is configured on the VPN gateway. If the gateway and URL do not match, the phone cannot resolve the address, and you will not see any debugs on the VPN gateway.

  • On the CUCM: The VPN gateway URL is https://192.168.1.1/VPNPhone

  • On the ASA, use these commands:

    ciscoasa# configure terminal
    
    ciscoasa(config)# tunnel-group VPNPhones webvpn-attributes
    
    ciscoasa(config-tunnel-webvpn)# group-url https://192.168.1.1/VPNPhone enable
    
    ciscoasa(config-tunnel-webvpn)# exit
    
  • You can use these commands on the Adaptive Security Device Manager (ASDM) or under the connection profile.

CUCM: ASA SSLVPN with Third-Party Certificates Configuration

This configuration is very similar to the configuration described in CUCM: ASA SSLVPN with Self-Signed Certificates Configuration section, except that you are using third-party certificates. Configure SSLVPN on the ASA with third-party certificates as described in ASA 8.x Manually Install 3rd Party Vendor Certificates for use with WebVPN Configuration Example.

Note: You must copy the full certificate chain from the ASA to the CUCM and include all intermediate and root certificates. If the CUCM does not include the full chain, the phones do not have the necessary certificates to authenticate and will fail the SSLVPN handshake.

CUCM: IOS SSLVPN with Self-Signed Certificates Configuration

This configuration is similar to the configuration described in CUCM: ASA SSLVPN with Third-Party Certificates Configuration and CUCM: ASA SSLVPN with Self-Signed Certificates Configuration sections. The differences are:

  1. Use this command in order to export the self-signed certificate from the router:

    R1(config)# crypto pki export trustpoint-name pem terminal
    
  2. Use these commands in order to import the CUCM certificates:

    R1(config)# crypto pki trustpoint certificate-name
    
    
    R1(config-ca-trustpoint)# enrollment terminal
    
    R1(config)# crypto ca authenticate certificate-name
    
    

The WebVPN context configuration should show this text:

gateway webvpn_gateway domain VPNPhone

Configure the CUCM as described in CUCM: ASA SSLVPN with Self-Signed Certificates Configuration section.

CUCM: IOS SSLVPN with Third-Party Certificates Configuration

This configuration is similar to the configuration described in CUCM: ASA SSLVPN with Self-Signed Certificates Configuration section. Configure your WebVPN with a third-party certificate.

Note: You must copy the full WebVPN certificate chain to the CUCM and include all intermediate and root certificates. If the CUCM does not include the full chain, the phones do not have the necessary certificates to authenticate and will fail the SSLVPN handshake.

Unified CME: ASA/Router SSLVPN with Self-Signed Certificates/Third-Party Certificates Configuration

Configuration for the Unified CME is similar to the configurations of the CUCM; for example, the WebVPN endpoint configurations are the same. The only significant difference is the configurations of the Unified CME call agent. Configure the VPN group and the VPN policy for the Unified CME as described in Configuring SSL VPN Client for SCCP IP Phones.

Note: Unified CME supports only Skinny Call Control Protocol (SCCP) and does not support Session Initiation Protocol (SIP) for VPN phones.

Note: There is no need to export the certificates from the Unified CME to the ASA or router. You only need to export the certificates from the ASA or router WebVPN gateway to the Unified CME.

In order to export the certificates from the WebVPN gateway, refer to the ASA/router section. If you are using a third-party certificate, you must include the full certificate chain. In order to import the certificates to the Unified CME, use the same method as used to import certificates into a router:

CME(config)# crypto pki trustpoint certificate-name

CME(config-ca-trustpoint)# enrollment terminal
CME(config)# crypto ca authenticate certificate-name

UC 520 IP Phones with SSLVPN Configuration

The Cisco Unified Communications 500 Series Model UC 520 IP phone is quite different from the CUCM and CME configurations.

  • Since the UC 520 IP phone is both the CallManager and the WebVPN gateway, there is no need to configure certificates between the two.

  • Configure the WebVPN on a router as you normally would with self-signed certificates or third-party certificates.

  • The UC 520 IP phone has a built in WebVPN client, and you can configure it just as you would a normal PC to connect to WebVPN. Enter the gateway, then the username/password combination.

  • The UC 520 IP phone is compatible with the Cisco Small Business IP Phone SPA 525G phones.

Related Information

Updated: Mar 13, 2013
Document ID: 115945