One of the complications of gateway certificates is replacing old certificates on CUCM, after a secure gateway dies.
Take it from someone who has been there, the easiest way to get the new certificates from a secure gateway onto CUCM is to change the name of the gateway. Remember that certificates are tied to the name of the device. If the device has a new name, the new certificate won’t conflict with what’s already in CUCM’s certificate store. It’s this conflict that can cause all of the headaches.
I realize there may be OCD engineers (like myself) who want to keep their certificate stores neat and tidy, but when the phones have gone out of service, the bottom has fallen out the company’s stocks, the CTO has been downing nitro pills like Tic-Tacs, and you’re under the gun to get the gateway installed as quickly as possible, you may want to take my advice. Using a new name will allow you to get your secure gateway connection running right away. Then, if you wish, you can go back and delete the old certificates at your leisure.
However, if you’re in some sort of organization that has a strict naming convention you may have no choice but to give the new gateway the same name as the old one, in which case you’ll discover the following:
- You can’t have two of the same type of certificate on CUCM with the same name.
- CUCM won’t overwrite an old certificate with a new one if it carries the same name as the existing certificate.
- If you delete the old certificate the cluster will notice. The cluster will also notice that other servers have the certificate, and replication will cause the certificate to be replaced within about 10 seconds.
You can foil this replication issue by drafting 10 of your friends, getting them onto a conference call, assigning them a server, and instructing them to delete the certificate from their server when you say, “Now.” I did this the first time I confronted this problem, but I owed 10 people six-packs for doing it which was rather costly. A better way to handle the situation is to use a trick that I learned from Cisco.
- Follow the usual method for generating the new certificate on the gateway, which I detailed in this post, and copying it as a .pem file on your computer.
- Go to the servers and stop the Certificate Change Notification service on each one of them. This includes any servers that aren’t running the Call Manager service. This step will turn off the replication function.
- Go into the OS Administration page on each of the servers, navigate to Security > Certificate Management. Then find the certificate for the gateway and delete it. Again, this has to be done on every server containing the certificate (if you have a particularly large cluster this step can take quite a while).
- Make sure that at least 10 minutes have elapsed since you turned off the Certificate Change Notification service (I don’t know why; it’s one of those Cisco mysteries), and turn the service back on everywhere.
- Upload the new certificate to the Publisher. Replication will push the certificate to all of the Subscribers, but it’s still not a bad idea to make sure you didn’t mess up. Check all of the Subscribers to ensure the certificate is there and check the serial number of each certificate to make sure it’s really the new one.
- Restart the Call Manager service on all of the servers that are supposed to run it.
Remember the last step could affect service, so tread lightly and – if you have the luxury – schedule the CM service restart during a maintenance window.