Validação de certificado ignorando o nome comum e verificando apenas as alternativas?

1

Eu tenho um certificado que tem CN=*.some.domain e nomes alternativos DNS:*.sub1.some.domain , DNS:*.sub2.some.domain (mais 2 como este).

Eu forneci o certificado para um ingresso nginx no kubernetes, que serve host.some.domain . E isso está me dando erro:

controller.go:1041] unexpected error validating SSL certificate default/tls-cert for host dwarf30.epiqa.certicon.cz. Reason: x509: certificate is valid for *.sub1.some.domain, *.sub2.some.domain, not host.some.domain

A mensagem não menciona o nome comum, apenas lista os suplentes.

É meu mal entendido como o CN e os Alternates interagem, ou é um problema no controlador de ingresso nginx (note: o leme insiste em instalar a versão 0.13.0 do container)?

    
por Jan Hudec 04.10.2018 / 09:10

1 resposta

5

Já o RFC 2818 , que padroniza o HTTPS (HTTP sobre TLS) a partir de 2000, diz claramente:

If a subjectAltName extension of type dNSName is present, that MUST be used as the identity.

Como você tem nomes DNS como Nomes Alternativos de Assunto, o CN será ignorado. Observe que o uso de CN em vez de Nomes Alternativos de Assunto está obsoleto por anos e alguns navegadores (especificamente o Chrome) só examinarão Nomes Alternativos de Assunto e falharão se não existir SAN mesmo se o CN puder corresponder ao domínio.

    
por 04.10.2018 / 10:52