인프런 커뮤니티 질문&답변

jungjin1.kim님의 프로필 이미지
jungjin1.kim

작성한 질문수

그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}

B.003.키클락(KeyCloak)을 이용한 쿠버네티스 통합 인증

Kubenetes 클러스터에 추가적으로 신뢰하는 CA를 넣을 수 있나요?

해결된 질문

작성

·

37

0

리눅스 서버 4대를 가상화로 올려서 클러스터를 구성하였습니다.

클러스터에서 애플리케이션을 구성하려고 하는데

App -> Dex -> KeyCloak(IdP) 이런 형태로 인증시스템을 구성하려고 합니다.

App, Dex, KeyCloak 모두 Ingress의 Tls에 self-signed CA로 서명한 서버 TLS 인증서를 넣어서 개별로 시스템에 접속을 하면 HTTPS가 잘 동작합니다.(윈도우에 신뢰하는 CA를 추가하였음)

그런데 Dex에서 KeyCloak 으로 OIDC metadata 를 가지오기 위에 .WellKnown ~~ 어쩌고 하는 Url로 요청을 하는데 이때 dex pod 에서 아래와 같은 오류가 발생합니다.

failed to initialize server: server: Failed to open connector edgeidp: failed to open connector: failed to create connector edgeidp: failed to get provider: Get "https://auth.myapptestkjj/realms/myapptestkjj/.well-known/openid-configuration": tls: failed to verify certificate: x509: certificate signed by unknown authority

그래서 pod 내부에서 KeyCloak으로 데이터를 요청하는데 신뢰할 수 없기 때문에 오류가 난다고 판단하여 신뢰하도록 조치를 하고 싶습니다.
그렇게 하기 위해서 클러스터 OS 에 모두 ca를 추가해서 신뢰하는 인증서도 등록을 했는데 소용이 없었습니다.

무언가 다른 방법이 있는것 같은데 도저히 답을 못 찾겠어서 질문을 드립니다.
약간의 팁이라도 좀 부탁드립니다.ㅠㅠ

 

 

답변 1

1

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

안녕하세요

해당 질문이 다소 강의 내용과 거리가 있긴 하지만, 다른 분들의 추가적인 학습이 도움이 되실 것 같기도 하고 1회정도는 예외적으로 진행해도 될 것 같아서 답변 드립니다.

그리고 위의 내용만으로 정확하게 이해하고 답변하지 않았을 수 있는 점에 대해서도 이해를 부탁드립니다.


어떠한 이유로 이렇게 인증을 구성하시려는지는 알기는 어려우나..

App -> Dex -> KeyCloak(IdP)

시크릿에 인증서를 넣고 파드에 마운트 하시면 될 것 같습니다.

그리고 인증서 관리를 시크릿으로 직접하는 것보다는 cert-manager로 하는게 나으실 것 같기도 합니다. 해당 답변이 도움이 되셨으면 좋겠습니다.

 

jungjin1.kim님의 프로필 이미지
jungjin1.kim

작성한 질문수

질문하기