15장. seccomp 프로필 구성
OpenShift Container Platform 컨테이너 또는 Pod는 하나 이상의 잘 정의된 작업을 수행하는 단일 애플리케이션을 실행합니다. 애플리케이션에는 일반적으로 기본 운영 체제 커널 API의 작은 하위 집합만 필요합니다. 보안 컴퓨팅 모드인 seccomp는 컨테이너에서 실행되는 프로세스가 사용 가능한 시스템 호출의 하위 집합만 사용하도록 제한하는 데 사용할 수 있는 Linux 커널 기능입니다.
제한된 v2
SCC는 4.19에서 새로 생성된 모든 Pod에 적용됩니다. 이러한 포드에는 기본 seccomp 프로필 런타임/기본값이
적용됩니다.
seccomp 프로필은 디스크에 JSON 파일로 저장됩니다.
seccomp 프로필은 권한 있는 컨테이너에 적용할 수 없습니다.
15.1. Pod에 적용된 기본 seccomp 프로필 확인 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform은 runtime/default
로 참조되는 기본 seccomp 프로필과 함께 제공됩니다. 4.19에서는 새로 생성된 포드의 보안 컨텍스트 제약(SCC)이 restricted-v2
로 설정되고 기본 seccomp 프로필이 포드에 적용됩니다.
프로세스
다음 명령을 실행하여 포드에 설정된 보안 컨텍스트 제약(SCC)과 기본 seccomp 프로필을 확인할 수 있습니다.
네임스페이스에서 어떤 포드가 실행 중인지 확인하세요.
oc get pods -n <namespace>
$ oc get pods -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예를 들어,
워크숍
네임스페이스에서 어떤 포드가 실행 중인지 확인하려면 다음을 실행합니다.oc get pods -n workshop
$ oc get pods -n workshop
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY STATUS RESTARTS AGE parksmap-1-4xkwf 1/1 Running 0 2m17s parksmap-1-deploy 0/1 Completed 0 2m22s
NAME READY STATUS RESTARTS AGE parksmap-1-4xkwf 1/1 Running 0 2m17s parksmap-1-deploy 0/1 Completed 0 2m22s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 포드를 검사하세요:
oc get pod parksmap-1-4xkwf -n workshop -o yaml
$ oc get pod parksmap-1-4xkwf -n workshop -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
15.1.1. 업그레이드된 클러스터 링크 복사링크가 클립보드에 복사되었습니다!
4.19로 업그레이드된 클러스터에서는 인증된 모든 사용자가 제한된
SCC 및 제한된 v2
SCC에 액세스할 수 있습니다.
예를 들어 업그레이드 시 OpenShift Container Platform v4.10 클러스터에서 restricted
SCC에 의해 허용된 워크로드는 restricted-v2
에 의해 허용될 수 있습니다. restricted-v2
는 restricted
및 restricted-v2
간에 더 제한적인 SCC이기 때문입니다.
워크로드는 retricketed-v2
로 실행될 수 있어야 합니다.
반대로 privilegeEscalation: true가
필요한 작업 부하의 경우 이 작업 부하에서는 인증된 모든 사용자가 제한된
SCC를 계속 사용할 수 있습니다. 이는 restricted-v2가
privilegeEscalation을
허용하지 않기 때문입니다.
15.1.2. 새로 설치된 클러스터 링크 복사링크가 클립보드에 복사되었습니다!
새로 설치된 OpenShift Container Platform 4.11 이상 클러스터의 경우, restricted-v2는
모든 인증된 사용자가 사용할 수 있는 SCC로서 restricted
SCC를 대체합니다. privilegeEscalation: true
인 워크로드는 기본적으로 인증된 사용자에게 사용 가능한 유일한 SCC인 restricted-v2
가 클러스터에 허용되지 않습니다.
privilegeEscalation
기능은 restricted
으로 허용되지만 restricted-v2
로는 허용되지 않습니다. 제한된
SCC에서 허용한 기능보다 제한된 v2
에서 거부하는 기능이 더 많습니다.
privilegeEscalation: true가
설정된 워크로드는 새로 설치된 OpenShift Container Platform 4.11 이상 클러스터에 수용될 수 있습니다. RoleBinding을 사용하여 워크로드를 실행하는 ServiceAccount(또는 이 워크로드를 허용할 수 있는 다른 SCC)에 제한된
SCC에 대한 액세스 권한을 부여하려면 다음 명령을 실행합니다.
oc -n <workload-namespace> adm policy add-scc-to-user <scc-name> -z <serviceaccount_name>
$ oc -n <workload-namespace> adm policy add-scc-to-user <scc-name> -z <serviceaccount_name>
OpenShift Container Platform 4.19에서는 seccomp.security.alpha.kubernetes.io/pod:runtime/default
및 container.seccomp.security.alpha.kubernetes.io/<container_name>:runtime/default라는
포드 주석을 추가하는 기능이 더 이상 제공되지 않습니다.