Windows 노드 보안
Windows 노드 보안 (windows-security)
이 페이지는 Windows 운영체제에 특화된 보안 고려사항과 모범 사례를 다뤄요.
노드의 Secret 데이터 보호 (Protection for Secret data on nodes)
Windows에서는 Secret의 데이터가 노드의 로컬 스토리지에 평문(clear text)으로 기록돼요. Linux에서 tmpfs/인메모리 파일시스템을 쓰는 것과는 대조적이죠. 클러스터 운영자라면 다음 두 가지 추가 조치를 모두 취해야 해요:
- 파일 ACL을 사용해 Secret 파일의 위치를 보호한다.
- BitLocker로 볼륨 수준 암호화를 적용한다.
컨테이너 사용자 (Container users)
Windows Pod나 컨테이너에는 RunAsUsername을 지정해서 컨테이너 프로세스를 특정 사용자로 실행할 수 있어요. 이는 RunAsUser와 대략적으로 동등한 개념이에요.
Windows 컨테이너는 기본 사용자 계정 두 가지, 즉 ContainerUser와 ContainerAdministrator를 제공해요. 두 계정의 차이는 Microsoft의 Secure Windows containers 문서 중 When to use ContainerAdmin and ContainerUser user accounts에서 다뤄요.
참고 (Note)
- Nano Server 기반 이미지는 기본적으로
ContainerUser로 실행돼요. - Server Core 기반 이미지는 기본적으로
ContainerAdministrator로 실행돼요.
Pod 수준 보안 격리 (Pod-level security isolation)
Linux 특유의 Pod 보안 컨텍스트 메커니즘(예: SELinux, AppArmor, Seccomp, 또는 커스텀 POSIX capabilities)은 Windows 노드에서 지원되지 않아요.
프리빌리지(privileged) 컨테이너도 Windows에서 지원되지 않아요. 대신 Windows에서는 HostProcess 컨테이너를 사용해서, Linux에서 프리빌리지 컨테이너가 수행하던 많은 작업을 처리할 수 있어요.