10장. bootc 이미지 빌드에서 FIPS 모드 활성화
FIPS(Federal Information Processing Standard) 140는 암호화 모듈에 대한 요구 사항을 정의합니다. 이러한 요구 사항을 충족하려면 FIPS 모드를 활성화해야 합니다. bootc 컨테이너 이미지 빌드 중에 FIPS 모드를 활성화할 수 있습니다.
10.1. FIPS 지원 시스템의 부팅 가능한 디스크 이미지 생성 링크 복사링크가 클립보드에 복사되었습니다!
Anaconda 설치를 수행할 때 디스크 이미지를 생성하고 FIPS 모드를 활성화할 수 있습니다. 디스크 이미지를 부팅할 때 fips=1 커널 인수를 추가해야 합니다.
사전 요구 사항
- 호스트 시스템에 Podman이 설치되어 있어야 합니다.
-
호스트 머신에
virt-install이 설치되어 있어야 합니다. -
bootc-image-builder툴을 실행하고--privileged모드에서 컨테이너를 실행하여 이미지를 빌드할 수 있는 루트 액세스 권한이 있습니다.
프로세스
FIPS 활성화를 구성하려면
01-fips.toml를 생성합니다. 예를 들면 다음과 같습니다.# Enable FIPS kargs = ["fips=1"]다음 지침으로 Containerfile을 생성하여
fips=1커널 인수를 활성화하고 암호화 정책을 조정합니다.FROM quay.io/<namespace>/<image>:latest # Enable fips=1 kernel argument: https://bootc-dev.github.io/bootc/building/kernel-arguments.html COPY 01-fips.toml /usr/lib/bootc/kargs.d/ # Install and enable the FIPS crypto policy RUN dnf install -y crypto-policies-scripts && update-crypto-policies --no-reload --set FIPS컨테이너를 실행하기 전에
출력폴더를 초기화합니다. 디렉터리가 이미 존재하는 경우-p인수를 사용하여 명령이 실패하지 않도록 합니다.$ mkdir -p ./output현재 디렉터리에서
Containerfile을 사용하여 bootc <image> 호환 기본 디스크 이미지를 생성합니다.$ sudo podman run \ --rm \ -it \ --privileged \ --pull=newer \ --security-opt label=type:unconfined_t \ -v ./config.toml:/config.toml \ -v ./output:/output \ -v /var/lib/containers/storage:/var/lib/containers/storage \ registry.redhat.io/rhel10/bootc-image-builder:latest \ --type iso \ quay.io/<namespace>/<image>:<tag>시스템 설치 중에 FIPS 모드를 활성화합니다.
-
RHEL Anaconda 설치 프로그램을 부팅할 때 설치 화면에서 TAB 키를 누른 후
fips=1커널 인수를 추가합니다. 설치 후 FIPS 모드에서 시스템이 자동으로 시작됩니다.
-
RHEL Anaconda 설치 프로그램을 부팅할 때 설치 화면에서 TAB 키를 누른 후
검증
시스템에 로그인한 후 FIPS 모드가 활성화되어 있는지 확인합니다.
$ cat /proc/sys/crypto/fips_enabled 1 $ update-crypto-policies --show FIPS
추가 리소스