검색

5.16. Podman에서 사전 실행 후크 구성

download PDF

플러그인 스크립트를 생성하여 컨테이너 작업을 세부적으로 제어할 수 있으며, 특히 컨테이너 이미지 가져오기, 실행 또는 나열과 같은 권한이 없는 작업을 차단할 수 있습니다.

참고

/etc/containers/podman_preexec_hooks.txt 파일은 관리자가 생성해야 하며 비어 있을 수 있습니다. /etc/containers/podman_preexec_hooks.txt 가 없으면 플러그인 스크립트가 실행되지 않습니다.

플러그인 스크립트에 다음 규칙이 적용됩니다.

  • 루트 소유여야 하며 쓸 수 없어야 합니다.
  • /usr/libexec/podman/pre-exec-hooks/etc/containers/pre-exec-hooks 디렉터리에 있어야 합니다.
  • 순차적 및 영숫자 순서로 실행됩니다.
  • 모든 플러그인 스크립트에서 0 값을 반환하면 podman 명령이 실행됩니다.
  • 플러그인 스크립트 중 0이 아닌 값을 반환하면 오류가 있음을 나타냅니다. podman 명령을 종료하고 처음 시작하는 스크립트의 0이 아닌 값을 반환합니다.
  • 다음 이름 지정 규칙을 사용하여 스크립트를 올바른 순서로 실행하는 것이 좋습니다. DDD_name.lang, 여기서:

    • DDD 는 스크립트 실행 순서를 나타내는 10진수입니다. 필요한 경우 하나 또는 두 개의 선행 0을 사용합니다.
    • name 은 플러그인 스크립트의 이름입니다.
    • lang (선택 사항)은 지정된 프로그래밍 언어의 파일 확장자입니다. 예를 들어 플러그인 스크립트의 이름은 다음과 같습니다. 001-check-groups.sh.
참고

플러그인 스크립트는 생성 시 유효합니다. 플러그인 스크립트 이전에 생성된 컨테이너는 영향을 받지 않습니다.

사전 요구 사항

  • container-tools 모듈이 설치되어 있습니다.

절차

  • 001-check-groups.sh 라는 스크립트 플러그인을 생성합니다. 예를 들면 다음과 같습니다.

    #!/bin/bash
    if id -nG "$USER" 2> /dev/null | grep -qw "$GROUP" 2> /dev/null ; then
        exit 0
    else
        exit 1
    fi
    • 이 스크립트는 사용자가 지정된 그룹에 있는지 확인합니다.
    • USERGROUP 은 Podman에서 설정한 환경 변수입니다.
    • 001-check-groups.sh 스크립트에서 제공하는 종료 코드는 podman 바이너리에 제공됩니다.
    • podman 명령을 종료하고 처음 시작하는 스크립트의 0이 아닌 값을 반환합니다.

검증

  • 001-check-groups.sh 스크립트가 올바르게 작동하는지 확인합니다.

    $ podman run image
    ...

    사용자가 올바른 그룹에 없는 경우 다음 오류가 표시됩니다.

    external preexec hook /etc/containers/pre-exec-hooks/001-check-groups.sh failed
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.