LabHub

Rootless Podman 운영 · rootless 가 가능한 이유 · 퀴즈

퀴즈: rootless 의 원리

LabHub 에서 이어서 보기

문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.

  1. rootless 컨테이너가 mount 같은 특권 작업을 할 수 있는 이유는?

    1. setuid 가 걸린 헬퍼 바이너리를 대신 쓰기 때문
    2. 새 user namespace 안에서는 모든 capability 를 갖기 때문
    3. 커널이 컨테이너 프로세스를 특별하게 취급하기 때문
    4. 실행하는 동안만 잠시 진짜 root 로 승격되기 때문
  2. `/etc/subuid` 의 `podster:100000:65536` 이 뜻하는 것은?

    1. podster 의 UID 가 100000 이다
    2. podster 가 자기 namespace 안에서 호스트 UID 100000 부터 65536 개를 쓸 수 있다
    3. podster 는 65536 개의 컨테이너를 만들 수 있다
    4. podster 의 홈이 100000 블록으로 제한된다
  3. subuid 가 `podster:100000:65536` 일 때 컨테이너 안 UID 1000 은 호스트에서 어떤 UID 인가요?

    1. 100999
    2. 1000
    3. 100000
    4. 101000
  4. rootless 에서 80 번 포트에 바인딩할 수 없습니다. 가장 실용적인 대응은?

    1. root 로 전환한다
    2. 높은 포트로 띄우고 앞단 리버스 프록시나 포트 리다이렉션으로 노출한다
    3. capability 를 추가한다
    4. podman 을 setuid 로 만든다
  5. `podman unshare` 가 유용한 상황은?

    1. 컨테이너를 백그라운드로 띄워 두고 싶을 때
    2. 이미지를 빌드해 레지스트리에 올리려 할 때
    3. 볼륨 디렉터리의 소유권이 이상해 보일 때
    4. 컨테이너 네트워크 경로를 진단하고 싶을 때
  6. `newuidmap` 헬퍼가 동작하지 않을 때 podman 의 동작은?

    1. 단일 UID 모드로 폴백해 여러 UID 를 쓰는 이미지에서 권한 오류가 난다
    2. 오류를 내며 컨테이너 기동이 즉시 실패한다
    3. 자동으로 rootful 모드로 전환해 실행한다
    4. 스토리지 드라이버가 vfs 로 바뀌어 느려진다