18장. IdM (Identity Management)

다음 장에서는 RHEL 8과 RHEL 9 간의 IdM(Identity Management)에 대한 주요 변경 사항이 포함되어 있습니다.

18.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
  • 통합 DNS 서비스가 있는 서버의 경우:

    # dnf install ipa-server ipa-server-dns

SSSD 암시적 파일 공급자 도메인은 기본적으로 비활성화되어 있습니다.

/etc/shadow 및 /etc/ groups 에서 그룹 정보와 같은 로컬 파일에서 사용자 정보를 검색하는 SSSD 암시적 파일 프로바이더 도메인이 이제 기본적으로 비활성화됩니다.

SSSD를 사용하여 로컬 파일에서 사용자 및 그룹 정보를 검색하려면 다음을 수행합니다.

  1. SSSD 구성. 다음 옵션 중 하나를 선택합니다.

    1. sssd.conf 구성 파일에서 id_provider=files 옵션을 사용하여 로컬 도메인을 명시적으로 구성합니다.

      [domain/local]
      id_provider=files
      ...
    2. sssd.conf 구성 파일에서 enable_files_domain=true 옵션을 설정하여 파일 공급자를 활성화합니다.

      [sssd]
      enable_files_domain = true
  2. 이름 서비스 스위치를 구성합니다.

    # authselect enable-feature with-files-provider

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

MIT IKEvrboros 클라이언트가 AES HMAC SHA-2 암호화 유형을 사용하도록 하려면 클라이언트 및 CloudEvent 구성 모두에서 허용되는 암호화 유형도 설정해야 합니다. RHEL에서 이 설정은 crypto-policy 시스템에서 관리합니다. 예를 들어 RHEL 9에서는 DEFAULT 암호화 정책을 사용하는 호스트에서는 AES HMAC SHA-2AES HMAC SHA-1 암호화 티켓을 허용하는 반면, FIPS 암호화 정책을 사용하는 호스트는 AES HMAC SHA-2 만 허용합니다.

기존 RHEL ansible-freeipa 리포지토리의 대안: Ansible Automation Hub

이번 업데이트를 통해 표준 RHEL 리포지토리에서 다운로드하는 대신 Ansible Automation Hub(AAH)에서 ansible-freeipa 모듈을 다운로드할 수 있습니다. AAH를 사용하면 이 리포지토리에서 사용할 수 있는 ansible-freeipa 모듈의 빠른 업데이트를 활용할 수 있습니다.

AAH에서 ansible-freeipa 역할 및 모듈은 컬렉션 형식으로 배포됩니다. AAH 포털의 콘텐츠에 액세스하려면 AAP(Ansible Automation Platform) 서브스크립션이 필요합니다. 또한 ansible 버전 2.14 이상이 필요합니다.

redhat.rhel_idm 컬렉션에는 기존 ansible-freeipa 패키지와 동일한 콘텐츠가 있습니다. 그러나 컬렉션 형식은 네임스페이스와 컬렉션 이름으로 구성된 정규화된 컬렉션 이름(FQCN)을 사용합니다. 예를 들어 redhat.rhel_idm.ipadnsconfig 모듈은 RHEL 리포지토리에서 제공하는 ansible-freeipaipadnsconfig 모듈에 해당합니다. 네임스페이스와 컬렉션 이름을 조합하면 개체가 고유하며 충돌 없이 공유할 수 있습니다.

SSSD 다중 스레드 성능 개선

이전 버전에서는 SSSD가 Red Hat Directory Server 및 Identity Management와 같은 다중 스레드 애플리케이션에서 병렬 요청을 직렬화했습니다. RHEL 9.1부터 nspam 와 같은 모든 SSSD 클라이언트 라이브러리는 요청을 직렬화하지 않으므로 더 나은 성능을 위해 여러 스레드의 요청을 병렬로 실행할 수 있습니다.

직렬화의 이전 동작을 활성화하려면 환경 변수 SSS_LOCKFREENO 로 설정합니다.