문제13: SecurityContext 구성

tothelight·2024년 5월 21일

CKAD 예상 문제

목록 보기
13/14

준비된 /data/ckad/safe-pod.yaml을 이용해서 다음의 조건의 Security Context를 구성하십시오.

  • safe 컨테이너는 UID 0인 root로 실행을 금지
  • safe 컨테이너를 실행할 때는 405 UID로 실행
  • safe 컨테이너는 root의 권한으로 escalation 금지

명령어 흐름

# safe-pod.yaml 파일을 엽니다.
$ vi /data/ckad/safe-pod.yaml

# 설정 파일 적용
$ kubectl apply -f /data/ckad/safe-pod.yaml

# Pod 상태 확인
$ kubectl get pods safe-pod

# Pod 내의 컨테이너 확인
$ kubectl exec safe-pod -- id

safe-pod.yaml 내용

apiVersion: v1
kind: Pod
metadata:
  name: safe-pod
spec:
  containers:
  - name: safe
    image: alpine
    command: ["/bin/sleep", "999999"]
    securityContext:
      runAsNonRoot: true
      runAsUser: 405
      allowPrivilegeEscalation: false

솔루션 설명

  1. safe-pod.yaml 파일을 엽니다

    $ vi /data/ckad/safe-pod.yaml
    • vi /data/ckad/safe-pod.yaml 명령어를 사용하여 safe-pod.yaml 파일을 엽니다.
    • 주석으로 추가된 내용: securityContext 필드를 설정합니다.
  2. **설정

    파일 적용**

    $ kubectl apply -f /data/ckad/safe-pod.yaml
    • kubectl apply 명령어를 사용하여 safe-pod.yaml 파일을 적용합니다.
  3. Pod 상태 확인

    $ kubectl get pods safe-pod
    • kubectl get pods 명령어를 사용하여 safe-pod의 상태를 확인합니다.
  4. Pod 내의 컨테이너 확인

    $ kubectl exec safe-pod -- id
    • kubectl exec 명령어를 사용하여 safe-pod 내에서 실행 중인 컨테이너의 UID를 확인합니다.

0개의 댓글