Red Hat Training

A Red Hat training course is available for RHEL 8

34.8. 신뢰 설정

이 섹션에서는 명령줄을 사용하여 IdM 측에 대해 IdM(Identity Management)/AD(Identity Management)/Active Directory를 구성하는 방법을 설명합니다.

사전 요구 사항

34.8.1. 신뢰를 위한 IdM 서버 준비

AD를 사용한 신뢰를 구축하기 전에 IdM 서버에서 ipa-adtrust-install 유틸리티를 사용하여 IdM 도메인을 준비해야 합니다.

참고

ipa-adtrust-install 명령을 실행하는 시스템은 자동으로 AD 신뢰 컨트롤러가 됩니다. 그러나 IdM 서버에서 ipa-adtrust-install 을 한 번만 실행해야 합니다.

사전 요구 사항

  • IdM 서버가 설치되어 있어야 합니다.
  • 패키지를 설치하고 IdM 서비스를 다시 시작하려면 루트 권한이 필요합니다.

절차

  1. 필수 패키지를 설치합니다.

    [root@ipaserver ~]# yum install ipa-server-trust-ad samba-client
  2. IdM 관리자로 인증합니다.

    [root@ipaserver ~]# kinit admin
  3. ipa-adtrust-install 유틸리티를 실행합니다.

    [root@ipaserver ~]# ipa-adtrust-install

    IdM이 통합된 DNS 서버와 함께 설치된 경우 DNS 서비스 레코드가 자동으로 생성됩니다.

    통합된 DNS 서버 없이 IdM을 설치한 경우, ipa-adtrust-install 은 DNS에 수동으로 추가해야 하는 서비스 레코드 목록을 인쇄합니다.

  4. 스크립트에서 /etc/samba/smb.conf가 이미 존재하고 다시 작성됨을 묻는 메시지를 표시합니다.

    WARNING: The smb.conf already exists. Running ipa-adtrust-install will break your existing Samba configuration.
    
    Do you wish to continue? [no]: yes
  5. 스크립트에서 이전 Linux 클라이언트가 신뢰할 수 있는 사용자로 작업할 수 있는 호환성 플러그인인 slapi-nis 플러그인을 구성하도록 프롬프트를 표시합니다.

    Do you want to enable support for trusted domains in Schema Compatibility plugin?
    This will allow clients older than SSSD 1.9 and non-Linux clients to work with trusted users.
    
    Enable trusted domains support in slapi-nis? [no]: yes
  6. 메시지가 표시되면 IdM 도메인의 NetBIOS 이름을 입력하거나 Enter 를 눌러 제안된 이름을 수락합니다.

    Trust is configured but no NetBIOS domain name found, setting it now.
    Enter the NetBIOS name for the IPA domain.
    Only up to 15 uppercase ASCII letters, digits and dashes are allowed.
    Example: EXAMPLE.
    
    NetBIOS domain name [IDM]:
  7. SID 생성 작업을 실행하여 기존 사용자의 SID를 생성하라는 메시지가 표시됩니다.

    Do you want to run the ipa-sidgen task? [no]: yes

    이는 리소스 집약적인 작업이므로 사용자가 많은 경우 한 번에 이 작업을 실행할 수 있습니다.

  8. (선택 사항) 기본적으로 Dynamic RPC 포트 범위는 Windows Server 2008 이상에서는 49152-65535 로 정의됩니다. 환경에 대해 다른 Dynamic RPC 포트 범위를 정의해야 하는 경우 다른 포트를 사용하도록 Samba를 구성하고 방화벽 설정에서 해당 포트를 엽니다. 다음 예제에서는 포트 범위를 55000-65000으로 설정합니다.

    [root@ipaserver ~]# net conf setparm global 'rpc server dynamic port range' 55000-65000
    [root@ipaserver ~]# firewall-cmd --add-port=55000-65000/tcp
    [root@ipaserver ~]# firewall-cmd --runtime-to-permanent
  9. 트러스트의 DNS 구성 확인에 설명된 대로 DNS가 올바르게 구성되었는지 확인합니다.

    중요

    ipa-ad trust-install 을 실행한 후 언제든지 DNS 구성 확인에 설명된 대로 DNS 구성을 확인할 것을 강력히 권장합니다. 특히 IdM 또는 AD에서 통합 DNS 서버를 사용하지 않는 경우.

  10. ipa 서비스를 다시 시작하십시오.

    [root@ipaserver ~]# ipactl restart
  11. smbclient 유틸리티를 사용하여 Samba가 IdM 측에서 Kerberos 인증에 응답하는지 확인합니다.

    [root@ipaserver ~]# smbclient -L server.idm.example.com -U user_name --use-kerberos=required
    lp_load_ex: changing to config backend registry
        Sharename       Type      Comment
        ---------       ----      -------
        IPC$            IPC       IPC Service (Samba 4.15.2)
    ...

