26.11. UEFI(Unified Extensible Firmware Interface) Secure Boot
UEFI( Unified Extensible Firmware Interface ) Secure Boot 기술을 사용하면 시스템 펌웨어가 펌웨어에 포함된 공개 키의 데이터베이스에서 인증하는 암호화 키로 서명되었는지 확인합니다. 다음 단계의 부트 로더와 커널의 서명 확인을 통해 신뢰할 수 있는 키로 서명되지 않은 커널 공간 코드의 실행을 방지할 수 있습니다.
신뢰 체인은 펌웨어에서 서명된 드라이버 및 커널 모듈로 다음과 같이 설정됩니다. first-stage boot loader, shim.efi
는 UEFI 개인 키로 서명하고 펌웨어 데이터베이스에 저장된 CA(인증 기관)에서 서명한 공개 키로 인증합니다. shim.efi
에는 GRUB 2 부트 로더, grubx64.efi
및 Red Hat 커널 모두를 인증하는 데 사용되는 Red Hat 공개 키 "Red Hat Secure Boot(CA 키 1)"가 포함되어 있습니다. 커널은 드라이버 및 모듈을 인증하는 공개 키가 포함되어 있습니다.
Secure Boot는 UEFI(Unified Extensible Firmware Interface) 사양의 부팅 경로 검증 구성 요소입니다. 사양은 다음을 정의합니다.
- 비휘발성 스토리지에서 암호로 보호되는 UEFI 변수를 위한 프로그래밍 인터페이스
- 신뢰할 수 있는 X.509 루트 인증서가 UEFI 변수에 저장되는 방법
- 부트 로더 및 드라이버와 같은 UEFI 애플리케이션 검증
- 알려진 인증서 및 애플리케이션 해시를 취소하는 절차입니다.
UEFI Secure Boot는 second-stage 부트 로더를 설치하거나 제거하는 것을 방지하지 않으며 이러한 변경 사항을 명시적으로 확인할 필요가 없습니다. 서명은 부트 로더가 설치 또는 업데이트될 때가 아닌 부팅 중에 확인됩니다. 따라서 UEFI Secure Boot는 부팅 경로 조작을 중지하지 않으며 무단 변경 사항을 감지하는 데 도움이 됩니다. 새로운 부트 로더 또는 커널은 시스템에서 신뢰하는 키로 서명하는 한 작동합니다.
26.11.1. Red Hat Enterprise Linux 7의 UEFI Secure Boot 지원
Red Hat Enterprise Linux 7은 UEFI Secure Boot 기능을 지원하므로 UEFI Secure Boot가 활성화된 시스템에서 Red Hat Enterprise Linux 7을 설치하고 실행할 수 있습니다. Secure Boot 기술이 활성화된 UEFI 기반 시스템에서는 로드된 모든 드라이버에 신뢰할 수 있는 키로 서명해야 합니다. 그렇지 않으면 시스템에서 허용하지 않습니다. Red Hat에서 제공하는 모든 드라이버는 Red Hat의 개인 키 중 하나에서 서명하고 커널에서 해당 Red Hat 공개 키로 인증합니다.
외부적으로 구축된 드라이버를 로드하려면 Red Hat Enterprise Linux DVD에서 제공되지 않는 드라이버도 로드해야 합니다. 이러한 드라이버도 서명되어 있어야 합니다.
사용자 정의 드라이버 서명에 대한 정보는 Red Hat Enterprise Linux 7 커널 관리 가이드에서 확인할 수 있습니다.
UEFI 보안 부팅으로 인한 제한 사항
Red Hat Enterprise Linux 7의 UEFI Secure Boot 지원은 서명이 올바르게 인증된 후 시스템이 커널 모드 코드만 실행하도록 설계되었습니다.
GRUB 2 모듈 로드는 GRUB 2 모듈에 서명하고 확인하는 인프라가 없기 때문에 비활성화되어 있습니다. 즉, 로드를 허용하면 Secure Boot에서 정의하는 보안 경계 내에서 신뢰할 수 없는 코드 실행이 구성됩니다. 대신 Red Hat은 Red Hat Enterprise Linux 7에서 지원되는 모든 모듈이 이미 포함되어 있는 서명된 GRUB 2 바이너리를 제공합니다.
자세한 내용은 Red Hat 지식베이스 문서 Restrictions Imposed by UEFI Secure Boot 에서 확인할 수 있습니다.