Nome alternativo do assunto não adicionado ao certificado

1

Estou tentando emitir um novo certificado usando o campo attribues adicional dentro do Cliente de Registro na Web do Windows CertSrv.

Eu adicionei o CSR, escolhi o modelo e inseri isso no campo de atributos:

SAN:dns=HOSTNAME&dns=HOSTNAME.DOMAIN.COM&ipaddress=IPADRESS

A solicitação foi bem-sucedida, mas quando eu verifico o certificado assinado, nenhum atributo "Nomes alternativos" é adicionado a ele. Estou esquecendo de algo? Talvez um problema com o modelo? (usou uma cópia padrão do modelo do servidor Web do nível Win 2003 com algumas configurações personalizadas).

/ edit Também tentei usar

certreq -submit -attrib "CertificateTemplate:MYTEMPLATE" <Cert Request.req> -attrib "SAN:dns=HOSTNAME&dns=HOSTNAME2&ipaddress=IPADDRESS"

resultando no mesmo problema: o certificado é gerado, mas sem nenhum atributo SAN.

/ edit2 Também configurei a CA para emitir certificados SAN usando

certutil -setreg policy\EditFlags +EDITF_ATTRIBUTESUBJECTALTNAME2

e reiniciando o serviço da CA. Ainda assim: sem SANs.

Por favor, note: usando req. arquivos e OpenSSL para gerar o CSR eu sou capaz de gerar certifcates usando o CA que têm algumas SANs incluídas. No entanto, esta opção não é válida na minha situação atual, pois estou recebendo o CSR de um aplicativo e não consigo gerar manualmente um para o aplicativo.

/ edit3 Tentei usar o certificado de servidor da Web padrão SEM nenhuma alteração e, de repente, funcionou. Então agora a questão é: quais são os requisitos de modelo para ativar a SAN?

    
por masi 07.02.2013 / 14:22

1 resposta

4

Eu sei que isso é velho, mas eu mesmo descobri isso e pensei que poderia ajudar outra pessoa. Eu também não consegui fazer com que a CA adicione a SAN por meio da página da Web ou do formato certreq ... -attrib "SAN:DNS=<FQDN>[&DNS=<FQND2>...]..." . O atributo SAN foi ignorado, mesmo que o certificado tenha sido emitido.

No entanto, descobri que funciona com este formato: certreq -attrib "CertificateTemplate:WebServer\nSAN:DNS=<Name1>[&DNS=<name2>...][&IPAddress=<IP1>...]" <csr filename> <cer filename>

Por exemplo, se você tiver um arquivo de solicitação de certificado chamado HP_VC.csr e quiser que os nomes alternativos do assunto sejam vc1, vc2, vc1.dominio.com, vc2.domínio.com, 192.168.1.1 e 192.168.1.2 o comando seria:

certreq -attrib "CertificateTemplate:WebServer\nSAN:DNS=vc1&DNS=vc2&DNS=vc1.domain.com&DNS=vc2.domain.com&IPAddress=192.168.1.1&IPAddress=192.168.1.2" HP_VC.csr HP_VC.cer

O certificado em HP_VC.cer conterá o atributo SAN.

Estou usando isso para os módulos HP Virtual Connect (VC), Onboard Administrators (OA) e iLOs. Deve funcionar para qualquer situação genérica que precise de um certificado com uma SAN.

    
por 30.07.2013 / 18:43