34.8.2. 명령줄을 사용하여 신뢰 계약 설정

명령줄을 사용하여 신뢰 계약을 설정하려면 다음 절차를 따르십시오. IdM(Identity Management) 서버를 사용하면 세 가지 유형의 신뢰 계약을 구성할 수 있습니다.

  • 단방향 신뢰 data bind-default 옵션. 단방향 트러스트를 사용하면 AD(Active Directory) 사용자 및 그룹이 IdM의 리소스에 액세스할 수 있지만 다른 방법은 액세스할 수 없습니다. IdM 도메인은 AD forest을 신뢰하지만 AD forest에서 IdM 도메인을 신뢰하지 않습니다.
  • AD 사용자 및 그룹이 IdM의 리소스에 액세스할 수 있도록 2방향 신뢰 tektonTwo-way 트러스트를 사용할 수 있습니다.

    신뢰 경계를 통해 작동하도록 S4U2SelfS4U2Proxy Microsoft 확장이 예상되는 Microsoft SQL Server와 같은 솔루션에 대해 양방향 신뢰를 구성해야 합니다. RHEL IdM 호스트의 애플리케이션은 AD 사용자에 대한 Active Directory 도메인 컨트롤러에서 S4U2Self 또는 S4U2Proxy 정보를 요청할 수 있으며 양방향 신뢰는 이 기능을 제공합니다.

    이 양방향 신뢰 기능은 IdM 사용자가 Windows 시스템에 로그인하는 것을 허용하지 않으며, IdM의 양방향 신뢰 솔루션은 사용자에게 AD의 단방향 신뢰 솔루션에 비해 추가 권한을 부여하지 않습니다.

    • 양방향 신뢰를 만들려면 명령에 다음 옵션을 추가하십시오. --two-way=true
  • 외부 신뢰 - IdM과 다른 extra의 AD 도메인 간의 신뢰 관계입니다. tree 신뢰는 항상 Active Directory domain의 IdM과 루트 도메인 간의 신뢰를 설정하는 반면, 외부 신뢰는 IdM에서 domain 내 도메인으로 설정할 수 있습니다. 관리 또는 조직의 이유로 dejoration 루트 도메인 간에 Failed 트러스트를 설정할 수 없는 경우에만 이 방법을 사용하는 것이 좋습니다.

    • 외부 신뢰를 생성하려면 명령에 다음 옵션을 추가합니다. --external=true

아래 단계에서는 단방향 신뢰 계약을 생성하는 방법을 보여줍니다.

사전 요구 사항

절차

  • ipa trust-add 명령을 사용하여 AD 도메인 및 IdM 도메인에 대한 신뢰 계약을 생성합니다.

    • SSSD를 사용하여 STS를 기반으로 AD 사용자의 UID 및 GID를 자동으로 생성할 수 있도록 하려면 Active Directory 도메인 ID 범위 유형과의 신뢰 계약을 생성합니다. 가장 일반적인 구성입니다.

      [root@server ~]# ipa trust-add --type=ad ad.example.com --admin <ad_admin_username> --password --range-type=ipa-ad-trust
    • Active Directory에서 사용자에 대한 POSIX 특성(예: uidNumbergidNumber)을 구성하고 SSSD가 이 정보를 처리하려는 경우 POSIX 속성 ID 범위 유형으로 Active Directory 도메인과 의 신뢰 계약을 생성합니다.

      [root@server ~]# ipa trust-add --type=ad ad.example.com --admin <ad_admin_username> --password --range-type=ipa-ad-trust-posix
주의

신뢰를 생성할 때 ID 범위 유형을 지정하지 않으면 IdM은 tree 루트 도메인의 AD 도메인 컨트롤러에서 세부 정보를 요청하여 적절한 범위 유형을 자동으로 선택합니다. IdM에서 POSIX 속성을 감지하지 않으면 신뢰 설치 스크립트에서 Active Directory 도메인 ID 범위를 선택합니다.

