728x90
반응형
TLS in Kubernetes?
- CA가 서버 인증서에 서명할 때 사용하는 공용 및 사설 keeper 세트가 있다. -> root 인증서
- 공용 키가 있는 인증서는 보통 CRT나 PEM 확장자로 불린다. -> 서버를 위한 CRT 고객 인증서를 위한 PEM
- 개인 키가 있는 인증서는 Key 혹은 Key.pem 으로 불린다.
- 노드들 사이의 모든 통신은 보안이 필요하고 암호화되어야 한다.
- 모든 서비스와 고객 간의 상호작용은 안전해야한다.
- Kubernetes 클러스터와 상호작용하는 관리자나 kubernetes API에 엑세스하는 동안 직접 보안 TLS연결을 설정해야한다.
- Kubernetes 클러스터 내 모든 구성 요소 간의 통신도 보안이 필요하다.

728x90

OpenSSL을 사용한 인증서 생성
ca 생성
- 프라이빗 키 생성 = openssl genrasa -out ca.key 2048
- Openssl request 명령 사용 서명 요청 생성을 위함 = openssl req -new -key ca.key -subj "/CN=KUBERNETES-CA" -out ca.csr
- 인증서 서명 = openssql x509 -req -in ca.csr -signkey ca.key -out ca.crt
클라이언트 인증서 생성
- 관리자용 개인 키 생성 = openssl genrsa -out admin.key 2048
- 사용자 이름 지정 = openssl req -new -key admin.key -subj \ "/CN=kube-admin" -out admin.csr
- CA인증서와 CA키 지정 = openssl x509 -req -in admin.csr -CA ca.crt -CAkey ca.key -out admin.crt
- Kubernetes 관리 권한을 가진 마스터 시스템이 있다.

Certificate API?
- 지금까지는 수동으로 요청에 서명했지만 사용자가 증가하고 팀이 성장하면 더 나은 자동화된 방법으로 인증서를 관리하고 요청에 서명해야한다. 만료되면 인증서를 교체한다.
- 관리자가 인증서 서명 요청을 받으면 마스터 노드에 로그인해 혼자 인증서에 서명하는 대신 인증서 서명 요청이라는 쿠버네티스 api 개체를 만든다.
- 개체가 생성되고 나면 모든 인증서 서명 요청은 클러스터 관리자들이 볼 수 있다.
- 방법
- 사용자는 먼저 키를 만들고 인증서 서명 요청을 생성한다. -> 사용자의 이름이 적힌 키를 사용한다.
- 관리자에게 요청을 보낸다.
- 관리자는 키를 받아 인증서 서명 요청 개체를 만든다.
반응형
728x90
반응형
'Kubernetes (k8s)' 카테고리의 다른 글
| CKA준비 Docker Security, ClusterRole, ClusterRoleBinding, Service Account, Image Security, (0) | 2023.02.28 |
|---|---|
| CKA준비 Kubeconfig, Authoriztion, API Groups (0) | 2023.02.27 |
| CKA 준비 TLS Certificates, Backup and Restore, Security Primitives, Authentication (0) | 2023.02.27 |
| CKA준비 OS Upgrade, Cluster Upgrade process (0) | 2023.02.23 |
| CKA준비 Init Container, Multi Container Pods, Secret (0) | 2023.02.23 |