06-data-encryption-keys

Dante·2024년 6월 2일
0

kubernetes-hard-way

목록 보기
7/13

Generating the Data Encryption Config and Key


Kubernetes는 클러스터 상태, 어플리케이션 구성 그리고 secret을 포함한 다양한 데이터를 저장합니다.

Kubernetes는 클러스터 데이터를 저장 중에 암호화 할 수 있는 기능을 지원합니다.

이번 실습에서는 Kubernetes Secret을 암호화 하기 위한 암호화 키와 암호화 설정파일을 생성합니다.

https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/#understanding-the-encryption-at-rest-configuration

해당 작업을 진행하는 이유는 Kubernetes Secret 리소스 생성 시 Kubernetes 저장소인 ETCD 에 정보를 저장하는데 이땐 평문으로 저장됩니다.

ETCD 에 Kubernetes의 Secret 리소스를 조회하면 평문으로 조회되니, 이를 방지하기 위해 ETCD 저장 시 암호화해서 저장 하도록 합니다.

The Encryption Key


암호화 키를 생성합니다.

export ENCRYPTION_KEY=$(head -c 32 /dev/urandom | base64)

The Encryption Config File


encryption-config.yaml 암호화 설정파일을 생성합니다.

mkdir /k8s-hardway/configs

cat > /k8s-hardway/configs/encryption-config.yaml <<EOF
kind: EncryptionConfig
apiVersion: v1
resources:
  - resources:
      - secrets
    providers:
      - aescbc:
          keys:
            - name: key1
              secret: ${ENCRYPTION_KEY}
      - identity: {}
EOF

encryption-config.yaml 파일을 controlplane-1 서버로 복사합니다.

scp /k8s-hardway/configs/encryption-config.yaml root@controlplane-1:~/

Next: Bootstrapping the etcd Cluster

profile
it's me.

0개의 댓글

관련 채용 정보