IdM이 forest 루트 도메인의 POSIX 속성을 감지하면 신뢰 설치 스크립트에서 POSIX 속성 ID 범위를 사용하여 Active Directory 도메인 을 선택하고 UID 및 GID가 AD에 올바르게 정의되었다고 가정합니다. POSIX 속성이 AD에서 올바르게 설정되지 않은 경우 AD 사용자를 확인할 수 없습니다.

예를 들어, IdM 시스템에 액세스해야 하는 사용자와 그룹이 Lake 루트 도메인의 일부가 아닌 경우 설치 스크립트가 하위 AD 도메인에 정의된 POSIX 특성을 탐지하지 못할 수 있습니다. 이 경우 신뢰를 설정할 때 POSIX ID 범위 유형을 명시적으로 선택하는 것이 좋습니다.

34.8.3. IdM 웹 UI에서 신뢰 계약 설정

IdM 웹 UI를 사용하여 IdM 측에서 IdM(Identity Management)/Active Directory(AD) 신뢰 계약을 구성하려면 다음 절차를 따르십시오.

사전 요구 사항

  • DNS가 올바르게 구성되어 있습니다. IdM 및 AD 서버 모두 서로 다른 이름을 확인할 수 있어야 합니다.
  • 지원되는 AD 및 IdM 버전이 배포됩니다.
  • Kerberos 티켓을 받을 수 있습니다.
  • 웹 UI에 신뢰를 생성하기 전에 다음과 같이 트러스트를 위해 IdM 서버를 준비합니다. 신뢰를 위해 IdM 서버 준비.
  • IdM 관리자로 로그인해야 합니다.

절차

  1. 관리자 권한으로 IdM 웹 UI에 로그인합니다. 자세한 내용은 웹 브라우저에서 IdM 웹 UI 액세스를 참조하십시오.
  2. IdM 웹 UI에서 IPA 서버 탭을 클릭합니다.
  3. IPA 서버 탭에서 신뢰 탭을 클릭합니다.
  4. 드롭다운 메뉴에서 신뢰 옵션을 선택합니다.

    The Trusts section of the IdM WebUI displays a drop-down menu with two options

  5. Add (추가) 버튼을 클릭합니다.
  6. 신뢰 추가 대화 상자에서 Active Directory 도메인의 이름을 입력합니다.
  7. 계정암호 필드에서 Active Directory 관리자의 관리자 자격 증명을 추가합니다.

    ipa trust add

  8. (선택 사항) AD 사용자와 그룹이 IdM의 리소스에 액세스할 수 있도록 하려면 양방향 트러스트 를 선택합니다. 그러나 IdM의 양방향 신뢰는 사용자에게 AD의 단방향 신뢰 솔루션과 비교하여 추가 권한을 제공하지 않습니다. 두 솔루션 모두 기본 cross-forest trust traces 필터링 설정으로 인해 동일하게 안전한 것으로 간주됩니다.
  9. (선택 사항) Active Directory의 루트 도메인이 아닌 AD 도메인을 사용하여 트러스트를 구성하는 경우 외부 신뢰를 선택합니다. tree 신뢰는 항상 Active Directory forest의 IdM과 루트 도메인 간의 신뢰를 설정해야 하지만, IdM에서 AD domain 내의 모든 도메인으로 외부 신뢰를 구축할 수 있습니다.
  10. (선택 사항) 기본적으로 신뢰 설치 스크립트는 적절한 ID 범위 유형을 탐지합니다. 다음 옵션 중 하나를 선택하여 ID 범위 유형을 명시적으로 설정할 수도 있습니다.

    1. SSSD를 사용하여 STS를 기반으로 AD 사용자의 UID 및 GID를 자동으로 생성할 수 있도록 하려면 Active Directory 도메인 ID 범위 유형을 선택합니다. 가장 일반적인 구성입니다.
    2. Active Directory에서 사용자에 대한 POSIX 속성(예: uidNumbergidNumber)을 구성하고 SSSD가 이 정보를 처리하려는 경우 POSIX 속성 ID 범위 유형으로 Active Directory 도메인 을 선택합니다.

      The Range Type section of the IdM WebUI displays 3 radio buttons to choose the appropriate range type - Detect

      주의

      기본 검색 옵션에서 Range 유형 설정을 그대로 두면 IdM은 tree 루트 도메인의 AD 도메인 컨트롤러에서 세부 정보를 요청하여 적절한 범위 유형을 자동으로 선택합니다. IdM에서 POSIX 속성을 감지하지 않으면 신뢰 설치 스크립트에서 Active Directory 도메인 ID 범위를 선택합니다.

      IdM이 forest 루트 도메인의 POSIX 속성을 감지하면 신뢰 설치 스크립트에서 POSIX 속성 ID 범위를 사용하여 Active Directory 도메인 을 선택하고 UID 및 GID가 AD에 올바르게 정의되었다고 가정합니다. POSIX 속성이 AD에서 올바르게 설정되지 않은 경우 AD 사용자를 확인할 수 없습니다.

      예를 들어, IdM 시스템에 액세스해야 하는 사용자와 그룹이 Lake 루트 도메인의 일부가 아닌 경우 설치 스크립트가 하위 AD 도메인에 정의된 POSIX 특성을 탐지하지 못할 수 있습니다. 이 경우 신뢰를 설정할 때 POSIX ID 범위 유형을 명시적으로 선택하는 것이 좋습니다.

  11. 추가를 클릭합니다.

