Docs Menu
Docs Home
/
MongoDB Kafka Connector
/

SSL/TLS 및 X.509 인증서

이 페이지의 내용

  • 개요
  • 전제 조건
  • 작업자에 인증서 저장
  • 키 저장소
  • 신뢰 저장소
  • connector에 자격 증명 추가

이 가이드에서는 MongoDB Kafka Connector 작업자와 MongoDB cluster 간의 통신을 보호하는 방법을 배울 수 있습니다.

연결을 보호하려면 다음 작업을 수행해야 합니다.

  • 인증서 만들기

  • 작업자 호스트 시스템에 인증서 저장

  • connector에 인증서의 자격 증명을 제공합니다.

참고

MongoDB Atlas 에서 MongoDB cluster 를 호스팅하다 하거나 클러스터 에 인증서가 명시적으로 필요하지 않은 경우, 이미 안전하게 통신할 수 있으며 이 가이드 의 단계를 따를 필요가 없습니다.

이 가이드를 사용하려면 다음 개념에 대한 사전 지식이 필요합니다.

connector 작업자 인스턴스를 실행하는 각 서버에 대한 인증서 자격 증명을 보호하기 위해 키 저장소신뢰 저장소 에 인증서를 저장합니다.

키 저장소를 사용하여 개인 키와 ID 인증서를 저장할 수 있습니다. 키 저장소는 키와 인증서를 사용하여 외부 호스트에 대해 클라이언트의 ID를 확인합니다.

작업자 인스턴스에 연결하기 위해 클라이언트 인증서가 SSL/TLS 구성에 필요한 경우, 보안 비공개 키를 생성하고 중간 CA와 함께 번들로 제공되는 클라이언트 인증서를 포함합니다. 그런 다음 openssl 명령을 사용하여 PKCS 12 파일을 생성하여 이 정보를 키 저장소에 저장합니다.

openssl pkcs12 -export -inkey <your private key> \
-in <your bundled certificate> \
-out <your output pkcs12 file>

신뢰 저장소를 사용하여 CA의 인증서를 저장할 수 있습니다. 신뢰 저장소는 인증서를 사용하여 클라이언트가 신뢰하는 당사자를 식별합니다. 이러한 인증서의 몇 가지 예로는 루트 CA, 중간 CA 및 MongoDB cluster의 최종 엔티티 인증서를 들 수 있습니다.

다음 keytool 명령을 사용하여 신뢰하는 당사자의 인증서를 신뢰 저장소로 가져옵니다.

keytool -import -trustcacerts -import -file <your root or intermediate CA>

SSL/TLS 구성에 MongoDB cluster에 대한 최종 엔터티 인증서가 필요한 경우 다음 명령을 사용하여 이를 신뢰 저장소로 가져옵니다.

keytool -import -file <your server bundled certificate> -keystore <your keystore name>

테스트 목적으로 클라이언트 키 저장소 및 신뢰 저장소를 설정하는 방법에 대한 자세한 내용은 테스트용 OpenSSL 클라이언트 인증서를 참조하세요.

커넥터 작업자는 KAFKA_OPTS 환경 변수에서 JVM 옵션을 처리합니다. 환경 변수에는 키 저장소 및 신뢰 저장소의 경로와 비밀번호가 포함됩니다.

KAFKA_OPTS 변수에 있는 다음 JVM 옵션을 내보냅니다.

export KAFKA_OPTS="\
-Djavax.net.ssl.trustStore=<your path to truststore> \
-Djavax.net.ssl.trustStorePassword=<your truststore password> \
-Djavax.net.ssl.keyStore=<your path to keystore> \
-Djavax.net.ssl.keyStorePassword=<your keystore password>"

작업자가 JVM 옵션을 처리할 때 connector는 키 저장소 및 신뢰 저장소의 SSL/TLS 프로토콜과 인증서를 사용하여 연결을 시도합니다.

돌아가기

보안 및 인증