Geekflare cuenta con el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliados comprando enlaces en este sitio.
Comparte en:

21 ejemplos de OpenSSL para ayudarle en el mundo real

solicitud de inicio de sesión de Unix
Escáner de seguridad de aplicaciones web Invicti – la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

Cree, administre y convierta certificados SSL con OpenSSL

Uno de los comandos más populares en SSL para Para crear, convertir, gestionan al Certificados SSL es OpenSSL.

Habrá muchas situaciones en las que tendrá que lidiar con OpenSSL de varias maneras, y aquí las he enumerado como una práctica hoja de trucos.

En este artículo, hablaré sobre los comandos OpenSSL de uso frecuente para ayudarlo en el mundo real.

Algunas de las abreviaturas relacionadas con los certificados.

  • SSL - Capa de conexión segura
  • CSR: solicitud de firma de certificado
  • TLS: seguridad de la capa de transporte
  • PEM - Correo con privacidad mejorada
  • DER - Reglas de codificación distinguidas
  • SHA - Algoritmo hash seguro
  • PKCS: estándares de criptografía de clave pública

Nota:: Curso de operación SSL / TLS sería útil si no está familiarizado con los términos.

Create a new Private Key and Certificate Signing Request

openssl req -out geekflare.csr -newkey rsa: 2048 -nodes -keyout geekflare.key

El comando anterior generará CSR y un archivo de clave RSA de 2048 bits. Si tiene la intención de utilizar este certificado en Apache o Nginx, debe enviar este archivo CSR a la autoridad emisora ​​del certificado, y ellos le darán un certificado firmado principalmente en der or pem formato que necesita configurar en APACHE or Nginx Servidor web.

Create a Self-Signed Certificate

openssl req -x509 -sha256 -nodes -newkey rsa: 2048 -keyout gfselfsigned.key -out gfcert.pem

El comando anterior generará un certificado autofirmado y un archivo de clave con RSA de 2048 bits. Yo tambien he incluido sha256 ya que se considera más seguro en este momento.

Consejo: de forma predeterminada, generará un certificado autofirmado válido solo por un mes, por lo que puede considerar definir el parámetro –days para extender la validez.

por ejemplo: Tener autofirmado válido por dos años.

openssl req -x509 -sha256 -nodes -days 730 -newkey rsa: 2048 -keyout gfselfsigned.key -out gfcert.pem

Verify CSR file

openssl req -noout -text -in geekflare.csr

La verificación es esencial para asegurarse de que envía CSR a la autoridad emisora ​​con los detalles requeridos.

Create RSA Private Key

openssl genrsa -out private.key 2048

Si solo necesita generar una clave privada RSA, puede usar el comando anterior. He incluido 2048 para un cifrado más fuerte.

Remove Passphrase from Key

openssl rsa -in certkey.key -out nopassphrase.key

Si está usando una frase de contraseña en el archivo de claves y usa Apache, entonces cada vez que inicie, debe ingresar la contraseña. Si le molesta ingresar una contraseña, entonces puede usar el openssl rsa -in geekflare.key -check anterior para eliminar la clave de la frase de contraseña de una clave existente.

Verify Private Key

openssl rsa -in certkey.key –verificar

Si duda de su archivo de claves, puede usar el comando anterior para verificar.

Verify Certificate File

openssl x509 -in certfile.pem -text –noout

Si desea validar los datos del certificado como CN, OU, etc., puede usar un comando anterior que le proporcionará los detalles del certificado.

Verify the Certificate Signer Authority

openssl x509 -in certfile.pem -noout -emisor -emisor_hash

La autoridad emisora ​​del certificado firma todos los certificados y en caso de que necesite verificarlos.

Check Hash Value of A Certificate

openssl x509 -noout -hash -in bestflare.pem

Convert DER to PEM format

openssl x509 –inform der –in sslcert.der –out sslcert.pem

Por lo general, la autoridad certificadora le dará un certificado SSL en formato .der, y si necesita usarlos en formato apache o .pem, el comando anterior lo ayudará.

Convert PEM to DER format

openssl x509 –outform der –in sslcert.pem –out sslcert.der

En caso de que necesite cambiar el formato .pem a .der

Convert Certificate and Private Key to PKCS#12 format

openssl pkcs12 –exportación –fuera sslcert.pfx –inkey key.pem –entrada sslcert.pem

Si necesita usar un certificado con la aplicación java o con cualquier otro que acepte solo el formato PKCS # 12, puede usar el comando anterior, que generará un único archivo pfx que contiene el certificado y la clave.

Consejo: también puede incluir un certificado en cadena pasando –chain como se muestra a continuación.