검증 단계

  • IdM 서버에 신뢰가 성공적으로 추가되면 IdM 웹 UI에 녹색 팝업 창을 볼 수 있습니다. 이는 다음을 의미합니다.

    • 도메인 이름
    • Windows Server의 사용자 이름 및 암호가 올바르게 추가되었습니다.

      The Trusts section of the IdM WebUI displays a list of the trusts added and 2 buttons

이제 신뢰 연결 및 Kerberos 인증을 계속 테스트할 수 있습니다.

34.8.4. Ansible을 사용하여 신뢰 계약 설정

Ansible 플레이북을 사용하여 IdM(Identity Management)과 AD(Active Directory) 간에 단방향 신뢰 계약을 설정하려면 다음 절차를 따르십시오. 다음과 같은 세 가지 유형의 트러스트 계약을 구성할 수 있습니다.

  • 단방향 신뢰 data bind-default 옵션. 단방향 트러스트를 사용하면 AD(Active Directory) 사용자 및 그룹이 IdM의 리소스에 액세스할 수 있지만 다른 방법은 액세스할 수 없습니다. IdM 도메인은 AD forest을 신뢰하지만 AD forest에서 IdM 도메인을 신뢰하지 않습니다.
  • AD 사용자 및 그룹이 IdM의 리소스에 액세스할 수 있도록 2방향 신뢰 tektonTwo-way 트러스트를 사용할 수 있습니다.

    신뢰 경계를 통해 작동하도록 S4U2SelfS4U2Proxy Microsoft 확장이 예상되는 Microsoft SQL Server와 같은 솔루션에 대해 양방향 신뢰를 구성해야 합니다. RHEL IdM 호스트의 애플리케이션은 AD 사용자에 대한 Active Directory 도메인 컨트롤러에서 S4U2Self 또는 S4U2Proxy 정보를 요청할 수 있으며 양방향 신뢰는 이 기능을 제공합니다.

    이 양방향 신뢰 기능은 IdM 사용자가 Windows 시스템에 로그인하는 것을 허용하지 않으며, IdM의 양방향 신뢰 솔루션은 사용자에게 AD의 단방향 신뢰 솔루션에 비해 추가 권한을 부여하지 않습니다.

    • 양방향 신뢰를 생성하려면 아래 플레이북 작업에 다음 변수를 추가합니다. two_way: true
  • 외부 신뢰 - IdM과 다른 extra의 AD 도메인 간의 신뢰 관계입니다. tree 신뢰는 항상 Active Directory domain의 IdM과 루트 도메인 간의 신뢰를 설정하는 반면, 외부 신뢰는 IdM에서 domain 내 도메인으로 설정할 수 있습니다. 관리 또는 조직의 이유로 dejoration 루트 도메인 간에 Failed 트러스트를 설정할 수 없는 경우에만 이 방법을 사용하는 것이 좋습니다.

    • 외부 신뢰를 생성하려면 아래 플레이북 작업에 다음 변수를 추가합니다. external: true

