Menu Close
Red Hat Training
A Red Hat training course is available for RHEL 8
24.3.2.5. 신뢰할 수 있는 키 작업
다음 섹션에서는 시스템 보안을 개선하기 위해 keyctl
유틸리티를 사용하여 신뢰할 수 있는 키를 생성, 내보내기, 로드 또는 업데이트하는 방법을 설명합니다.
사전 요구 사항
-
64비트 ARM 아키텍처 및 IBM Z의 경우
신뢰할 수 있는
커널 모듈을 로드해야 합니다. 커널 모듈을 로드하는 방법에 대한 자세한 내용은 커널 모듈 관리를 참조하십시오. - 신뢰할 수 있는 TPM(Platform Module)을 활성화하고 활성화해야 합니다. TPM에 대한 자세한 내용은 커널 무결성 하위 시스템과 신뢰할 수 있고 암호화된 키를 참조하십시오.
절차
TPM을 사용하여 신뢰할 수 있는 키를 생성하려면 다음을 실행합니다.
# keyctl add trusted <name> "new <key_length> [options]" <key_ring>
구문에 따라 다음과 같이 예제 명령을 구성합니다.
# keyctl add trusted kmk "new 32" @u 642500861
이 명령은 길이 32바이트(256비트)를 사용하여
kmk
라는 신뢰할 수 있는 키를 생성하고 사용자 인증 키(@u
)에 배치합니다. 키의 길이는 32~128바이트(256비트에서 1024비트)일 수 있습니다.
커널 인증 키의 현재 구조를 나열하려면 다음을 수행합니다.
# keyctl show Session Keyring -3 --alswrv 500 500 keyring: _ses 97833714 --alswrv 500 -1 \_ keyring: _uid.1000 642500861 --alswrv 500 500 \_ trusted: kmk
키를 사용자 공간 Blob으로 내보내려면 다음을 실행합니다.
# keyctl pipe 642500861 > kmk.blob
명령은
pipe 하위 명령과
kmk
의 일련 번호를 사용합니다.사용자 공간 Blob에서 신뢰할 수 있는 키를 로드하려면 blob을 인수로
add
하위 명령을 사용합니다.# keyctl add trusted kmk "load `cat kmk.blob`" @u 268728824
TPM으로 봉인된 신뢰할 수 있는 키를 기반으로 보안 암호화 키를 생성합니다.
# keyctl add encrypted <pass:quotes[name]> "new [format] <pass:quotes[key_type]>:<pass:quotes[primary_key_name]> <pass:quotes[keylength]>" <pass:quotes[key_ring]>
구문에 따라 이미 생성된 신뢰할 수 있는 키를 사용하여 암호화된 키를 생성합니다.
# keyctl add encrypted encr-key "new trusted:kmk 32" @u 159771175
명령은 이전 단계에서 생성된 TPM 봉인된 신뢰할 수 있는 키(
kmk
)를 암호화된 키를 생성하기 위한 기본 키로 사용합니다.
추가 리소스
-
keyctl(1)
매뉴얼 페이지 - 신뢰할 수 있는 암호화된 키
- 커널 키 보존 서비스
- 커널 무결성 하위 시스템