openssl pkcs12 –exportación –salida sslcert.pfx –inkey key.pem –entrada sslcert.pem -cadena cacert.pem

Create CSR using an existing private key

openssl req –certificado de salida.csr –clave existente.clave –nueva

Si no desea crear una nueva clave privada en lugar de usar una existente, puede utilizar el comando anterior.

Check contents of PKCS12 format cert

openssl pkcs12 –info –nodos –en cert.p12

PKCS12 es un formato binario, por lo que no podrá ver el contenido en el bloc de notas u otro editor. El comando anterior le ayudará a ver el contenido del archivo PKCS12.

Convert PKCS12 format to PEM certificate

openssl pkcs12 –in cert.p12 –out cert.pem

Si desea utilizar el formato pkcs12 existente con Apache o simplemente en formato pem, esto será útil.

Test SSL certificate of particular URL

openssl s_client -conecta tuurl.com:443 –showcerts

Utilizo esto con bastante frecuencia para validar el certificado SSL de una URL en particular desde el servidor. Esto es muy útil para validar el protocolo, el cifrado y los detalles del certificado.

Find out OpenSSL version

versión openssl

Si usted es responsable de garantizar que OpenSSL sea seguro, probablemente una de las primeras cosas que debe hacer es verificar la versión.

Check PEM File Certificate Expiration Date

openssl x509 -noout -in certificado.pem -fechas

Útil si planeas poner algún seguimiento para comprobar la validez. Le mostrará una fecha en la sintaxis notBefore y notAfter. notAfter es uno que tendrá que verificar para confirmar si un certificado está vencido o sigue siendo válido.

por ejemplo:

[root @ Chandan opt] # openssl x509 -noout -in bestflare.pem -dates
no antes= 4 de julio 14:02:45 2015 GMT
no después de= 4 de agosto 09:46:42 GMT de 2015 [root @ Chandan opt] #

Check Certificate Expiration Date of SSL URL

openssl s_client -connect secureurl.com:443 2> / dev / null | openssl x509 -noout –enddate

Otro útil si planea monitorear la fecha de vencimiento del certificado SSL de forma remota o una URL particular.

por ejemplo:

[root @ Chandan opt] # openssl s_client -connect google.com:443 2> / dev / null | openssl x509 -noout -enddate

no después de= 8 de diciembre 00:00:00 2015 GMT

Check if SSL V2 or V3 is accepted on URL

Para comprobar SSL V2

openssl s_client -conectar secureurl.com:443 -ssl2

Para comprobar SSL V3

openssl s_client -conectar secureurl.com:443 –ssl3

Para comprobar TLS 1.0

openssl s_client -conectar secureurl.com:443 –tls1

Para comprobar TLS 1.1

openssl s_client -conectar secureurl.com:443 –tls1_1

Para comprobar TLS 1.2

openssl s_client -conectar secureurl.com:443 –tls1_2

Si tienes asegurar un servidor web y necesita validar si SSL V2 / V3 está habilitado o no, puede usar el comando anterior. Si está activado, obtendrá "CONECTADO"Más"fracaso del apretón de manos."

Verify if the particular cipher is accepted on URL

openssl s_client -cipher 'ECDHE-ECDSA-AES256-SHA' -connect secureurl: 443

Si está trabajando en los hallazgos de seguridad y los resultados de la prueba de lápiz muestran que se aceptan algunos de los cifrados débiles, entonces para validar, puede usar el comando anterior.

Por supuesto, tendrá que cambiar el cifrado y la URL con los que desea realizar la prueba. Si se acepta el cifrado mencionado, obtendrá "CONECTADO"Más"fracaso del apretón de manos."

Espero que los comandos anteriores le ayuden a saber más sobre OpenSSL para administrar Certificados SSL para su sitio web.

Gracias a nuestros patrocinadores
Más lecturas interesantes sobre seguridad
Impulse su negocio
Algunas de las herramientas y servicios para ayudar a que su negocio crezca.
  • Invicti utiliza Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en cuestión de horas.
    Prueba Invicti
  • Web scraping, proxy residencial, administrador de proxy, desbloqueador web, rastreador de motores de búsqueda y todo lo que necesita para recopilar datos web.
    Prueba Brightdata
  • Semrush es una solución de marketing digital todo en uno con más de 50 herramientas en SEO, redes sociales y marketing de contenido.
    Prueba Semrush
  • Intruder es un escáner de vulnerabilidades en línea que encuentra debilidades de ciberseguridad en su infraestructura, para evitar costosas filtraciones de datos.
    Intente Intruder