3.4. X.509 키를 사용하여 커널 모듈을 인증하기 위한 요구사항
커널 모듈을 로드할 때 커널은 시스템의 공개 X.509 키(.builtin_trusted_keys) 및 플랫폼(.platform) 인증 키에 대해 서명을 확인합니다. .blacklist 키링의 키는 확인에서 명시적으로 제외됩니다.
UEFI Secure Boot 기능이 활성화된 시스템에서 커널 모듈을 로드하려면 특정 조건을 충족해야 합니다.
UEFI Secure Boot가 활성화되어 있거나
module.sig_enforce커널 매개변수가 지정된 경우:-
서명이 시스템 인증 키(
.builtin_trusted_keys) 및 플랫폼 인증 키(.platform)의 키에 대해 인증된 서명된 커널 모듈만 로드할 수 있습니다. -
공개 키는 시스템에서 취소된 키 인증 키링(
.blacklist)에 있으면 안 됩니다.
-
서명이 시스템 인증 키(
UEFI Secure Boot가 비활성화되고
module.sig_enforce커널 매개변수가 지정되지 않은 경우:- 공개 키 없이 서명되지 않은 커널 모듈과 서명된 커널 모듈을 로드할 수 있습니다.
시스템이 UEFI 기반이 아니거나 UEFI Secure Boot가 비활성화된 경우:
-
커널에 내장된 키만
.builtin_trusted_keys및.platform에 로드됩니다. - 커널을 다시 빌드하지 않고도 이러한 키 세트를 늘릴 수 없습니다.
-
커널에 내장된 키만
| 서명된 모듈 | 공개 키 확인 및 유효한 서명 | UEFI Secure Boot 상태 | sig_enforce | 모듈 로드 | 커널 테인트됨 |
|---|---|---|---|---|---|
| 서명되지 않음 | - | 활성화되지 않음 | 활성화되지 않음 | 성공 | 제공됨 |
| 활성화되지 않음 | 활성화됨 | 실패 | - | ||
| 활성화됨 | - | 실패 | - | ||
| 서명됨 | 없음 | 활성화되지 않음 | 활성화되지 않음 | 성공 | 제공됨 |
| 활성화되지 않음 | 활성화됨 | 실패 | - | ||
| 활성화됨 | - | 실패 | - | ||
| 서명됨 | 제공됨 | 활성화되지 않음 | 활성화되지 않음 | 성공 | 없음 |
| 활성화되지 않음 | 활성화됨 | 성공 | 없음 | ||
| 활성화됨 | - | 성공 | 없음 |