사전 요구 사항

  • Windows 관리자의 사용자 이름 및 암호입니다.
  • IdM 관리자 암호입니다.
  • IdM 서버가 신뢰에 사용할 준비가 되어 있습니다.
  • 4.8.7 버전의 IdM을 사용하고 있습니다. 서버에 설치한 IdM 버전을 보려면 ipa --version 를 실행합니다.
  • 다음 요구 사항을 충족하도록 Ansible 제어 노드를 구성했습니다.

    • Ansible 버전 2.14 이상을 사용하고 있습니다.
    • Ansible 컨트롤러에 ansible-freeipa 패키지가 설치되어 있습니다.
    • 이 예제에서는 ~/MyPlaybook/ 디렉터리에서 IdM 서버의 FQDN(정규화된 도메인 이름)을 사용하여 Ansible 인벤토리 파일을 생성했다고 가정합니다.
    • 이 예제에서는 secret.yml Ansible 자격 증명 모음이 ipaadmin_password 를 저장하는 것으로 가정합니다.
  • ansible-freeipa 모듈이 실행되는 노드인 대상 노드는 IdM 도메인의 일부인 IdM 클라이언트, 서버 또는 복제본입니다.

절차

  1. ~/MyPlaybooks/ 디렉터리로 이동합니다.

    $ cd ~/MyPlaybooks/
  2. 사용 사례에 따라 다음 시나리오 중 하나를 선택합니다.

    • ID 매핑 신뢰 계약을 생성하려면 SSSD에서 libc를 기반으로 AD 사용자 및 그룹의 UID 및 GID를 자동으로 생성하는 경우 다음 콘텐츠를 사용하여 add-trust.yml 플레이북을 생성합니다.

      ---
      - name: Playbook to create a trust
        hosts: ipaserver
      
        vars_files:
        - /home/user_name/MyPlaybooks/secret.yml
        tasks:
          - name: ensure the trust is present
            ipatrust:
              ipaadmin_password: "{{ ipaadmin_password }}"
              realm: ad.example.com
              admin: Administrator
              password: secret_password
              range_type: ipa-ad-trust
              state: present

      예에서는 다음을 수행합니다.

      • realm 은 AD 영역 이름 문자열을 정의합니다.
      • admin 은 AD 도메인 관리자 문자열을 정의합니다.
      • password 는 AD 도메인 관리자의 암호 문자열을 정의합니다.
    • POSIX 신뢰 계약을 만들려면 SSSD에서 AD에 저장된 POSIX 속성(예: uidNumbergidNumber )을 처리하는 경우 다음 콘텐츠를 사용하여 add-trust.yml 플레이북을 만듭니다.

      ---
      - name: Playbook to create a trust
        hosts: ipaserver
      
        vars_files:
        - /home/user_name/MyPlaybooks/secret.yml
        tasks:
          - name: ensure the trust is present
            ipatrust:
              ipaadmin_password: "{{ ipaadmin_password }}"
              realm: ad.example.com
              admin: Administrator
              password: secret_password
              range_type: ipa-ad-trust-posix
              state: present
    • VirtIO 루트 도메인의 AD 도메인 컨트롤러에서 다음 콘텐츠를 사용하여 세부 정보를 요청하여 IdM에서 적절한 범위 유형, ipa-ad-trust 또는 ipa-ad-trust-posix 를 자동으로 선택하려는 신뢰 계약을 생성하려면 다음 콘텐츠를 사용하여 add-trust.yml 플레이북을 생성합니다.

      ---
      - name: Playbook to create a trust
        hosts: ipaserver
      
        vars_files:
        - /home/user_name/MyPlaybooks/secret.yml
        tasks:
          - name: ensure the trust is present
            ipatrust:
              ipaadmin_password: "{{ ipaadmin_password }}"
              realm: ad.example.com
              admin: Administrator
              password: secret_password
              state: present
    주의

    신뢰를 생성할 때 ID 범위 유형을 지정하지 않고 IdM에서 AD forest 루트 도메인의 POSIX 속성을 검색하지 않으면 신뢰 설치 스크립트에서 Active Directory 도메인 ID 범위를 선택합니다.

    IdM이 forest 루트 도메인의 POSIX 속성을 감지하면 신뢰 설치 스크립트에서 POSIX 속성 ID 범위를 사용하여 Active Directory 도메인 을 선택하고 UID 및 GID가 AD에 올바르게 정의되었다고 가정합니다.

    그러나 POSIX 속성이 AD에서 올바르게 설정되지 않으면 AD 사용자를 확인할 수 없습니다. 예를 들어, IdM 시스템에 액세스해야 하는 사용자와 그룹이 Lake 루트 도메인의 일부가 아닌 경우 설치 스크립트가 하위 AD 도메인에 정의된 POSIX 특성을 탐지하지 못할 수 있습니다. 이 경우 신뢰를 설정할 때 POSIX ID 범위 유형을 명시적으로 선택하는 것이 좋습니다.

  3. 파일을 저장합니다.
  4. Ansible 플레이북을 실행합니다. Playbook 파일, secret.yml 파일을 보호하는 암호를 저장하는 파일, 인벤토리 파일을 지정합니다.

    $ ansible-playbook --vault-password-file=password_file -v -i inventory add-trust.yml

