19장. Ansible을 사용하여 IdM의 그룹 멤버십 자동화
자동 그룹 멤버십을 사용하면 사용자 및 호스트 사용자 그룹과 호스트 그룹을 속성에 따라 자동으로 할당할 수 있습니다. 예를 들면 다음을 수행할 수 있습니다.
-
직원의 사용자 항목을 직원 관리자, 위치, 위치 또는 기타 특성에 따라 그룹으로 나눕니다. 명령행에
ipa user-add --help
를 입력하여 모든 속성을 나열할 수 있습니다. -
호스트를 클래스, 위치 또는 기타 특성에 따라 그룹으로 나눕니다. 명령행에
ipa host-add --help
를 입력하여 모든 특성을 나열할 수 있습니다. - 모든 사용자 또는 모든 호스트를 하나의 글로벌 그룹에 추가합니다.
Red Hat Ansible Engine을 사용하여 IdM(Identity Management)에서 자동 그룹 멤버십 관리를 자동화할 수 있습니다.
이 섹션에서는 다음 주제를 다룹니다.
19.1. IdM 관리를 위한 Ansible 제어 노드 준비
IdM(Identity Management)을 관리하는 시스템 관리자로서 Red Hat Ansible Engine을 사용하여 작업할 때 다음을 수행하는 것이 좋습니다.
- 홈 디렉터리에서 Ansible 플레이북 전용 하위 디렉터리(예: ~/MyPlaybooks )를 생성합니다.
-
/usr
/share/doc/ansible-freeipa/* 및
디렉터리 및 하위 디렉터리에서 ~/MyPlaybooks 디렉터리에 샘플 Ansible 플레이북을 복사 및 조정합니다./usr/share/doc
/rhel-system-roles/* - 인벤토리 파일을 ~/MyPlaybooks 디렉터리에 포함합니다.
이 연습을 수행하면 모든 플레이북을 한 곳에서 찾을 수 있으며 root 권한을 호출하지 않고 플레이북을 실행할 수 있습니다.
ipaserver
,ipareplica
,ipaclient
,ipabackup
,ipasmartcard_server
및 ipasmartcard_client
ansible-freeipa
역할을 실행하려면 관리형 노드에서만 root
권한이 필요합니다. 이러한 역할을 수행하려면 디렉터리 및 dnf
소프트웨어 패키지 관리자에 대한 액세스 권한이 필요합니다.
Ansible 플레이북을 저장하고 실행하는 데 사용할 수 있도록 ~/MyPlaybooks 디렉터리를 생성하고 구성하려면 다음 절차를 따르십시오.
사전 요구 사항
- 관리형 노드인 server.idm.example .com 및 replica.idm.example.com에 IdM 서버를 설치했습니다.
- 제어 노드에서 직접 관리형 노드인 server.idm.example.com 및 replica.idm.example.com 에 로그인할 수 있도록 DNS 및 네트워킹을 구성했습니다.
-
IdM
관리자
암호를 알고 있습니다.
절차
홈 디렉터리에서 Ansible 구성 및 플레이북의 디렉터리를 생성합니다.
$ mkdir ~/MyPlaybooks/
~/MyPlaybooks/ 디렉터리로 변경합니다.
$ cd ~/MyPlaybooks
다음 콘텐츠를 사용하여 ~/Myplaybooks/ansible.cfg 파일을 만듭니다.
[defaults] inventory = /home/your_username/MyPlaybooks/inventory [privilege_escalation] become=True
다음 콘텐츠를 사용하여 ~/Myplaybooks/inventory 파일을 만듭니다.
[ipaserver] server.idm.example.com [ipareplicas] replica1.idm.example.com replica2.idm.example.com [ipacluster:children] ipaserver ipareplicas [ipacluster:vars] ipaadmin_password=SomeADMINpassword [ipaclients] ipaclient1.example.com ipaclient2.example.com [ipaclients:vars] ipaadmin_password=SomeADMINpassword
이 구성은 이러한 위치에 있는 호스트에 대한 두 개의 호스트 그룹인 eu 와 us 를 정의합니다. 또한 이 구성은 eu 및 us 그룹의 모든 호스트를 포함하는 ipaserver 호스트 그룹을 정의합니다.
[선택 사항] SSH 공개 및 개인 키를 생성합니다. 테스트 환경에서 액세스를 간소화하려면 개인 키에 암호를 설정하지 마십시오.
$ ssh-keygen
SSH 공개 키를 각 관리 노드의 IdM
admin
계정에 복사합니다.$ ssh-copy-id admin@server.idm.example.com $ ssh-copy-id admin@replica.idm.example.com
이러한 명령을 입력할 때 IdM
관리자
암호를 입력해야 합니다.