SSL 인증서 적용하기

작성자 김아름 수정일 2022-10-17 15:30

#ssl인증서, #SparklingSoDA4.0, #스파클링소다4.0, #인증서

아티클 관련 제품: SparklingSoDA4.0

들어가며

  • 스파클링소다는 ssl 인증서를 적용하여 사용할 수 있습니다.

  • ssl 인증서가 무엇인지와 어떻게 스파클링소다에 적용하는지 알아보겠습니다.



SSL 인증서란

SSL 은 Secure Sockets Layer의 약자로 웹 브라우저와 웹 서버 간의 암호화된 통신을 가능하게 하는 글로벌 표준 보안 기술입니다.

이 보안 연결을 생성하기 위해 SSL 인증서 ("디지털 인증서"라고도 합니다.)가 웹 서버에 설치되고 두 가지 기능을 제공합니다.

  • 웹사이트의 신원을 인증합니다(이것은 방문자가 가짜 사이트에 있지 않다는 것을 보장합니다)
  • 전송되는 데이터를 암호화합니다.



스파클링소다에 SSL 인증서 적용하기

스파클링소다 web ui를 ssl 인증서를 적용하여 https 로 접속을 원할 시, cert와 key 파일이 준비되어 있어야 합니다.


Cluster 외부에서 Cluster 내부 서비스로 HTTP와 HTTPS(SSL) 경로를 노출하기 위해 Nginx Ingress를 설치합니다.

이때, 인증키를 k8s secret으로 생성한 뒤, nginx-ingress를 설치하게 됩니다.


스파클링소다에서는 해당 secret을 sodaflow-https-secret 라는 이름으로 생성하게 됩니다.

kubectl describe secret sodaflow-https-secret
Name:         sodaflow-https-secret
Namespace:    sodaflow
Labels:       <none>
Annotations:  <none>

Type:  kubernetes.io/tls

Data
====
tls.crt:  1099 bytes
tls.key:  1704 bytes
kubernetes는 secret의 data가 자동으로 base64 인코딩되어 들어갑니다.


sodaflow-https-secret을 생성했다면, 해당 secret을 arguments로 참조하여 nginx-ingress를 생성하게 됩니다.

이러한 이유로 스파클링소다 ui 접속 시 https로 접속할 수 있게됩니다.


kubectl get po | grep sodaflow-nginx-ingress-controller
sodaflow-nginx-ingress-controller-7b55dd5954-skdwd        1/1     Running     12         62d
sodaflow-nginx-ingress-controller-7b55dd5954-vl62d        1/1     Running     12         62d
sodaflow-nginx-ingress-controller-7b55dd5954-wk2rt        1/1     Running     10         62d

nginx-ingress-controller 생성 시 replicas 값을 3을 주었기 때문에 pod가 3개 생성됩니다.

출력된 pod들 중 하나를 선택해 이름을 복사합니다.


kubectl describe po sodaflow-nginx-ingress-controller-7b55dd5954-skdwd | grep default-ssl-certificate
      --default-ssl-certificate=sodaflow/sodaflow-https-secret

위 결과처럼 default ssl certificate가 sodaflow-https-secret으로 설정되어 있음을 알 수 있습니다.



마무리

  • ssl 인증서가 무엇인지와, 스파클링소다 ui 에 적용하여 https로 접속할 수 있는 방법을 알아보았습니다.

아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.

02-558-8300