Método para hacer el certificado X.509 usando la herramienta OpenSSL y resumen de sus precauciones

  
Primero, el paso es taquigráfico //Genere el certificado de clave pública y el archivo de clave privada de la AC de nivel superior, válido por 10 años (RSA 1024bits, predeterminado) openssl req -new -x509 -days 3650 -keyout CARoot1024.key -out CARoot1024.crt //Eliminar la contraseña de protección para el archivo de clave privada de la CA de nivel superior openssl rsa -in CARoot1024.key -out CARoot1024.key //Generar el certificado de la clave pública de la CA de nivel superior y el archivo de clave privada , válido por 15 años (RSA 2048bits, especificado) openssl req -newkey rsa: 2048 -x509 -days 5480 -keyout CARoot2048.key -out CARoot2048.crt //Eliminar la contraseña de protección openssl rsa -in CARoot2048 para el archivo de clave privada superior de CA. Key -out CARoot2048.key //Generar archivo de clave privada para certificado de aplicación /certificado intermedio openssl genrsa -out app.key 2048 //Generar archivo csr (archivo de solicitud de certificado) para certificado de aplicación /certificado intermedio según el archivo de clave privada openssl req - New -key app.key -out app.csr //Firme el archivo csr con el archivo de clave pública y privada de CA para generar el certificado de la aplicación, válido para 5 Año openssl ca -in app.csr -out app.crt -cert CARoot1024.crt -keyfile CARoot1024.key -days 1826 -policy policy_anything //Firme el archivo csr con el archivo de clave pública y privada de CA para generar un certificado intermedio, válido por 5 años. Ca -extensions v3_ca -in app.csr -out app.crt -cert CARoot1024.crt -keyfile CARoot1024.key -days 1826 -policy policy_anything Los anteriores son todos los comandos que se utilizarán para generar el certificado raíz y aplicar el certificado, de acuerdo con el objetivo de compilación Diferentes, divididos en tres grupos. Los primeros dos grupos se utilizan para generar una AC de alto nivel autofirmada (la diferencia es solo en la longitud de la clave). En las aplicaciones reales, solo se puede seleccionar un grupo según los requisitos. El último conjunto se utiliza para generar certificados no autofirmados, incluidos certificados intermedios y de aplicación. El llamado certificado intermedio es una sub-CA con la autoridad para continuar emitiendo certificados subordinados. El certificado de aplicación mencionado en este artículo se refiere específicamente a un certificado que no se puede usar para seguir emitiendo certificados subordinados y solo se puede usar para probar la identidad individual. Cuando la CA de nivel superior emite ambos, es solo la diferencia entre la opción -extensions v3_ca, que le da al certificado emitido el derecho de continuar emitiendo el sub-certificado. Segundo, los pasos detallados 2.1 Generar un certificado raíz autofirmado (es decir, CA de nivel superior) Ejemplo típico: openssl req -new-x509 -days5480 -keyoutCA.key -outCA.crt [1] Opciones de comando e interpretación de parámetros En el ejemplo, cada opción (y El significado del parámetro) es el siguiente: req Use el subcomando req de openssl -new para generar una nueva solicitud de certificado -x509 generar un certificado autofirmado-días 5480 El certificado autofirmado es válido por 5480 días (15 años) [solo válido cuando se usa la opción -x509 Key -keyout CA.key El nombre del archivo de clave privada se especifica como CA.key. Si el archivo de clave privada existe antes de la operación y el nombre original no es CA.key, el nombre se cambia a CA.key; de lo contrario, el archivo de clave privada recién generado se nombra CA.key] -out CA.crt Especifica la salida de la información generada por el certificado autofirmado en el archivo, y el nombre del archivo es CA.crt [recomendado para no omitirse] Entre ellos, las opciones -days, -keyout se pueden omitir, si se omite, se usa el valor predeterminado. Valor, el período predeterminado es de 30 días [especificado por la inicialización interna de la variable en el programa, independientemente del archivo de configuración], el valor predeterminado del nombre del archivo de clave privada se especifica mediante la entrada correspondiente en el archivo de configuración openssl.cnf, no se modifica Como privkey.pem. La opción -out, si se omite, openssl no genera la solicitud de certificado /certificado generado como un archivo, sino que imprime la información del archivo directamente en la pantalla de forma predeterminada, que en la mayoría de los casos no cumple con nuestros requisitos. ¡Así que es mejor no omitir esta opción! El subcomando req puede usar la opción -key para especificar un archivo de clave privada existente para la solicitud de certificado. Sin embargo, en el caso del ejemplo, aunque se usan las opciones -new y -x509, pero no se usa la opción -key, el subcomando req genera automáticamente una clave privada RSA para el certificado autofirmado, el valor predeterminado para la longitud de la clave. El valor lo especifica la entrada correspondiente en el archivo de configuración openssl.cnf, que es de 1024 bits si no se ha modificado. [2] Acerca de la designación de la contraseña de cifrado del archivo de clave privada Durante la operación, se le pedirá que ingrese la contraseña de cifrado de la siguiente manera: escriba la nueva clave privada en 'CA.key' Ingrese la contraseña PEM: Verificando - Ingrese la contraseña PEM: esta contraseña se usa para cifrar la clave privada La información de la clave privada en el archivo CA.key, si no desea ingresar la contraseña cifrada durante la ejecución, puede usar la opción -passout para especificar directamente en el comando. La opción -passout es de la forma: -passoutarg donde arg es el argumento de la opción -passout y tiene una variedad de formatos. Consulte la "Documentación oficial de OpenSSL" para obtener una introducción a " PASS_PHRASE_ARGUMENTS ". Los comandos en el ejemplo típico de esta sección se pueden modificar con la opción -passout de la siguiente manera: openssl req -new-x509 -days5480 -keyoutCA.key -out CA.crt-passoutpass: 1314 Dado que el registro del comando histórico se puede ver usando el comando histórico en sistemas Linux, Por lo tanto, por razones de seguridad, generalmente no es necesario especificar la contraseña directamente en el comando. Esto es consistente con la razón por la que el inicio de sesión de mysql no especifica la contraseña de inicio de sesión directamente en la opción -p. [3] Acerca del campo DN en el archivo de solicitud de certificado Durante la operación, se le solicitará que ingrese algunos campos de Nombre distinguido, es decir, el campo de información de nombre de identificación del certificado, denominado campo DN, como se indica a continuación: Se le solicitará que ingrese información que se incorporará a Allí puede tener algunos campos, pero puede dejar algunos en blanco. Para algunos campos habrá un valor predeterminado, si ingresa '.', ----- Nombre del país (código de 2 letras) [GB]: Nombre del estado o provincia de los Estados Unidos (nombre completo) [Berkshire]: Nombre de la localidad de California (por ejemplo, ciudad) [Newbury]: Nombre de la organización (p. ej., compañía) [My Company Ltd]: Nombre de la unidad organizativa de GeoAuth Inc.
(p. ej., sección) []: Nombre común (p. ej., su nombre o el nombre de host de su servidor) []: Autenticación Dirección de correo electrónico de la raíz global [] :. La mayoría de estos campos de DN tienen valores predeterminados, y los valores predeterminados están especificados por las entradas relevantes en el archivo de configuración openssl.cnf. Para usar el valor predeterminado en un campo de DN, no necesita ingresar ninguna información, simplemente haga clic en la tecla " Ingresar " si el valor de un determinado campo de DN se va a establecer en nulo, ingrese un '.' Y haga clic en " Ingresar " clave Estos campos de DN se utilizan principalmente para identificar la identidad del titular del certificado. La siguiente tabla contiene abreviaturas, descripciones y algunas instrucciones para completarlas. [Esta sección se refiere a la entrada SSL de la enciclopedia interactiva] Nombre del campo DN Abreviatura Descripción Cumplimente los requisitos País Nombre C País del titular del certificado Requisito del código del país, con 2 letras Estado o Provincia Nombre ST Certificado Estado del titular o provincia Puede completar el nombre completo, puede omitir el valor predeterminado. Localidad Nombre L La ciudad donde se ubica el titular del certificado Se puede omitir. Nombre de la organización O La organización o empresa a la que pertenece el titular del certificado. Es mejor completar el nombre de la unidad organizativa OU. Se puede omitir el titular del titular del certificado. Nombre común CN Nombre común del titular del certificado Obligatorio. Para los certificados no aplicados, debe ser único hasta cierto punto, para los certificados de aplicación, el nombre de dominio del servidor o el nombre de dominio de estilo comodín generalmente se completan. Dirección de correo electrónico Se puede omitir el buzón de comunicación del titular del certificado. Explicación del campo Tabla 2-1 DN
Copyright © Conocimiento de Windows All Rights Reserved