howtos/Generar certificados autofi...

34 lines
2.2 KiB
Plaintext
Raw Normal View History

2023-07-12 13:41:35 +02:00
Generar certificados autofirmados con OpenSSL
Crear un certificado raíz auto-firmado
Para crear un certificado primero hay que generar una clave privada, luego hay que añadir los datos personales y finalmente hay que firmarlo. Utilizar los siguientes comandos para generar un certificado auto-firmado:
• Genera una clave privada de longitud 2048
openssl genrsa -out clave_raiz.pem 2048
• Generar un certificado auto-firmado a partir de la clave anterior. Cuando pregunte los datos personales del certificado, especificar en el nombre que es el certificado RAIZ.
openssl req -new -x509 -key clave_raiz.pem -out raiz.cer -days 730 config openssl.cfg
• Verificar el contenido del certificado. Comprobado que el subject y el issuer son iguales.
openssl x509 -in raiz.cer -text
Crear un certificado personal (CSR)
Para crear un certificado personal, debemos crear una clave privada, luego generar un Certificate Signing Request, y finalmente debemos conseguir la firma de una CA:
• Genera una clave privada de longitud 2048:
openssl genrsa -out mi_clave_privada.pem 2048
• Generar un certifícate signing request, utilizando ahora el nombre personal
openssl req -new -key mi_clave_privada.pem -out micert.csr config openssl.cfg
Firmar el certificado personal con el certificado raiz
Para obtener un certificado "valido" lo vamos a firmar con nuestro propio certificado raíz que hemos generando antes. No es una CA de reconocido prestigio, pero es la nuestra.
• Firmamos el CSR utilizando nuestra clave raíz:
openssl x509 -req -in micert.csr -CA raiz.cer -CAkey clave_raiz.pem -set_serial 12345 -days 365 -out micert.pem
• Verificamos el contenido del certificado. En este caso comprobad que el subject y el issuer son iguales:
openssl x509 -in micert.pem -text
Guardar el certificado personal en formato PKCS#12
Para guardar nuestro certificado personal de forma segura, debemos juntar la parte pública del certificado (micert.pem) con la clave privada (mi_clave_privada.pem) en un archivo seguro .p12 protegido por contraseña.
openssl pkcs12 -export -in micert.pem -inkey mi_clave_privada.pem -out micert.p12