Introduction
Este documento descreve uma maneira de automatizar os vários comandos usados com certificados CVP. Isso também fornece opções para tornar o certificado compatível com RFC.
Prerequisites
Requirements
A Cisco recomenda que você tenha conhecimento destes tópicos:
- Cisco Voice Portal (CVP)
- ferramenta de chave Java
- Certificados de infraestrutura de chave pública (PKI)
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software:
- Cisco Voice Portal (CVP) 12.5(1)
- Unified Contact Center Enterprise (UCCE)
- Packaged Contact Center Enterprise (PCCE)
- Portal de gerenciamento de operação e administração (OAMP)
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. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Configurar
Explicação do comando
Esses comandos foram desenvolvidos para automatizar amplamente os comandos usados no processo de certificados de gerenciamento com CVP. Eles não são oficialmente suportados, mas são testados.
Exemplo de saída security.properties:
Security.keystorePW = xt_PXM-*4Z!!ZQID7YX*6K(3iii
A parte desses comandos que os torna aptos a serem automatizados é a primeira parte da linha. Esta seção mostra a linha e depois explica como ela funciona.
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO <command>
Partes de comando:
Seção de comando |
Explicação |
PARA /f |
Este é o comando DOS FOR com um switch usado para processar o conteúdo dos arquivos para correspondências específicas. |
"tokens=3" |
Isso indica que precisamos do 3º token ou palavra. Com o arquivo exemplo security.properties mostrado nesta seção, os 3 tokens são: Token 1: Segurança.keystorePW Token 2: = Token 3: xt_PXM-*4Z!!ZQID7YX*6K(3iii |
% i |
Esta é a variável onde o valor do comando IN que corresponde ao parâmetro FOR é armazenado. |
IN ('mais %CVP_HOME%\conf\security.properties') |
Execute o comando "more %CVP_HOME%\conf\security.properties" e passe o conteúdo para o comando FOR. |
DO <comando> |
Execute o comando e passe o valor para %i. |
Os comandos mostrados neste documento leem a senha em security.properties e automatizam a entrada nos comandos keystore. Isso garante que o usuário final não precise digitar ou copiar/colar essa senha e elimina os erros que isso pode causar.
Comandos
O exemplo comanda todo o trabalho com um alias de arritário chamado cvp_certificate. Assegure-se de substituir o nome do alias conforme necessário.
Backup de alias
Esse comando não é normalmente usado, mas é útil para fazer um backup do certificado antigo e da chave privada.
O exemplo renomeia cvp_certificate para cvp_certificate_back.
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -changealias -alias cvp_certificate -destalias cvp_certificate_back
Exportar repositório de chaves
Esse comando exporta o armazenamento de chaves inteiro para um arquivo de texto. Isso permite que um usuário inspecione o conteúdo do armazenamento de chaves.
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -list -v > %CVP_HOME%\conf\security\cvp_keystore.txt
Excluir alias
Esse comando exclui o alias e o certificado atuais. Esse processo é irrevogável, é altamente recomendável fazer um backup do keystore.
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -delete -alias cvp_certificate
Criar novo certificado autoassinado
Esse comando cria um novo certificado autoassinado. Esse comando é necessário mesmo que você opte por ter o certificado assinado por uma autoridade de certificado (CA), pois isso cria a chave privada necessária para o certificado.
Para certificados RSA sem SAN (típico):
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -genkeypair -alias cvp_certificate -keysize 2048 -keyalg RSA -validity 1825
Para certificados RSA com SAN:
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -genkeypair -alias cvp_certificate -keysize 2048 -keyalg RSA -validity 1825 -ext san=dns:mycvp.mydomain.com,dns:localhost
Nome alternativo do assunto
O parâmetro -ext permite que um usuário faça extensões específicas. O exemplo mostrado adiciona um nome alternativo de assunto (SAN) com o nome de domínio totalmente qualificado (FQDN) do servidor, bem como o localhost. Campos SAN adicionais podem ser adicionados como valores separados por vírgulas.
Os tipos de SAN válidos são:
ip:192.168.0.1
dns:myserver.mydomain.com
email:name@mydomain.com
Cada um desses comandos exige que sejam fornecidos 6 valores. Na ordem em que estão, Nome Comum, Unidade Organizacional, Organização, Cidade, Estado e País. Copie as respostas e atualize-as para atender aos seus requisitos específicos. Você pode colá-los no prompt de comando quando necessário.
myserver.mydomain.com
My Organizational Unit
My Company
City
My State
US
Exportar certificado autoassinado
Este comando exporta o certificado autoassinado. Isso permite que o certificado seja importado para outros componentes, como o OAMP ou o PCCE Administration Data Server.
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -export -alias cvp_certificate -file %CVP_HOME%\conf\security\cvp.crt
Gerar solicitação de assinatura de certificado (CSR)
Este comando cria um CSR para que você possa ter uma CA assinando a solicitação.Para certificados sem SAN:
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -certreq -alias cvp_certificate -file %CVP_HOME%\conf\security\cvp.csr
Para certificados com SAN:
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -certreq -alias cvp_certificate -file %CVP_HOME%\conf\security\cvp.csr -ext san=dns:mycvp.mydomain.com,dns:localhost
Note: Você deve incluir a extensão SAN na solicitação CSR para que o certificado contenha uma SAN.
Importar certificados assinados da AC
Esses comandos importam os certificados CA raiz, intermediário e servidor por sua vez.
Copie os certificados para o %CVP_HOME%\conf\security\ directory.
Certifique-se de atualizar o nome do alias e o nome do certificado conforme necessário.
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -import -v -trustcacerts -alias myrootca -file %CVP_HOME%\conf\security\root.crt
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -import -v -trustcacerts -alias myintermediate -file %CVP_HOME%\conf\security\intermediate.crt
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -import -v -trustcacerts -alias cvp_certificate -file %CVP_HOME%\conf\security\cvp.crt
Verificar
Não há etapas para verificar este procedimento.
Troubleshoot
Não há etapas para solucionar esse procedimento.