Cómo configurar SSL/TLS en Elasticsearch

13 feb 2024 3 min di lettura
Cómo configurar SSL/TLS en Elasticsearch
Indice dei contenuti

Introducción

En la era digital, proteger los datos en tránsito y en reposo es fundamental para cualquier organización. Elasticsearch, un popular motor de búsqueda y análisis de código abierto, no es una excepción. Se utiliza ampliamente para analizar datos de registros o eventos, búsquedas de texto completo y consultas complejas. Sin embargo, sin medidas de seguridad adecuadas, los datos confidenciales pueden ser vulnerables a la interceptación y al acceso no autorizado. Habilitar SSL/TLS ( Seguridad de la capa de transporte ) en Elasticsearch es un paso crucial para proteger sus datos.

Esta guía completa describe los pasos para configurar SSL/TLS, garantizando una mayor seguridad para su clúster de Elasticsearch.

Requisitos previos

Antes de comenzar, asegúrese de tener lo siguiente:

  • Un clúster de Elasticsearch configurado y en funcionamiento.
  • Acceso administrativo a los archivos de configuración de Elasticsearch.
  • Un certificado SSL/TLS válido. Puede obtener un certificado de una autoridad certificadora (CA) o generar un certificado autofirmado con fines de prueba.

Paso 1: generar certificados SSL/TLS

El primer paso es generar certificados SSL/TLS para sus nodos de Elasticsearch. Si utiliza certificados autofirmados para las pruebas, la herramienta elasticsearch-certutil de Elasticsearch puede simplificar este proceso. Para entornos de producción, recomendamos utilizar certificados emitidos por una CA confiable.

Cree una autoridad de certificación (CA): este paso es fundamental ya que le permite firmar sus certificados de Elasticsearch. Elasticsearch proporciona una herramienta llamada elasticsearch-certutil para este propósito.

./bin/elasticsearch-certutil ca

Cuando se le solicite el nombre del archivo CA, presione Entrar para usar el nombre predeterminado o establecer un nombre nuevo.

Genere un certificado SSL para Elasticsearch: utilizando la CA que creó, ahora genere un certificado específico para sus nodos de Elasticsearch.

./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12

Reemplace elastic-stack-ca.p12 con la ruta real donde se almacena el certificado de CA. Este comando genera un archivo.p12 (PKCS#12), que encapsula el certificado de nodo, la clave privada y el certificado de CA. Es posible que necesite generar certificados específicos para cada nodo del clúster, según su configuración.

Paso 2: configurar Elasticsearch para usar el certificado SSL

Una vez que tenga sus certificados SSL/TLS, deberá configurar Elasticsearch para usarlos. Esto implica editar el archivo de configuración elasticsearch.yml en cada nodo del clúster.

Agregue las siguientes configuraciones a elasticsearch.yml en cada nodo:

xpack.security.enabled: true
 xpack.security.transport.ssl.enabled: true
 xpack.security.transport.ssl.verification_mode: certificate
 xpack.security.transport.ssl.client_authentication: required
 xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
 xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
 xpack.security.http.ssl.enabled: true
 xpack.security.http.ssl.keystore.path: elastic-certificates.p12
 xpack.security.http.ssl.truststore.path: elastic-certificates.p12

Reemplace "elastic-certificates.p12" con el nombre de archivo del certificado que creó en el paso anterior.

Paso 3: reinicie Elasticsearch

Después de configurar todos los nodos, reinicie el clúster de Elasticsearch para aplicar los cambios. Asegúrese de que el clúster se inicie sin errores y que todos los nodos puedan comunicarse entre sí a través de SSL/TLS.

Paso 4: Verifique su configuración SSL/TLS

Para verificar que SSL/TLS esté habilitado y funcione correctamente, utilice una herramienta como curl para realizar una solicitud a la API HTTP de Elasticsearch:

curl -k https://localhost:9200

La opción -k permite que curl se conecte sin verificación de certificado, lo cual es útil para pruebas iniciales con certificados autofirmados. Si todo está configurado correctamente, debería recibir una respuesta JSON de Elasticsearch.

Conclusión

Proteger su clúster de Elasticsearch con SSL/TLS es un paso fundamental para proteger sus datos. Si sigue los pasos descritos en esta guía, puede asegurarse de que sus datos permanezcan seguros durante el transporte, mitigando los riesgos potenciales de interceptación o manipulación de datos. Recuerde siempre utilizar certificados de CA confiables para entornos de producción para garantizar el más alto nivel de seguridad y confiabilidad.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.