linux:openssl:generar_ca_y_certificado_autofirmado
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
linux:openssl:generar_ca_y_certificado_autofirmado [2022/02/11 11:36] – external edit 127.0.0.1 | linux:openssl:generar_ca_y_certificado_autofirmado [2023/08/31 15:42] (current) – dodger | ||
---|---|---|---|
Line 8: | Line 8: | ||
Para generar certificados autofirmados para Apache (o cualquier otro programa que use openssl): | Para generar certificados autofirmados para Apache (o cualquier otro programa que use openssl): | ||
- | < | + | < |
cd / | cd / | ||
mkdir CA | mkdir CA | ||
Line 16: | Line 16: | ||
En este punto pedirá un password **obligatorio** para generar la key. Será necesario recordarlo para el futuro y es recomendable incluirlo en el keepass por si acaso en el futuro alguien lo necesita. | En este punto pedirá un password **obligatorio** para generar la key. Será necesario recordarlo para el futuro y es recomendable incluirlo en el keepass por si acaso en el futuro alguien lo necesita. | ||
- | < | + | < |
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt | openssl req -new -x509 -days 3650 -key ca.key -out ca.crt | ||
- | openssl genrsa -out `hostname`.key 2048 | + | openssl genrsa -out $(hostname).key 2048 |
- | openssl req -new -key `hostname`.key -out `hostname`.csr | + | openssl req -new -key $(hostname).key -out $(hostname).csr |
- | openssl ca -keyfile ca.key -cert ca.crt -out `hostname`.crt -infiles | + | openssl ca -keyfile ca.key -cert ca.crt -out $(hostname).crt -infiles |
</ | </ | ||
Siempre que nos pida un password, será el del key, **menos** cuando dice **"A challenge password" | Siempre que nos pida un password, será el del key, **menos** cuando dice **"A challenge password" | ||
Line 27: | Line 27: | ||
Luego creamos los directorios: | Luego creamos los directorios: | ||
- | < | + | < |
mkdir ../ssl.crt/ ../ssl.csr/ ../ssl.key/ | mkdir ../ssl.crt/ ../ssl.csr/ ../ssl.key/ | ||
- | mv `hostname`.crt ../ | + | mv $(hostname).crt ../ |
- | mv `hostname`.csr ../ | + | mv $(hostname).csr ../ |
- | mv `hostname`.key ../ssl.key/ | + | mv $(hostname).key ../ssl.key/ |
</ | </ | ||
+ | |||
+ | ===== Generating DHPARAMS ===== | ||
+ | <code bash> | ||
+ | openssl dhparam -dsaparam -out / | ||
+ | </ | ||
+ | [[https:// | ||
====== Troubleshoot ====== | ====== Troubleshoot ====== | ||
===== Errores con el demoCA o index.txt ===== | ===== Errores con el demoCA o index.txt ===== | ||
+ | |||
+ | ==== quick fix ==== | ||
+ | |||
+ | <code bash> | ||
+ | export SSL_CONFIG="/ | ||
+ | export SSL_CAPATH="/ | ||
+ | |||
+ | sed -i " | ||
+ | |||
+ | mkdir -p ${SSL_CAPATH}/ | ||
+ | touch ${SSL_CAPATH}/ | ||
+ | echo " | ||
+ | </ | ||
+ | |||
+ | ==== long explanation ==== | ||
+ | |||
En determinadas ocasiones no se generan los directorios/ | En determinadas ocasiones no se generan los directorios/ | ||
- | < | + | < |
Using configuration from / | Using configuration from / | ||
Enter pass phrase for ca.key: | Enter pass phrase for ca.key: | ||
Line 46: | Line 68: | ||
</ | </ | ||
o | o | ||
- | < | + | < |
Using configuration from / | Using configuration from / | ||
Enter pass phrase for ca.key: | Enter pass phrase for ca.key: | ||
Line 57: | Line 79: | ||
Hay que editar el fichero de configuración del openssl, en este caso: | Hay que editar el fichero de configuración del openssl, en este caso: | ||
- | < | + | < |
- | vi /etc/pki/tls/ | + | vim /etc/ssl/ |
</ | </ | ||
Y cambiar el directorio por defecto, lo habitual es ponerlo en el directorio donde está el **" | Y cambiar el directorio por defecto, lo habitual es ponerlo en el directorio donde está el **" | ||
- | < | + | < |
[[|CA_default ]] | [[|CA_default ]] | ||
Line 83: | Line 105: | ||
Si **database** y **serial** no existen, **HAY QUE CREARLOS**, se pueden usar los siguientes comandos: | Si **database** y **serial** no existen, **HAY QUE CREARLOS**, se pueden usar los siguientes comandos: | ||
- | < | + | < |
mkdir -p / | mkdir -p / | ||
touch / | touch / | ||
Line 94: | Line 116: | ||
===== The organizationName field needed to be the same in the ===== | ===== The organizationName field needed to be the same in the ===== | ||
Añadir: | Añadir: | ||
- | < | + | < |
-policy policy_anything | -policy policy_anything | ||
</ | </ | ||
A la linea de ejecución en la generación del crt: | A la linea de ejecución en la generación del crt: | ||
- | < | + | < |
openssl ca -policy policy_anything -keyfile ca.key -cert ca.crt -out DOMINIO.COM.crt -infiles DOMINIO.COM.csr | openssl ca -policy policy_anything -keyfile ca.key -cert ca.crt -out DOMINIO.COM.crt -infiles DOMINIO.COM.csr | ||
</ | </ | ||
linux/openssl/generar_ca_y_certificado_autofirmado.1644579408.txt.gz · Last modified: 2022/02/11 11:36 by 127.0.0.1