Acá tenemos instrucciones relacionadas con OpenSSL que fuimos aprendiendo con el tiempo.
Algunos machetes hay en http://www.madboa.com/geek/openssl/ (muy completo) y en http://support.citrix.com/article/CTX106631 (cómo convertir de un formato a otro)
Instrucciones para crear una Certification Authority que nos sirva para firmar nuestros propios certificados.
Una vez que creamos nuestra CA, podemos querer instalar el certificado de la propia CA en los clientes finales (las PCs que se conectarán a nuestros servers), para que los navegadores y otros programas que se conecten a nuestros servers no se quejen de que el certificado es inválido porque no reconocen a la CA que lo emitió.
- Instrucciones para crear un certificado digital:
El cliente (el dueño del server) debe crear una clave para el servidor y un pedido de firma de certificado.
Alternativamente puede hacer lo mismo en dos pasos (esto lo dejo por si, por ejemplo, queremos reusar la clave de servidor y sólo pedir el certificado).
La autoridad de certificación (por ejemplo la que creamos nosotros mismos) debe generar el certificado firmando el pedido del paso anterior
Una vez que el cliente obtiene el certificado puede instalarlo junto con la clave para poder usarlo en un server.
Para ver el fingerprint de un certificado:
export CERTFILE="mycert.crt"
# formato sha1 (default):
openssl x509 -noout -in ${CERTFILE} -fingerprint -sha1
# formato md5
openssl x509 -noout -in ${CERTFILE} -fingerprint -md5