Ler os campos públicos dun certificado nunca require amosar a chave privada que lle corresponde, e as ferramentas para facelo veñen con calquera sistema que remate unha VPN. O risco está un paso antes: o ficheiro que lle entregaron pode non ser un certificado en absoluto. Un certificado PEM, un blob DER, un paquete PKCS#12 e un perfil OpenVPN poden chegar co mesmo nome e conter material moi distinto, así que identifique o contedor antes de escoller un comando.

Tres feitos deciden que comando é seguro: o que contén o ficheiro, o que necesita ler del e quen verá a saída. Falle nun só deles e a propia inspección convértese no incidente.

Cal dos tres ficheiros lle entregaron

Un certificado PEM é texto con marcadores BEGIN e END visibles, un ficheiro DER é binario que precisa unha opción de formato de entrada, e un paquete é un contedor que pode gardar unha chave xunto ao certificado. file server.crt separa texto de binario nun segundo, e unha ollada á primeira liña separa un certificado espido dun perfil que incorpora un. Adiviñar aquí é o que converte unha inspección nun incidente.

Se o ficheiro é un perfil e non un certificado, tráteo como unha credencial ata que se demostre o contrario. Esa suposición non custa nada e evita o erro máis común de toda esta tarefa.

Ler os campos públicos dun certificado PEM

Para un certificado que ten autorización para inspeccionar, o subcomando x509 con -noout imprime os campos que selecciona e nada máis. Suprimir o corpo é o que mantén a saída en metadatos, o que tamén a fai segura para pegar nun tícket. Os selectores de abaixo son os públicos, e a documentación de openssl x509 lista os demais.

openssl x509 -in server.crt -noout -subject -issuer -dates -fingerprint -sha256

Nun certificado de proba xerado localmente ese comando imprime unha liña subject e issuer, o par notBefore e notAfter, e unha única pegada SHA-256. Eses campos identifican o obxecto; non establecen unha ruta de confianza válida, que é unha tarefa de verificación aparte co seu propio comando e a súa propia resposta. Un ficheiro de cadea tamén pode imprimir só o primeiro certificado a menos que recorra o ficheiro vostede mesmo. Comparar dous ficheiros deste xeito custa un comando e decide cal dos dous presenta realmente o par.

Paquetes que levan unha chave xunto ao certificado

Un ficheiro .p12 ou .pfx pode levar unha chave privada, e o comando de análise imprímea a menos que suprima esa parte da saída. Con -nokeys o mesmo comando aínda informa da estrutura do contedor, incluída unha bolsa de chave envolta, sen emitir material de chave ningún; quite esa opción e aparecerá un bloque de chave no seu terminal e no historial da súa shell.

openssl pkcs12 -in bundle.p12 -nokeys -info -passin env:P12PASS

Un perfil OpenVPN incorpora o mesmo material como texto, así que a fronteira é visible se sabe onde mirar. O material público está entre BEGIN CERTIFICATE e END CERTIFICATE, mentres que todo o que está entre BEGIN PRIVATE KEY e a súa liña END correspondente é a chave e non debe saír do host. Copiar o perfil enteiro publica ambos.

Obter o valor de referencia noutro lugar

Unha pegada lida da conexión que intenta verificar non proba nada, porque a forneceu a parte da que desconfía. Non é un argumento contra as pegadas; é un argumento sobre a procedencia. Compare o valor cun obtido por unha canle na que o par non pode escribir, como o certificado publicado nun repositorio interno ou o hash impreso nun rexistro de cambio asinado.

Onde un almacén de confianza realiza a validación, déixeo facer, e lea o erro que produce en vez de substituír a súa propia comparación. A distinción que importa é quen forneceu a referencia, non que función de hash se usou.

Compartir o resultado, e que facer tras un descoido

Envíe o erro de validación exacto, as datas relevantes e só os detalles de identidade que o destinatario necesita. Os nomes de host internos e os identificadores de conta seguen sendo sensibles aínda que non haxa chave, e un servizo de pegado público é o destino incorrecto para calquera deles. Pegue no tícket, non nun buffer que comparte outra persoa.

Se apareceu material de chave na pantalla ou nun ficheiro, tráteo como comprometido e róteo en vez de esperar que ninguén mirase. Despois anote o ficheiro inspeccionado, o comando usado e onde foi a saída, porque ese rexistro é o que converte un susto nun procedemento. A rotación é barata fronte ao custo de supoñer que ninguén gardou unha captura de pantalla, e o mesmo rexistro indica ao seguinte enxeñeiro que ficheiros se tocaron. Faga as dúas cousas antes de pechar o tícket.

Artigos relacionados