Documentación de uso de OpenSSL
OpenSSL es una poderosa herramienta de código abierto para implementar comunicaciones seguras. Ofrece funciones como encriptación, desencriptación y protocolos SSL/TLS. ServBay viene con OpenSSL preinstalado. Este documento detalla cómo instalar, configurar y usar OpenSSL.
Índice
Instalación y configuración
Instalación
ServBay ya incluye OpenSSL de fábrica, no es necesaria una instalación adicional.
Configuración
El archivo de configuración de OpenSSL generalmente se encuentra en el directorio /Applications/ServBay/package/common/openssl/3.2
(para chips Intel en /Applications/ServBay/package/common/openssl/1.1.1u
). El archivo de configuración por defecto es openssl.cnf
. Puedes modificar este archivo según tus necesidades para ajustar el comportamiento de OpenSSL.
Ejemplo de contenido de archivo de configuración:
[ req ]
default_bits = 2048
default_keyfile = privkey.pem
distinguished_name = req_distinguished_name
attributes = req_attributes
x509_extensions = v3_ca
[ req_distinguished_name ]
countryName = Country Name (2 letter code)
countryName_default = US
stateOrProvinceName = State or Province Name (full name)
localityName = Locality Name (eg, city)
0.organizationName = Organization Name (eg, company)
organizationalUnitName = Organizational Unit Name (eg, section)
commonName = Common Name (eg, fully qualified host name)
commonName_max = 64
[ req_attributes ]
challengePassword = A challenge password
challengePassword_min = 4
challengePassword_max = 20
[ v3_ca ]
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer
basicConstraints = CA:true
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Uso básico
OpenSSL ofrece una amplia gama de herramientas de línea de comandos para varias tareas de encriptación y gestión de certificados. A continuación, algunos ejemplos básicos de uso:
Generar claves privadas y públicas
Generar clave privada RSA
openssl genpkey -algorithm RSA -out private_key.pem
Generar clave pública a partir de la clave privada
openssl rsa -pubout -in private_key.pem -out public_key.pem
Generar una solicitud de firma de certificado (CSR)
Generar CSR
openssl req -new -key private_key.pem -out request.csr
Certificado autofirmado
Generar un certificado autofirmado
openssl req -x509 -days 365 -key private_key.pem -in request.csr -out certificate.crt
Gestión de certificados
Ver información del certificado
Ver información de CSR
openssl req -text -noout -verify -in request.csr
Ver información del certificado
openssl x509 -text -noout -in certificate.crt
Convertir formatos de certificado
Convertir de PEM a DER
openssl x509 -outform der -in certificate.pem -out certificate.der
Convertir de DER a PEM
openssl x509 -inform der -in certificate.der -out certificate.pem
Encriptación y desencriptación
Encriptación simétrica
Encriptar un archivo usando AES
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt
Desencriptar un archivo usando AES
openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt
Encriptación asimétrica
Encriptar un archivo usando clave pública
openssl rsautl -encrypt -inkey public_key.pem -pubin -in plaintext.txt -out encrypted.txt
Desencriptar un archivo usando clave privada
openssl rsautl -decrypt -inkey private_key.pem -in encrypted.txt -out decrypted.txt
Preguntas frecuentes
1. No se puede ejecutar el comando OpenSSL
- Solución: Verifica si OpenSSL está correctamente instalado y asegúrate de que la ruta del archivo de configuración sea correcta. Si el problema persiste, revisa los registros de errores para obtener más información.
2. El certificado generado no es válido
- Solución: Comprueba si la información en el archivo de solicitud de certificado (CSR) y en el archivo de configuración es correcta. Asegúrate de que todos los campos obligatorios estén llenos.
3. Fallo en la encriptación o desencriptación
- Solución: Asegúrate de que las claves y algoritmos utilizados son los correctos. Verifica las rutas de los archivos de entrada y salida.
Resumen
OpenSSL es una herramienta poderosa y flexible, adecuada para diversas tareas de comunicación segura y encriptación. A través de esta guía, puedes aprender cómo instalar, configurar y usar OpenSSL en ServBay para la gestión de certificados y la encriptación de datos.