본문 바로가기

kafka security

Kafka 보안 (2) - SASL/PLAIN 이전의 포스트에서 JAVA가 사용하는 JAAS 및 프로토콜-보안메커니즘을 분리하는 SASL 에 대해서 살펴보았다. kafka는 SASL의 몇 가지 메커니즘을 활용하여 주키퍼-브로커, 브로커-클라이언트 간의 인증을 적용할 수 있는데, 이번 포스트에서는 그 방법 중 가장 간단한 방법이라고 생각되는 SASL/PLAIN 에 대해서 소개하려 한다. SASL/PLAIN은 username/password 기반으로 인증을 수행하는 방식이며 안전한 인증을 위해서는 TLS 와 병행할 것을 권장한다. 이번 포스트에서 소개할 예제는 브로커-클라이언트 간의 SASL/PLAIN이며 TLS 없이 SASL/PLAIN 을 구현한다. 일단 이번 포스트에서 설명할 것의 순서는 아래와 같다 1. broker (kafka 서버) 설정 2. .. 더보기
Kafka 보안 (1) - JAAS 및 SASL 연초부터 Kafka를 활용해야겠다고 마음 먹고 겪은 프로세스를 살펴보면, 처음엔 제대로 설정해서 올리는 것에 중점을 두고, 설치 및 설정에 어느 정도 익숙해지니 설치 자체는 쉘스크립트를 만들어 어느 정도 한 번에 설치 및 서비스 구성이 되도록 할 수 있게 되었다. 그 다음으로는 안정적으로 굴러가는 것에 신경을 쓰자고 마음 먹고 JMX 메트릭을 모니터링 한다거나, 로그 파일에서 나타나는 각종 메시지들에 관심을 가지게 되었다. 그러고 나니, 다음으로 관심이 가는 것은 얼마나 Kafka 클러스터를 안전하게 굴릴 수 있느냐. 라는 것이다, 물론 현재 운영하고 있는 환경에서는 네트워크 방화벽 장비라든가 OS의 방화벽 설정 등을 통해 IP를 기반으로 허가 받지 않은 접근을 통제하고 있지만, 꼭 이런 환경에서만 한다.. 더보기