추가 리소스

  • /usr/share/doc/ansible-freeipa/README-trust.md
  • /usr/share/doc/ansible-freeipa/playbooks/trust

34.8.5. Kerberos 구성 확인

Kerberos 구성을 확인하려면 IdM(Identity Management) 사용자의 티켓을 받을 수 있고 IdM 사용자가 서비스 티켓을 요청할 수 있는지 테스트합니다.

절차

  1. AD(Active Directory) 사용자를 위한 티켓을 요청하십시오.

    [root@ipaserver ~]# kinit user@AD.EXAMPLE.COM
  2. IdM 도메인 내의 서비스에 대한 서비스 티켓을 요청합니다.

    [root@server ~]# kvno -S host server.idm.example.com

    AD 서비스 티켓이 성공적으로 부여되면 요청된 다른 모든 티켓과 함께 cross-realm 티켓-granting 티켓 (TGT)이 기재되어 있습니다. TGT의 이름은 jenkinsfiletgt/IPA.DOMAIN@AD.DOMAIN입니다.

[root@server ]# klist
Ticket cache: KEYRING:persistent:0:krb_ccache_hRtox00
Default principal: user@AD.EXAMPLE.COM

Valid starting       Expires              Service principal
03.05.2016 18:31:06  04.05.2016 04:31:01  host/server.idm.example.com@IDM.EXAMPLE.COM
	renew until 04.05.2016 18:31:00
03.05.2016 18:31:06 04.05.2016 04:31:01 krbtgt/IDM.EXAMPLE.COM@AD.EXAMPLE.COM
	renew until 04.05.2016 18:31:00
03.05.2016 18:31:01  04.05.2016 04:31:01  krbtgt/AD.EXAMPLE.COM@AD.EXAMPLE.COM
	renew until 04.05.2016 18:31:00

localauth 플러그인은 Kerberos 주체를 로컬 SSSD(System Security Services Daemon) 사용자 이름에 매핑합니다. 이를 통해 AD 사용자는 Kerberos 인증을 사용하고 GSSAPI 인증을 직접 지원하는 Linux 서비스에 액세스할 수 있습니다.

34.8.6. IdM의 신뢰 구성 확인

신뢰를 구성하기 전에 IdM(Identity Management) 및 AD(Active Directory) 서버가 서로 해결할 수 있는지 확인합니다.

사전 요구 사항

  • 관리자 권한으로 로그인해야 합니다.

절차

  1. TCP 서비스 레코드를 통해 UDP 및 LDAP를 통해 MS DC Kerberos에 대한 DNS 쿼리를 실행합니다.

    [root@server ~]# dig +short -t SRV _kerberos._udp.dc._msdcs.idm.example.com.
    0 100 88 server.idm.example.com.
    
    [root@server ~]# dig +short -t SRV _ldap._tcp.dc._msdcs.idm.example.com.
    0 100 389 server.idm.example.com.

    이 명령을 실행하면 ipa-adtrust-install 이 실행된 모든 IdM 서버가 나열됩니다. 첫 번째 신뢰 관계를 설정하기 전에 일반적으로 IdM 서버에서 ipa-adtrust-install 을 실행하지 않은 경우 출력이 비어 있습니다.

  2. TCP 서비스 레코드를 통해 Kerberos 및 LDAP에 대한 DNS 쿼리를 실행하여 IdM에서 AD의 서비스 레코드를 확인할 수 있는지 확인합니다.

    [root@server ~]# dig +short -t SRV _kerberos._tcp.dc._msdcs.ad.example.com.
    0 100 88 addc1.ad.example.com.
    
    [root@ipaserver ~]# dig +short -t SRV _ldap._tcp.dc._msdcs.ad.example.com.
    0 100 389 addc1.ad.example.com.

.

34.8.7. AD에서 신뢰 구성 확인

신뢰를 구성한 후 다음을 확인합니다.

  • IdM(Identity Management) 호스트 서비스는 AD(Active Directory) 서버에서 확인할 수 있습니다.
  • AD 서비스는 AD 서버에서 확인할 수 있습니다.

