VMware vCloud Director и сертификат со "звездочкой"

Для обладателей сертификатов со звездочкой *.zone.xxx есть достаточно удобный и быстрый способ подружить vCloud Director c таким сертификатом.

Для приготовления нам понадобятся: сertificate.crt - сам сертификат и кey_certificate.key закрытый ключик.

Используемый vCloud Director-ом JCEKS и keytool не умеют работать напрямую с *.crt и *.key, потому на первом этапе нам придется засунуть Certificate.crt и Key_certificate.key в какое-нибудь достойное хранилище сертификатов и закрытых ключей, например, PKCS#12 используя openssl:

> openssl pkcs12 -export -in Certificate.crt -inkey Key_certificate.key -out cert_http.p12 -passout pass:<PASSWORD> -name http

Обязательным условием является добавление алиаса -name http и consoleproxy, в дальнейшем этот шаг позволит нам экспортировать из PKCS#12 в JCEKS и добавить необходимые VMware vCloud Director alias.

> openssl pkcs12 -export -in Certificate.crt -inkey Key_certificate.key -out cert_consoleproxy.p12 -passout pass:<PASSWORD> -name consoleproxy

После этого подключаемся к VMware vCloud Director и переносим сертификаты из хранилища PKCS#12 в JCEKS

Для alias http:

> keytool -importkeystore -srckeystore cert_http.p12 -srcstoretype PKCS12 -srcstorepass <PASSWORD> -deststorepass <PASSWORD> -destkeypass <PASSWORD> -deststoretype JCEKS -destkeystore certificates.keystore -alias http

Для alias consoleproxy:

> keytool -importkeystore -srckeystore cert_consoleproxy.p12 -srcstoretype PKCS12 -srcstorepass <PASSWORD> -deststorepass <PASSWORD> -destkeypass <PASSWORD> -deststoretype JCEKS -destkeystore certificates.keystore -alias http

Корректность переноса из одного хранилища в другое проверяем

> keytool -keystore certificates.ks -storetype JCEKS -storepass <PASSWORD> - list