33.5. Ansible에서 일회성 암호 방법을 사용하여 IdM 클라이언트 설치
IdM(Identity Management)의 새 호스트에 대해 일회성 암호(OTP)를 생성하고 이를 사용하여 IdM 도메인에 시스템을 등록할 수 있습니다. 다음 절차에서는 다른 IdM 호스트에서 OTP를 생성한 후 Ansible을 사용하여 IdM 클라이언트를 설치하는 방법을 설명합니다.
조직에 다른 권한이 있는 두 시스템 관리자가 있는 경우 IdM 클라이언트를 설치하는 이 방법을 사용할 수 있습니다.
- IdM 관리자의 인증 정보가 있는 사람입니다.
-
IdM 클라이언트가 되기 위해 호스트에 대한
root
액세스 권한을 포함하여 필요한 Ansible 자격 증명이 있는 또 다른 방법입니다.
IdM 관리자는 OTP 암호가 생성되는 절차의 첫 번째 부분을 수행합니다. Ansible 관리자는 OTP가 IdM 클라이언트를 설치하는 데 사용되는 절차의 나머지 부분을 수행합니다.
사전 요구 사항
-
IdM
관리자
인증 정보 또는 최소한호스트 등록
권한과 IdM에 DNS 레코드를 추가할 수 있는 권한이 있습니다. - IdM 클라이언트를 설치할 수 있도록 Ansible 관리 노드에 사용자 에스컬레이션 방법을 구성했습니다.
- Ansible 제어 노드가 RHEL 8.7 또는 이전 버전에서 실행 중인 경우 Ansible 제어 노드에 패키지를 설치할 수 있어야 합니다.
다음 요구 사항을 충족하도록 Ansible 제어 노드를 구성했습니다.
- Ansible 버전 2.13 이상을 사용하고 있습니다.
-
Ansible 컨트롤러에
ansible-freeipa
패키지가 설치되어 있습니다. - IdM 서버의 FQDN(정규화된 도메인 이름)을 사용하여 Ansible 인벤토리 파일을 생성했습니다.
- 관리형 노드는 고정 IP 주소와 작업 패키지 관리자가 있는 Red Hat Enterprise Linux 8 시스템입니다.
절차
호스트 등록
권한이 있고 DNS 레코드를 추가할 수 있는 권한이 있는 역할을 사용하여 IdM 사용자로 IdM 호스트에SSH
를 실행하십시오.$ ssh admin@server.idm.example.com
새 클라이언트에 대한 OTP를 생성합니다.
[admin@server ~]$ ipa host-add client.idm.example.com --ip-address=172.25.250.11 --random -------------------------------------------------- Added host "client.idm.example.com" -------------------------------------------------- Host name: client.idm.example.com Random password: W5YpARl=7M.n Password: True Keytab: False Managed by: server.idm.example.com
--ip-address= <your_host_ip_address > 옵션은 지정된 IP 주소를 사용하여 IdM DNS에 호스트를 추가합니다.
IdM 호스트를 종료합니다.
$ exit logout Connection to server.idm.example.com closed.
ansible 컨트롤러에서 임의의 암호를 포함하도록 인벤토리 파일을 업데이트합니다.
[...] [ipaclients] client.idm.example.com [ipaclients:vars] ipaclient_domain=idm.example.com ipaclient_otp=W5YpARl=7M.n [...]
ansible 컨트롤러가 RHEL 8.7 또는 이전 버전을 실행하는 경우
krb5-workstation
패키지에서 제공하는kinit
유틸리티를 설치합니다.$ sudo dnf install krb5-workstation
플레이북을 실행하여 클라이언트를 설치합니다.
$ ansible-playbook -i inventory install-client.yml