사전 요구 사항

  • 관리자 권한으로 로그인해야 합니다.

절차

  1. AD 서버에서 nslookup.exe 유틸리티를 설정하여 서비스 레코드를 조회합니다.

    C:\>nslookup.exe
    > set type=SRV
  2. TCP 서비스 레코드를 통해 UDP 및 LDAP를 통해 Kerberos의 도메인 이름을 입력합니다.

    > _kerberos._udp.idm.example.com.
    _kerberos._udp.idm.example.com.       SRV service location:
        priority                = 0
        weight                  = 100
        port                    = 88
        svr hostname   = server.idm.example.com
    > _ldap._tcp.idm.example.com
    _ldap._tcp.idm.example.com       SRV service location:
        priority                = 0
        weight                  = 100
        port                    = 389
        svr hostname   = server.idm.example.com
  3. 서비스 유형을 TXT로 변경하고 IdM Kerberos 영역 이름을 사용하여 TXT 레코드에 대한 DNS 쿼리를 실행합니다.

    C:\>nslookup.exe
    > set type=TXT
    > _kerberos.idm.example.com.
    _kerberos.idm.example.com.        text =
    
        "IDM.EXAMPLE.COM"
  4. TCP 서비스 레코드를 통해 UDP 및 LDAP를 통해 MS DC Kerberos에 대한 DNS 쿼리를 실행합니다.

    C:\>nslookup.exe
    > set type=SRV
    > _kerberos._udp.dc._msdcs.idm.example.com.
    _kerberos._udp.dc._msdcs.idm.example.com.        SRV service location:
        priority = 0
        weight = 100
        port = 88
        svr hostname = server.idm.example.com
    > _ldap._tcp.dc._msdcs.idm.example.com.
    _ldap._tcp.dc._msdcs.idm.example.com.        SRV service location:
        priority = 0
        weight = 100
        port = 389
        svr hostname = server.idm.example.com

    Active Directory는 다른 AD 도메인 컨트롤러 및 IdM 신뢰 컨트롤러와 같은 AD 특정 프로토콜 요청에 응답할 수 있는 도메인 컨트롤러만 검색합니다. ipa-adtrust-install 툴을 사용하여 IdM 서버를 신뢰 컨트롤러로 승격하고 ipa server-role-find --role 'AD trust controller' 명령을 사용하여 어떤 서버가 신뢰 컨트롤러인지 확인할 수 있습니다.

  5. AD 서버에서 AD 서비스를 확인할 수 있는지 확인합니다.

    C:\>nslookup.exe
    > set type=SRV
  6. TCP 서비스 레코드를 통해 UDP 및 LDAP를 통해 Kerberos의 도메인 이름을 입력합니다.

    > _kerberos._udp.dc._msdcs.ad.example.com.
    _kerberos._udp.dc._msdcs.ad.example.com. 	SRV service location:
        priority = 0
        weight = 100
        port = 88
        svr hostname = addc1.ad.example.com
    > _ldap._tcp.dc._msdcs.ad.example.com.
    _ldap._tcp.dc._msdcs.ad.example.com. 	SRV service location:
        priority = 0
        weight = 100
        port = 389
        svr hostname = addc1.ad.example.com

34.8.8. 신뢰 에이전트 생성

신뢰 에이전트는 AD 도메인 컨트롤러에 대해 ID 조회를 수행할 수 있는 IdM 서버입니다.

예를 들어 Active Directory와의 신뢰가 있는 IdM 서버의 복제본을 생성하는 경우 복제본을 신뢰 에이전트로 설정할 수 있습니다. 복제본에는 AD 신뢰 에이전트 역할이 자동으로 설치되지 않습니다.

사전 요구 사항

  • IdM은 Active Directory 트러스트와 함께 설치됩니다.
  • sssd-tools 패키지가 설치되어 있습니다.

절차

  1. 기존 신뢰 컨트롤러에서 ipa-adtrust-install --add-agents 명령을 실행합니다.

    [root@existing_trust_controller]# ipa-adtrust-install --add-agents

    이 명령은 대화식 구성 세션을 시작하고 에이전트를 설정하는 데 필요한 정보를 입력하라는 메시지를 표시합니다.

  2. 신뢰 에이전트에서 IdM 서비스를 다시 시작합니다.

    [root@new_trust_agent]# ipactl restart
  3. 신뢰 에이전트의 SSSD 캐시에서 모든 항목을 제거합니다.

    [root@new_trust_agent]# sssctl cache-remove
  4. 복제본에 AD 신뢰 에이전트 역할이 설치되어 있는지 확인합니다.

    [root@existing_trust_controller]# ipa server-show new_replica.idm.example.com
    ...
    Enabled server roles: CA server, NTP server, AD trust agent

