14장. IdM (Identity Management)
다음 장에서는 RHEL 8과 RHEL 9 간의 IdM(Identity Management)에 대한 주요 변경 사항이 포함되어 있습니다.
14.1. 새로운 기능 링크 복사링크가 클립보드에 복사되었습니다!
SSSD에서 암호 없는 새로운 인증 방법을 사용할 수 있습니다.
RHEL 9.4에서는 FIDO2 사양과 호환되는 생체 인식 장치를 사용하도록 SSSD에서 암호 없는 인증을 활성화하고 구성할 수 있습니다(예: YubiKey). FIDO2 토큰을 미리 등록하고 RHEL IdM, Active Directory 또는 LDAP 저장소의 사용자 계정에 이 등록 정보를 저장해야 합니다. RHEL은 현재 USB 기반 토큰만 지원하는 libfido2
라이브러리와 FIDO2 호환성을 구현합니다.
Identity Management API가 완전히 지원됨
RHEL 9.3부터 IdM(Identity Management) API는 완전히 지원되는 기능입니다.
IdM API가 여러 버전의 API 명령을 사용하도록 향상된 경우에도 기존 툴과 스크립트를 사용할 수 있습니다. 이러한 개선 사항은 호환되지 않는 방식으로 명령의 동작을 변경하지 않습니다. 다음과 같은 이점이 있습니다.
- 관리자는 관리 클라이언트보다 서버에서 이전 또는 이후 버전의 IdM을 사용할 수 있습니다.
- 서버에서 IdM 버전이 변경되어도 개발자는 특정 버전의 IdM 호출을 사용할 수 있습니다.
한 측에서 사용하는 경우(예: 기능에 대한 새 옵션을 도입하는 최신 버전)와 관계없이 서버와의 통신이 가능합니다.
- 참고
- IdM API는 JSON-RPC 인터페이스를 제공하지만 이러한 유형의 액세스는 지원되지 않습니다. 대신 Python을 사용하여 API에 액세스하는 것이 좋습니다. Python을 사용하면 서버에서 메타데이터 검색과 같은 중요한 부분을 자동화하여 사용 가능한 모든 명령을 나열할 수 있습니다.
Identity Management 설치 패키지가 구체화되었습니다.
이전에는 RHEL 8에서 IdM 패키지가 모듈로 배포되었으므로 스트림을 활성화하고 원하는 설치에 해당하는 프로필을 설치해야 했습니다. IdM 설치 패키지는 RHEL 9에서 데모되어 있으므로 다음 dnf 명령을 사용하여 IdM 서버 패키지를 설치할 수 있습니다.
통합 DNS 서비스가 없는 서버의 경우:
dnf install ipa-server
# dnf install ipa-server
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 통합 DNS 서비스가 있는 서버의 경우:
dnf install ipa-server ipa-server-dns
# dnf install ipa-server ipa-server-dns
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
SSSD 암시적 파일 공급자 도메인은 기본적으로 비활성화되어 있습니다.
/etc/shadow 및
에서 그룹 정보와 같은 로컬 파일에서 사용자 정보를 검색하는 SSSD 암시적 파일 /etc/
groups프로바이더
도메인이 이제 기본적으로 비활성화됩니다.
SSSD를 사용하여 로컬 파일에서 사용자 및 그룹 정보를 검색하려면 다음을 수행합니다.
SSSD 구성. 다음 옵션 중 하나를 선택합니다.
sssd.conf
구성 파일에서id_provider=files
옵션을 사용하여 로컬 도메인을 명시적으로 구성합니다.[domain/local] id_provider=files ...
[domain/local] id_provider=files ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sssd.conf
구성파일에서
enable_files_domain=true
옵션을 설정하여 파일 공급자를 활성화합니다.[sssd] enable_files_domain = true
[sssd] enable_files_domain = true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
이름 서비스 스위치를 구성합니다.
authselect enable-feature with-files-provider
# authselect enable-feature with-files-provider
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 사용자 정보의 캐싱 및 동기화를 복원하려면 심볼릭 링크를 생성하여
shadow-utils
와sssd_cache
간의 통합을 활성화합니다.ln -s /usr/sbin/sss_cache /usr/sbin/sss_cache_shadow_utils
# ln -s /usr/sbin/sss_cache /usr/sbin/sss_cache_shadow_utils
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
FIPS 140-3 호환 키 암호화를 활성화한 VMDK용 새로운 영역 구성 템플릿
이 업데이트에서는 /var/kerberos/krb5kdc/kdc.conf
파일에 새로운 EXAMPLE.COM
.COM 영역 구성 예를 제공합니다. 두 가지 변경 사항을 제공합니다.
-
FIPS 140-3 호환
AES HMAC SHA-2
제품군이 키 암호화를 위해 지원되는 유형 목록에 추가됩니다. -
iPXE 마스터 키의 암호화 유형은
AES 256 HMAC SHA-1
에서AES 256 HMAC SHA-384
로 전환됩니다.
이 업데이트는 독립 실행형 MIT 영역에 관한 것입니다. RHEL Identity Management에서 KDC(Kerberos Distribution Center) 구성을 변경하지 마십시오.
새 영역에는 새 구성 템플릿을 사용하는 것이 좋습니다. 템플릿은 이미 배포된 영역에는 영향을 미치지 않습니다. 템플릿에 따라 영역 구성을 업그레이드하려는 경우 다음 사항을 고려하십시오.
마스터 키를 업그레이드하는 경우 CloudEvent 구성의 설정을 변경하는 것만으로는 충분하지 않습니다. MIT Kerberos 설명서에 설명된 프로세스를 따르십시오.
키 암호화에 대해 지원되는 유형에 AES HMAC SHA-2
제품군을 추가하는 것은 CloudEvent의 기존 항목에 영향을 미치지 않기 때문에 어느 시점에서도 안전합니다. 키는 새 주체를 생성하거나 자격 증명을 갱신할 때만 생성됩니다. 이 새 유형의 키는 기존 키를 기반으로 생성할 수 없습니다. 특정 주체에 이러한 새로운 암호화 유형을 사용할 수 있도록 하려면 인증 정보를 갱신해야 합니다. 즉, 서비스 주체에 대한 키탭도 갱신해야 합니다.
보안 주체에 AES HMAC SHA-2
키가 포함되어 있지 않아야 하는 유일한 경우는 Active Directory (AD) cross-realm ticket-granting ticket (TGT)입니다. AD는 RFC8009를 구현하지 않기 때문에 AES HMAC SHA-2
암호화 유형 제품군을 사용하지 않습니다. 따라서 cross-realm TGS-REQ using an AES HMAC SHA-2
-encrypted cross-realm TGT를 사용하는 경우 오류가 발생했습니다. MIT Kerberos 클라이언트가 AD에 대해 AES HMAC SHA-2
를 사용하지 못하도록 하는 가장 좋은 방법은 AD 교차 영역에 AES HMAC SHA-2
키를 제공하지 않는 것입니다. 이렇게 하려면 AD에서 지원하는 모든 키 암호화 유형의 명시적 목록을 사용하여 교차 영역 TGT 항목을 생성해야 합니다.
kadmin.local <<EOF add_principal +requires_preauth -e aes256-cts-hmac-sha1-96,aes128-cts-hmac-sha1-96 -pw [password] krbtgt/[MIT realm]@[AD realm] add_principal +requires_preauth -e aes256-cts-hmac-sha1-96,aes128-cts-hmac-sha1-96 -pw [password] krbtgt/[AD realm]@[MIT realm] EOF
kadmin.local <<EOF
add_principal +requires_preauth -e aes256-cts-hmac-sha1-96,aes128-cts-hmac-sha1-96 -pw [password] krbtgt/[MIT realm]@[AD realm]
add_principal +requires_preauth -e aes256-cts-hmac-sha1-96,aes128-cts-hmac-sha1-96 -pw [password] krbtgt/[AD realm]@[MIT realm]
EOF
MIT IKEvrboros 클라이언트가 AES HMAC SHA-2
암호화 유형을 사용하도록 하려면 클라이언트 및 CloudEvent 구성 모두에서 허용되는
암호화 유형도 설정해야 합니다. RHEL에서 이 설정은 crypto-policy 시스템에서 관리합니다. 예를 들어 RHEL 9에서는 DEFAULT
암호화 정책을 사용하는 호스트에서는 AES HMAC SHA-2
및 AES HMAC SHA-1
암호화 티켓을 허용하는 반면, FIPS
암호화 정책을 사용하는 호스트는 AES HMAC SHA-2
만 허용합니다.
SSSD 다중 스레드 성능 개선
이전 버전에서는 SSSD가 Red Hat Directory Server 및 Identity Management와 같은 다중 스레드 애플리케이션에서 병렬 요청을 직렬화했습니다. RHEL 9.1부터 ns
및 pam
와 같은 모든 SSSD 클라이언트 라이브러리는 요청을 직렬화하지 않으므로 더 나은 성능을 위해 여러 스레드의 요청을 병렬로 실행할 수 있습니다.
직렬화의 이전 동작을 활성화하려면 환경 변수 SSS_LOCKFREE
를 NO
로 설정합니다.
Ansible-freeipa는 ansible-
하위 패키지에서 Ansible 컬렉션으로 역할 및 모듈을 추가로 제공합니다.freeipa
-collection
새 컬렉션을 사용하려면 다음을 수행합니다.
-
ansible-freeipa-collection
하위 패키지를 설치합니다. -
역할 및 모듈 이름에
freeipa.ansible_freeipa
접두사를 추가합니다. 정규화된 이름을 사용하여 Ansible 권장 사항을 따릅니다. 예를 들어ipahbacrule
모듈을 참조하려면freeipa.ansible_freeipa.ipahbacrule
을 사용합니다.
module_defaults
를 적용하여 freeipa.ansible_freeipa
컬렉션의 일부인 모듈을 간단하게 사용할 수 있습니다.
이제 IdM에서 HSM이 완전히 지원됨
HSM(하드웨어 보안 모듈)은 이제 IdM(Identity Management)에서 완전히 지원됩니다. IdM CA(Cerificate Authority) 및 KRA(Key Recovery Authority)에 대한 키 쌍과 인증서를 HSM에 저장할 수 있습니다. 이는 개인 키 자료에 물리적 보안을 추가합니다.
IdM은 HSM의 네트워킹 기능을 사용하여 시스템 간 키를 공유하여 복제본을 생성합니다. HSM은 대부분의 IPA 작업에 영향을 미치지 않고 추가 보안을 제공합니다. 낮은 수준의 툴링을 사용하면 인증서와 키가 다르게 처리되지만 대부분의 사용자에게 원활합니다.
기존 CA 또는 KRA를 HSM 기반 설정으로 마이그레이션하는 것은 지원되지 않습니다. HSM의 키를 사용하여 CA 또는 KRA를 다시 설치해야 합니다.
다음이 필요합니다.
- 지원되는 HSM
- HSM PKI(Public-Key Cryptography Standard) #11 라이브러리
- 사용 가능한 슬롯, 토큰 및 토큰 암호
HSM에 저장된 키가 있는 CA 또는 KRA를 설치하려면 토큰 이름과 PKCS#11 라이브러리의 경로를 지정해야 합니다. 예를 들면 다음과 같습니다.
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers --token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers --token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
이제 named
에서 OpenSSL을 사용하여 DNSSEC 검증을 확인합니다.
RHEL 9에서 IdM(Identity Management)에서 이름이 지정된
데몬은 OpenSSL PKCS#11 엔진을 채택하여 디지털 서명으로 DNS 데이터를 보호하여 공격으로부터 DNS를 보호했습니다. RHEL 8에서 IdM은 이러한 목적으로
이라는 특수 버전의 bind 패키지를 사용했습니다. 또한 이번 업데이트에서는 bind
-pkcs11bind-pkcs11-utils
패키지를 제거합니다. opensc
패키지의 pkcs11-tool
을 사용하여 PKCS#11 토큰 또는 저장된 키를 대신 관리합니다.