전체 글

DevOps Security Specialist를 목표하는 Security Compliance Engineer의 블로그
Kubernetes

Kubernetes 네트워크 정책(NetworkPolicy) 개념 및 설정1

1. 개념 쿠버네티스에서 각 파드는 기본적으로 서로간에 모든 통신이 가능한 상태 때문에 DB처럼 보안적으로 중요한 파드에 대해 접근을 제어하기 위하여 NetworkPolicy 서비스 활용 파드 생성 시 labels에 명시한 key : value를 기준으로 NetworkPolicy 적용 2. NetworkPolicy 상황별 설정 NetworkPolicy를 설정하지 않은 경우 모든 파드에서 DB로 접근 가능 특정 파드에서만 접근을 허용하고자 하는 경우 apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: db-policy namespace: prod spec: podSelector: matchLabels: role: db policyTyp..

Kubernetes

Kubernetes SecurityContext 개념 및 설정1

1. 개념 쿠버네티스는 컨테이너 실행 시 기본으로 root 권한으로 실행 root 권한에서의 컨테이너 실행을 방지하기 위해 파드 또는 컨테이너 단위로 실행시킬 PID를 지정 2. SecurityContext 적용 비교 SecurityContext를 적용하지 않은 경우(root로 실행) apiVersion: v1 kind: Pod metadata: name: security-context-demo-1 spec: containers: - name: sec-ctx-demo image: busybox:1.28 command: [ "sh", "-c", "sleep 1h" ] PID 확인 SecurityContext를 파드 단위로 적용한 경우(PID 1000으로 실행) apiVersion: v1 kind: Pod ..

Kubernetes

Kubernetes 프라이빗 레포지토리(PrivateRepository) 개념 및 설정

1. 개념 애플리케이션 배포 시 애플리케이션의 이미지를 도커등 퍼블릭 레포에서 다운 애플리케이션 이미지 변조에 따른 리스크를 없애기 위해 프라이빗 레포지토리 사용 가능 2. 시크릿 설정 프라이빗 레포지토리에 접속하기 위해 크레덴셜을 저장한 시크릿 생성 kubectl create secret docker-registry private-reg-cred --docker-username=[레포지토리_유저네임] --docker-password=[레포지토리_패스워드] --docker-server=[레포지토리_주소] 시크릿 생성 확인 3. 이미지 풀 설정 애플리케이션 이미지를 프라이빗 레포지토리에서 다운받도록 설정 imagePullSecrets : 앞서 생성한 시크릿 image : 프라이빗 레포지토리 주소와 다운받을..

MR. ZERO
Security & DevOps