Ir al contenido principal

Generar un CSR (Certificate Signing Request - Solicitud de Firma de Certificado) en Centos 6.4 con Openssl

Las empresas que firman certificados digitales (CA - Certificate Authority) generalmente solicitan un CSR o un archivo que contiene la solicitud de firma de certificado. Esto archivo se genera a través de WHM (Web Host Manager) o CPANEL, sin embargo para quienes administran servidores a la antigua es decir sin herramientas gráficas como WHM o CPANEL, este certificado se debe generar utilizando OpenSSL. El proceso es muy sencillo y se hace con el siguiente comando:

#openssl req -new -newkey rsa:2048 -nodes -keyout dominio.key -out dominio.csr

El simbolo númeral hace referencia al usuario root en una terminal de comandos. Se recomienda al momento de generar el certificado utilizar el usuario root.

Las opciones importantes son RSA que hace referencia al sistema criptográfico de llave pública, se recomienda 2048 bits. Keyout nos genera la llave privada con extensión .key. Finalmente la opción -out crea el archivo .csr lo que se envía a la CA. Los nombres de los archivos .key y .csr no necesariamente deben ser el dominio de la organización, deben atender al estándar de documentación de cada organización.

Al ejecutar el comando se solicitan varios campos, que hacen parte de la información requerida para un certificado. Los más importantes son:

************Tomado de la ejecución real en Centos 6.4*******************

Country Name (2 letter code) [XX]: Código del páis
State or Province Name (full name) []: Estado o provincia
Locality Name (eg, city) [Default City]:  Ciudad
Organization Name (eg, company) [Default Company Ltd]: Compañía
Organizational Unit Name (eg, section) []: Dependencia u oficina encargada
Common Name (eg, your name or your server's hostname) []: dominio es muy importante y corresponde al nombre del servidor ej. (www.example.com o *.example.com) el asterisco en caso que sea un certificado tipo wildcard.
Email Address []: correo de contacto

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: 
An optional company name []:
*********************************************************************************

El archivo .csr a enviar a la CA tiene un contenido similar al que se muestra a continuación:

-----BEGIN CERTIFICATE REQUEST-----
MIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxDTALBgNVBAgMBFV0YWgxDzANBgNV
BAcMBkxpbmRvbjEWMBQGA1UECgwNRGlnaUNlcnQgSW5jLjERMA8GA1UECwwIRGln
aUNlcnQxHTAbBgNVBAMMFGV4YW1wbGUuZGlnaWNlcnQuY29tMIIBIjANBgkqhkiG
9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8+To7d+2kPWeBv/orU3LVbJwDrSQbeKamCmo
wp5bqDxIwV20zqRb7APUOKYoVEFFOEQs6T6gImnIolhbiH6m4zgZ/CPvWBOkZc+c
1Po2EmvBz+AD5sBdT5kzGQA6NbWyZGldxRthNLOs1efOhdnWFuhI162qmcflgpiI
WDuwq4C9f+YkeJhNn9dF5+owm8cOQmDrV8NNdiTqin8q3qYAHHJRW28glJUCZkTZ
wIaSR6crBQ8TbYNE0dc+Caa3DOIkz1EOsHWzTx+n0zKfqcbgXi4DJx+C1bjptYPR
BPZL8DAeWuA8ebudVT44yEp82G96/Ggcf7F33xMxe0yc+Xa6owIDAQABoAAwDQYJ
KoZIhvcNAQEFBQADggEBAB0kcrFccSmFDmxox0Ne01UIqSsDqHgL+XmHTXJwre6D
hJSZwbvEtOK0G3+dr4Fs11WuUNt5qcLsx5a8uk4G6AKHMzuhLsJ7XZjgmQXGECpY
Q4mC3yT3ZoCGpIXbw+iP3lmEEXgaQL0Tx5LFl/okKbKYwIqNiyKWOMj7ZR/wxWg/
ZDGRs55xuoeLDJ/ZRFf9bI+IaCUd1YrfYcHIl3G87Av+r49YVwqRDT0VDV7uLgqn
29XI1PpVUNCPQGn9p/eX6Qo7vpDaPybRtA2R7XLKjQaF9oXWeCUqy1hvJac9QFO2
97Ob1alpHPoZ7mWiEuJwjBPii6a9M9G30nUo39lBi1w=
-----END CERTIFICATE REQUEST-----

Comentarios

Entradas más populares de este blog

Creando relaciones de confianza entre maquinas Linux por SSH

He buscado muchas veces sobre este mismo tema asi que hoy he decidido documentarlo para su posterior uso. De manera general una relación de confianza entre maquinas se establece con el objetivo de evitar la digitación de contraseña para acceso por terminal (ssh). Es decir que yo pueda acceder a una maquina y esta revise entre sus known_host (lista de equipos conocidos) y me permita acceso. Otra funcion importante es que se pueda realizar sincronizaciones mediante rsync y programadas por Cron evitando la intervención del usuario. Ahora si el procedimiento tecnico. Este proceso lo realize entre dos maquinas linux con sistemas operativos Ubuntu y Red Hat respectivamente. En el caso de la maquina con Ubuntu, escogi el usuario sobre el cual deseo crear la confianza. Este procedimiento hay que hacerlo con cada usuario en el cual desea evitar digitar la contraseña puesto que son entidades independientes con privilegios distintos dentro del S.O. usuario@ubuntu$ ssh-keygen - t rsa --

Configuración de una agregación de puertos (Link Aggregation) entre un switch HP 5500-48G EI y un DELL 6348

Las agregaciones de puertos nos permiten aumentar el ancho de banda de la conexión entre dos dispositivos, generalmente switches. En este caso puntual haré referencia a la configuración de una agregación de puertos entre un switch HP 5500-48G EI y un DELL 6348.  Luego de verificar con el soporte técnico (DELL), se encontró que la agregación dinámica no funciona correctamente por lo tanto fue necesario recurrir a la agregación estática. La agregación estática tiene como mayor diferencia que no utiliza el protocolo LACP ( Link Aggregation Control Protocol ). Sin más detalles la configuración en ambos switches: Configuración del switch DELL - Agregación de 4 puertos Giga para un ancho de banda total de 4Gbps Se crea un port-channel o un puerto lógico: interface port-channel 4 switchport mode trunk Cada una de las interfaces participantes de la agregación se configura con el número del grupo del port-channel: interface Gi1/0/33 channel-group 4 mode on swi

Ejercicio Condicionales usando Macros en Excel

La toma de decisiones es determinante en la secuencia de ejecución de una macro. Las herramientas que proporciona VBA para la toma de decisiones descansan en los condicionales. Un ejemplo de estructuras condicionales en Excel es la función "SI", la cual permite hacer una prueba lógica y tomar generar dos resultados posibles dependiendo si la prueba lógica es verdadera o falsa. "SI su estatura en metros es superior a 1.5 mts, puede ingresar a la montaña rusa, de lo contrario NO" . En la afirmación anterior solo aquellos niños con una estatura superior a 1.5 tendrán acceso al juego mecánico, los demás niños simplemente estarán excluidos del juego hasta que cumplan el requisito de forma imperativa. El lenguaje de macros permite 3 estructuras condicionales distintas: a) IIF(prueba_lógica, verdadero, falso). Su resultado obligatoriamente debe asignarse a una variable variable = IFF(3>1, "Verdadero", "Falso"). El tipo de variable p