How To export SSL Certificate from Cisco ASA (Cisco Adaptive Security Appliance)  and install on a Cisco Wireless LAN Controller

Published on
15,716 Points
2 Endorsements
Last Modified:
Imagine a situation that you have installed SSL Certificate on your Cisco ASA (Cisco Adaptive Security Appliance) firewall. Installation of SSL certificate on ASA is an another topic for which you can find step-by-step guidance on Cisco's website.

First of all, before you create a CSR (Certificate Signing Request), you must generate a private key, we refer to it as "mykey.pem" later in this document for WLC (Wireless LAN Controller)  use. It is a good practice to save the private key on the local disk in .txt format for future use, but if you forgot to do that, don't worry there is a way to export it from ASA.

We will start from the moment where we have already installed SSL certificate on ASA firewall. Usually for that process you will receive three files from the certificate vendor (or your own root certificate server)
  1. Root CA Certificate (CARoot.crt)
  2. Intermediate CA certificate (SSLCA2.crt)
  3. Device / domain / web server certificate (yourdomain_com.crt)

I. To install SSL certificate on WCL you need to create a .pem file that contains the full chain of certificates includes all three* certificates in the following order:

[use a text editor (notepad, nano, vi)]

(Your domain Certificate)
(Intermediate CA certificate)
(Root CA  certificate)

Open in new window

Save this file as allcerts.pem.

*NOTE: In controller versions earlier than, web authentication certificates can be only device certificates and should not contain the CA roots chained to the device certificate (no chained certificates). With controller version and later, the controller allows for the device certificate to be downloaded as a chained certificate for web authentication. Certificate Levels Level 0—Use of only a server certificate on WLC. Level 1—Use of server certificate on WLC and a CA root certificate. Level 2—Use of server certificate on WLC, one single CA intermediate certificate, and a CA root certificate. Level 3—Use of server certificate on WLC, two CA intermediate certificates, and a CA root certificate.  

II. Before you go to the next step you will need to retrieve a private key from ASA:

From ASA CLI do the following:

ASA(config)# crypto ca export ASDM_TrustPoint0 pkcs12 yourpassword

Open in new window

yourpassword - use the same password you used to generate the private key. The ASA will show you entire key on CLI. Copy this onto a text file and give it a name TrustPoint0.txt. Then using OpenSSL you must convert this base64 encoded file into PEM format.

#openssl base64 -in TrustPoint0.txt -d out TrustPoint0.pfx
#openssl pkcs12 -in TrustPoint0.pfx -info

Open in new window

You will be ask for password that you used to protect this key. Next you will see the private key section in this keychain. The key should look like this:

Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,544C0D9723C89EE348

Certificate bag
Bag Attributes
    friendlyName: ou=Domain Control Validated,ou=NameSSL Wildcard,cn=*.yourdomain.com
    localKeyID: 00 00 00 01 
subject=/OU=Domain Control Validated/OU=NameSSL Wildcard/CN=*.yourdomain.com
issuer=/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=NameSSL CA 2

Open in new window

Copy and paste the private key section onto another file and name it mykey.pem

III. Use OpenSSL and your RSA private key "mykey.pem" with the chained SSL certificates "allcerts.pem"

#openssl pkcs12 -export -in allcerts.pem -inkey mykey.pem -out All-certs.p12 -clcerts -passin pass:yourpassword -passout pass:yourpassword
#openssl pkcs12 -in All-certs.p12 -out final-cert.pem -passin pass:yourpassword -passout pass:yourpassword

Open in new window

Your resulting file is called "final-cert.pem". You are now ready to install your certificate on the WLC. To install your SSL certificate with the full chain to the WLC (using the GUI):
  1. Make a copy of the "final-cert.pem" file and copy it to your TFTP server.
  2. Select Security > Web Auth > Cert to open up the Web Authentication page.
  3. Enable the Download SSL Certificate box to setup the TFTP parameters.
  4. Enter the IP address of the TFTP server in the IP Address field.
  5. Enter the path to the file in the Directory Path field and enter the file name in the file name field.
  6. Enter the password used for the file (in the example commands, yourpassword was used).
  7. Click Apply.
  8. After the file downloads from the TFTP server, reboot the WLC by going to Commands > Reboot > Reboot. Save any changes if prompted.
You have now installed an SSL certificate.
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Featured Post

Looking for the Wi-Fi vendor that's right for you?

We know how difficult it can be to evaluate Wi-Fi vendors, so we created this helpful Wi-Fi Buyer's Guide to help you find the Wi-Fi vendor that's right for your business! Download the guide and get started on our checklist today!

Join & Write a Comment

Want to learn how to record your desktop screen without having to use an outside camera. Click on this video and learn how to use the cool google extension called "Screencastify"! Step 1: Open a new google tab Step 2: Go to the left hand upper corn…
This lesson discusses how to use a Mainform + Subforms in Microsoft Access to find and enter data for payments on orders. The sample data comes from a custom shop that builds and sells movable storage structures that are delivered to your property. …

Keep in touch with Experts Exchange

Tech news and trends delivered to your inbox every month