추가 리소스

  • --add-agents 옵션에 대한 자세한 내용은 ipa-adtrust-install(1) 매뉴얼 페이지를 참조하십시오.
  • 신뢰 에이전트에 대한 자세한 내용은 계획 ID 관리 가이드의 컨트롤러 및 신뢰 에이전트 신뢰를 참조하십시오.

34.8.9. CLI에서 POSIX ID 범위에 대한 자동 개인 그룹 매핑 활성화

기본적으로 SSSD는 AD에 저장된 POSIX 데이터에 의존하는 POSIX 신뢰를 설정한 경우 AD(Active Directory) 사용자를 위해 개인 그룹을 매핑하지 않습니다. AD 사용자에게 기본 그룹이 구성되어 있지 않은 경우 IdM을 확인할 수 없습니다.

다음 절차에서는 명령줄에서 auto_private_groups SSSD 매개변수에 대한 하이브리드 옵션을 설정하여 ID 범위에 대한 자동 개인 그룹 매핑을 활성화하는 방법을 설명합니다. 결과적으로 IdM은 AD에 기본 그룹이 구성되지 않은 AD 사용자를 확인할 수 있습니다.

사전 요구 사항

  • IdM과 AD 환경 간에 POSIX 교차 검색을 성공적으로 설정했습니다.

절차

  1. 모든 ID 범위를 표시하고 수정하려는 AD ID 범위를 기록합니다.

    [root@server ~]# ipa idrange-find
    ----------------
    2 ranges matched
    ----------------
      Range name: IDM.EXAMPLE.COM_id_range
      First Posix ID of the range: 882200000
      Number of IDs in the range: 200000
      Range type: local domain range
    
      Range name: AD.EXAMPLE.COM_id_range
      First Posix ID of the range: 1337000000
      Number of IDs in the range: 200000
      Domain SID of the trusted domain: S-1-5-21-4123312420-990666102-3578675309
      Range type: Active Directory trust range with POSIX attributes
    ----------------------------
    Number of entries returned 2
    ----------------------------
  2. ipa idrange-mod 명령을 사용하여 AD ID 범위의 자동 개인 그룹 동작을 조정합니다.

    [root@server ~]# ipa idrange-mod --auto-private-groups=hybrid AD.EXAMPLE.COM_id_range
  3. 새 설정을 사용하도록 SSSD 캐시를 재설정합니다.

    [root@server ~]# sss_cache -E

34.8.10. IdM WebUI에서 POSIX ID 범위에 대한 자동 개인 그룹 매핑 활성화

기본적으로 SSSD는 AD에 저장된 POSIX 데이터에 의존하는 POSIX 신뢰를 설정한 경우 AD(Active Directory) 사용자를 위해 개인 그룹을 매핑하지 않습니다. AD 사용자에게 기본 그룹이 구성되어 있지 않은 경우 IdM을 확인할 수 없습니다.

이 절차에서는 IdM(Identity Management) WebUI에서 auto_private_groups SSSD 매개변수에 대한 하이브리드 옵션을 설정하여 ID 범위에 대한 자동 개인 그룹 매핑을 활성화하는 방법을 설명합니다. 결과적으로 IdM은 AD에 기본 그룹이 구성되지 않은 AD 사용자를 확인할 수 있습니다.

사전 요구 사항

  • IdM과 AD 환경 간에 POSIX 교차 검색을 성공적으로 설정했습니다.

절차

  1. 사용자 이름 및 암호를 사용하여 IdM 웹 UI에 로그인합니다.
  2. IPA 서버ID 범위 탭을 엽니다.
  3. AD.EXAMPLE.COM_id_range 와 같이 수정할 ID 범위를 선택합니다.
  4. 자동 개인 그룹 드롭다운 메뉴에서 하이브리드 옵션을 선택합니다.

    Screenshot of the ID Ranges tab of the IPA Server section of the IdM WebUI. A user selects the hybrid option from the Auth private groups dropdown menu.

  5. 저장 버튼을 클릭하여 변경 사항을 저장합니다.