How To Install ansible-freeipa on CentOS 8

ansible-freeipa is Roles and playbooks to deploy FreeIPA servers, replicas and clients

Introduction

In this tutorial we learn how to install ansible-freeipa on CentOS 8.

What is ansible-freeipa

ansible-freeipa provides Ansible roles and playbooks to install and uninstall FreeIPA servers, replicas and clients. Also modules for management. Note where the ansible nodes are reachable and are properly set up to have an IP address and a working package manager. Features - Server, replica and client deployment - Cluster deployments - One-time-password (OTP) support for client installation - Repair mode for clients - Backup and restore, also to and from controller - Modules for config management - Modules for delegation management - Modules for dns config management - Modules for dns forwarder management - Modules for dns record management - Modules for dns zone management - Modules for group management - Modules for hbacrule management - Modules for hbacsvc management - Modules for hbacsvcgroup management - Modules for host management - Modules for hostgroup management - Modules for location management - Modules for permission management - Modules for privilege management - Modules for pwpolicy management - Modules for role management - Modules for self service management - Modules for service management - Modules for sudocmd management - Modules for sudocmdgroup management - Modules for sudorule management - Modules for topology management - Modules fot trust management - Modules for user management - Modules for vault management Supported FreeIPA Versions FreeIPA versions 4.6 and up are supported by all roles. The client role supports versions 4.4 and up, the server role is working with versions 4.5 and up, the replica role is currently only working with versions 4.6 and up. Supported Distributions - RHEL/CentOS 7.4+ - Fedora 26+ - Ubuntu - Debian 10+ (ipaclient only, no server or replica!) Requirements Controller - Ansible version /usr/bin/kinit is required on the controller if a one time password (OTP) is used - python3-gssapi is required on the controller if a one time password (OTP) is used with keytab to install the client. Node - Supported FreeIPA version (see above) - Supported distribution (needed for package installation only, see above) Limitations External signed CA is now supported. But the currently needed two step process is an issue for the processing in a simple playbook. Work is planned to have a new method to handle CSR for external signed CAs in a separate step before starting the server installation.

We can use yum or dnf to install ansible-freeipa on CentOS 8. In this tutorial we discuss both methods but you only need to choose one of method to install ansible-freeipa.

Install ansible-freeipa on CentOS 8 Using dnf

Update yum database with dnf using the following command.

sudo dnf makecache --refresh

The output should look something like this:

CentOS Linux 8 - AppStream                                       43 kB/s | 4.3 kB     00:00    
CentOS Linux 8 - BaseOS                                          65 kB/s | 3.9 kB     00:00    
CentOS Linux 8 - ContinuousRelease                               43 kB/s | 3.0 kB     00:00    
CentOS Linux 8 - Extras                                          23 kB/s | 1.5 kB     00:00    
CentOS Linux 8 - FastTrack                                       40 kB/s | 3.0 kB     00:00    
CentOS Linux 8 - HighAvailability                                36 kB/s | 3.9 kB     00:00    
CentOS Linux 8 - Plus                                            24 kB/s | 1.5 kB     00:00    
CentOS Linux 8 - PowerTools                                      50 kB/s | 4.3 kB     00:00    
Extra Packages for Enterprise Linux Modular 8 - x86_64           13 kB/s | 9.2 kB     00:00    
Extra Packages for Enterprise Linux 8 - x86_64                   24 kB/s | 8.5 kB     00:00    
Metadata cache created.

After updating yum database, We can install ansible-freeipa using dnf by running the following command:

sudo dnf -y install ansible-freeipa

Install ansible-freeipa on CentOS 8 Using yum

Update yum database with yum using the following command.

sudo yum makecache --refresh

The output should look something like this:

CentOS Linux 8 - AppStream                                       43 kB/s | 4.3 kB     00:00    
CentOS Linux 8 - BaseOS                                          65 kB/s | 3.9 kB     00:00    
CentOS Linux 8 - ContinuousRelease                               43 kB/s | 3.0 kB     00:00    
CentOS Linux 8 - Extras                                          23 kB/s | 1.5 kB     00:00    
CentOS Linux 8 - FastTrack                                       40 kB/s | 3.0 kB     00:00    
CentOS Linux 8 - HighAvailability                                36 kB/s | 3.9 kB     00:00    
CentOS Linux 8 - Plus                                            24 kB/s | 1.5 kB     00:00    
CentOS Linux 8 - PowerTools                                      50 kB/s | 4.3 kB     00:00    
Extra Packages for Enterprise Linux Modular 8 - x86_64           13 kB/s | 9.2 kB     00:00    
Extra Packages for Enterprise Linux 8 - x86_64                   24 kB/s | 8.5 kB     00:00    
Metadata cache created.

After updating yum database, We can install ansible-freeipa using yum by running the following command:

sudo yum -y install ansible-freeipa

How To Uninstall ansible-freeipa on CentOS 8

To uninstall only the ansible-freeipa package we can use the following command:

sudo dnf remove ansible-freeipa

ansible-freeipa Package Contents on CentOS 8

/usr/share/ansible-freeipa/requirements-dev.txt
/usr/share/ansible-freeipa/requirements.txt
/usr/share/ansible-freeipa/utils
/usr/share/ansible-freeipa/utils/ansible-doc-test
/usr/share/ansible-freeipa/utils/ansible-freeipa.spec.in
/usr/share/ansible-freeipa/utils/ansible-ipa-client-install
/usr/share/ansible-freeipa/utils/ansible-ipa-replica-install
/usr/share/ansible-freeipa/utils/ansible-ipa-server-install
/usr/share/ansible-freeipa/utils/build-galaxy-release.sh
/usr/share/ansible-freeipa/utils/build-srpm.sh
/usr/share/ansible-freeipa/utils/changelog
/usr/share/ansible-freeipa/utils/galaxyfy-README.py
/usr/share/ansible-freeipa/utils/galaxyfy-module-EXAMPLES.py
/usr/share/ansible-freeipa/utils/galaxyfy-playbook.py
/usr/share/ansible-freeipa/utils/galaxyfy.py
/usr/share/ansible-freeipa/utils/gen_module_docs.py
/usr/share/ansible-freeipa/utils/gen_modules_docs.sh
/usr/share/ansible-freeipa/utils/lint_check.sh
/usr/share/ansible-freeipa/utils/new_module
/usr/share/ansible-freeipa/utils/templates
/usr/share/ansible-freeipa/utils/templates/README-module+member.md.in
/usr/share/ansible-freeipa/utils/templates/README-module.md.in
/usr/share/ansible-freeipa/utils/templates/ipamodule+member.py.in
/usr/share/ansible-freeipa/utils/templates/ipamodule.py.in
/usr/share/ansible-freeipa/utils/templates/module-absent.yml.in
/usr/share/ansible-freeipa/utils/templates/module-member-absent.yml.in
/usr/share/ansible-freeipa/utils/templates/module-member-present.yml.in
/usr/share/ansible-freeipa/utils/templates/module-present.yml.in
/usr/share/ansible-freeipa/utils/templates/test_module+member.yml.in
/usr/share/ansible-freeipa/utils/templates/test_module.yml.in
/usr/share/ansible/plugins/module_utils
/usr/share/ansible/plugins/module_utils/ansible_freeipa_module.py
/usr/share/ansible/plugins/modules
/usr/share/ansible/plugins/modules/README.md
/usr/share/ansible/plugins/modules/ipaconfig.py
/usr/share/ansible/plugins/modules/ipadelegation.py
/usr/share/ansible/plugins/modules/ipadnsconfig.py
/usr/share/ansible/plugins/modules/ipadnsforwardzone.py
/usr/share/ansible/plugins/modules/ipadnsrecord.py
/usr/share/ansible/plugins/modules/ipadnszone.py
/usr/share/ansible/plugins/modules/ipagroup.py
/usr/share/ansible/plugins/modules/ipahbacrule.py
/usr/share/ansible/plugins/modules/ipahbacsvc.py
/usr/share/ansible/plugins/modules/ipahbacsvcgroup.py
/usr/share/ansible/plugins/modules/ipahost.py
/usr/share/ansible/plugins/modules/ipahostgroup.py
/usr/share/ansible/plugins/modules/ipalocation.py
/usr/share/ansible/plugins/modules/ipapermission.py
/usr/share/ansible/plugins/modules/ipaprivilege.py
/usr/share/ansible/plugins/modules/ipapwpolicy.py
/usr/share/ansible/plugins/modules/iparole.py
/usr/share/ansible/plugins/modules/ipaselfservice.py
/usr/share/ansible/plugins/modules/ipaservice.py
/usr/share/ansible/plugins/modules/ipasudocmd.py
/usr/share/ansible/plugins/modules/ipasudocmdgroup.py
/usr/share/ansible/plugins/modules/ipasudorule.py
/usr/share/ansible/plugins/modules/ipatopologysegment.py
/usr/share/ansible/plugins/modules/ipatopologysuffix.py
/usr/share/ansible/plugins/modules/ipatrust.py
/usr/share/ansible/plugins/modules/ipauser.py
/usr/share/ansible/plugins/modules/ipavault.py
/usr/share/ansible/roles/ipabackup
/usr/share/ansible/roles/ipabackup/README.md
/usr/share/ansible/roles/ipabackup/defaults
/usr/share/ansible/roles/ipabackup/defaults/main.yml
/usr/share/ansible/roles/ipabackup/meta
/usr/share/ansible/roles/ipabackup/meta/main.yml
/usr/share/ansible/roles/ipabackup/tasks
/usr/share/ansible/roles/ipabackup/tasks/backup.yml
/usr/share/ansible/roles/ipabackup/tasks/copy_backup_from_server.yml
/usr/share/ansible/roles/ipabackup/tasks/copy_backup_to_server.yml
/usr/share/ansible/roles/ipabackup/tasks/get_ipabackup_dir.yml
/usr/share/ansible/roles/ipabackup/tasks/main.yml
/usr/share/ansible/roles/ipabackup/tasks/remove_backup_from_server.yml
/usr/share/ansible/roles/ipabackup/tasks/restore.yml
/usr/share/ansible/roles/ipabackup/vars
/usr/share/ansible/roles/ipabackup/vars/CentOS-7.yml
/usr/share/ansible/roles/ipabackup/vars/CentOS-8.yml
/usr/share/ansible/roles/ipabackup/vars/Fedora.yml
/usr/share/ansible/roles/ipabackup/vars/OracleLinux-7.yml
/usr/share/ansible/roles/ipabackup/vars/OracleLinux-8.yml
/usr/share/ansible/roles/ipabackup/vars/RedHat-7.3.yml
/usr/share/ansible/roles/ipabackup/vars/RedHat-7.yml
/usr/share/ansible/roles/ipabackup/vars/RedHat-8.yml
/usr/share/ansible/roles/ipabackup/vars/Ubuntu.yml
/usr/share/ansible/roles/ipabackup/vars/default.yml
/usr/share/ansible/roles/ipaclient
/usr/share/ansible/roles/ipaclient/README.md
/usr/share/ansible/roles/ipaclient/action_plugins
/usr/share/ansible/roles/ipaclient/action_plugins/ipaclient_get_otp.py
/usr/share/ansible/roles/ipaclient/defaults
/usr/share/ansible/roles/ipaclient/defaults/main.yml
/usr/share/ansible/roles/ipaclient/library
/usr/share/ansible/roles/ipaclient/library/ipaclient_api.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_fix_ca.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_fstore.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_get_facts.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_get_otp.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_ipa_conf.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_join.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_set_hostname.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_setup_automount.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_setup_firefox.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_setup_krb5.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_setup_nis.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_setup_nss.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_setup_ntp.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_setup_ssh.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_setup_sssd.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_test.py
/usr/share/ansible/roles/ipaclient/library/ipaclient_test_keytab.py
/usr/share/ansible/roles/ipaclient/meta
/usr/share/ansible/roles/ipaclient/meta/main.yml
/usr/share/ansible/roles/ipaclient/module_utils
/usr/share/ansible/roles/ipaclient/module_utils/ansible_ipa_client.py
/usr/share/ansible/roles/ipaclient/tasks
/usr/share/ansible/roles/ipaclient/tasks/install.yml
/usr/share/ansible/roles/ipaclient/tasks/main.yml
/usr/share/ansible/roles/ipaclient/tasks/uninstall.yml
/usr/share/ansible/roles/ipaclient/vars
/usr/share/ansible/roles/ipaclient/vars/CentOS-7.yml
/usr/share/ansible/roles/ipaclient/vars/CentOS-8.yml
/usr/share/ansible/roles/ipaclient/vars/Debian.yml
/usr/share/ansible/roles/ipaclient/vars/Fedora-25.yml
/usr/share/ansible/roles/ipaclient/vars/Fedora-26.yml
/usr/share/ansible/roles/ipaclient/vars/OracleLinux-7.yml
/usr/share/ansible/roles/ipaclient/vars/OracleLinux-8.yml
/usr/share/ansible/roles/ipaclient/vars/RedHat-7.3.yml
/usr/share/ansible/roles/ipaclient/vars/RedHat-7.yml
/usr/share/ansible/roles/ipaclient/vars/RedHat-8.yml
/usr/share/ansible/roles/ipaclient/vars/Ubuntu.yml
/usr/share/ansible/roles/ipaclient/vars/default.yml
/usr/share/ansible/roles/ipareplica
/usr/share/ansible/roles/ipareplica/README.md
/usr/share/ansible/roles/ipareplica/defaults
/usr/share/ansible/roles/ipareplica/defaults/main.yml
/usr/share/ansible/roles/ipareplica/library
/usr/share/ansible/roles/ipareplica/library/ipareplica_add_to_ipaservers.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_create_ipa_conf.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_custodia_import_dm_password.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_ds_apply_updates.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_ds_enable_ssl.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_enable_ipa.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_install_ca_certs.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_krb_enable_ssl.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_master_password.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_prepare.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_promote_openldap_conf.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_promote_sssd.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_restart_kdc.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_adtrust.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_ca.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_certmonger.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_custodia.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_dns.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_ds.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_http.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_kra.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_krb.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_setup_otpd.py
/usr/share/ansible/roles/ipareplica/library/ipareplica_test.py
/usr/share/ansible/roles/ipareplica/meta
/usr/share/ansible/roles/ipareplica/meta/main.yml
/usr/share/ansible/roles/ipareplica/module_utils
/usr/share/ansible/roles/ipareplica/module_utils/ansible_ipa_replica.py
/usr/share/ansible/roles/ipareplica/tasks
/usr/share/ansible/roles/ipareplica/tasks/install.yml
/usr/share/ansible/roles/ipareplica/tasks/main.yml
/usr/share/ansible/roles/ipareplica/tasks/uninstall.yml
/usr/share/ansible/roles/ipareplica/vars
/usr/share/ansible/roles/ipareplica/vars/CentOS-7.yml
/usr/share/ansible/roles/ipareplica/vars/CentOS-8.yml
/usr/share/ansible/roles/ipareplica/vars/Fedora-25.yml
/usr/share/ansible/roles/ipareplica/vars/Fedora-26.yml
/usr/share/ansible/roles/ipareplica/vars/Fedora-27.yml
/usr/share/ansible/roles/ipareplica/vars/Fedora.yml
/usr/share/ansible/roles/ipareplica/vars/OracleLinux-7.yml
/usr/share/ansible/roles/ipareplica/vars/OracleLinux-8.yml
/usr/share/ansible/roles/ipareplica/vars/RedHat-7.3.yml
/usr/share/ansible/roles/ipareplica/vars/RedHat-7.yml
/usr/share/ansible/roles/ipareplica/vars/RedHat-8.yml
/usr/share/ansible/roles/ipareplica/vars/Ubuntu.yml
/usr/share/ansible/roles/ipareplica/vars/default.yml
/usr/share/ansible/roles/ipaserver
/usr/share/ansible/roles/ipaserver/README.md
/usr/share/ansible/roles/ipaserver/defaults
/usr/share/ansible/roles/ipaserver/defaults/main.yml
/usr/share/ansible/roles/ipaserver/library
/usr/share/ansible/roles/ipaserver/library/ipaserver_enable_ipa.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_load_cache.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_master_password.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_prepare.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_set_ds_password.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_adtrust.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_ca.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_custodia.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_dns.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_ds.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_http.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_kra.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_krb.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_ntp.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_setup_otpd.py
/usr/share/ansible/roles/ipaserver/library/ipaserver_test.py
/usr/share/ansible/roles/ipaserver/meta
/usr/share/ansible/roles/ipaserver/meta/main.yml
/usr/share/ansible/roles/ipaserver/module_utils
/usr/share/ansible/roles/ipaserver/module_utils/ansible_ipa_server.py
/usr/share/ansible/roles/ipaserver/tasks
/usr/share/ansible/roles/ipaserver/tasks/copy_external_cert.yml
/usr/share/ansible/roles/ipaserver/tasks/install.yml
/usr/share/ansible/roles/ipaserver/tasks/main.yml
/usr/share/ansible/roles/ipaserver/tasks/uninstall.yml
/usr/share/ansible/roles/ipaserver/vars
/usr/share/ansible/roles/ipaserver/vars/CentOS-7.yml
/usr/share/ansible/roles/ipaserver/vars/CentOS-8.yml
/usr/share/ansible/roles/ipaserver/vars/Fedora-25.yml
/usr/share/ansible/roles/ipaserver/vars/Fedora-26.yml
/usr/share/ansible/roles/ipaserver/vars/Fedora-27.yml
/usr/share/ansible/roles/ipaserver/vars/Fedora.yml
/usr/share/ansible/roles/ipaserver/vars/OracleLinux-7.yml
/usr/share/ansible/roles/ipaserver/vars/OracleLinux-8.yml
/usr/share/ansible/roles/ipaserver/vars/RedHat-7.3.yml
/usr/share/ansible/roles/ipaserver/vars/RedHat-7.yml
/usr/share/ansible/roles/ipaserver/vars/RedHat-8.yml
/usr/share/ansible/roles/ipaserver/vars/Ubuntu.yml
/usr/share/ansible/roles/ipaserver/vars/default.yml
/usr/share/doc/ansible-freeipa
/usr/share/doc/ansible-freeipa/README-backup.md
/usr/share/doc/ansible-freeipa/README-client.md
/usr/share/doc/ansible-freeipa/README-config.md
/usr/share/doc/ansible-freeipa/README-delegation.md
/usr/share/doc/ansible-freeipa/README-dnsconfig.md
/usr/share/doc/ansible-freeipa/README-dnsforwardzone.md
/usr/share/doc/ansible-freeipa/README-dnsrecord.md
/usr/share/doc/ansible-freeipa/README-dnszone.md
/usr/share/doc/ansible-freeipa/README-group.md
/usr/share/doc/ansible-freeipa/README-hbacrule.md
/usr/share/doc/ansible-freeipa/README-hbacsvc.md
/usr/share/doc/ansible-freeipa/README-hbacsvcgroup.md
/usr/share/doc/ansible-freeipa/README-host.md
/usr/share/doc/ansible-freeipa/README-hostgroup.md
/usr/share/doc/ansible-freeipa/README-location.md
/usr/share/doc/ansible-freeipa/README-permission.md
/usr/share/doc/ansible-freeipa/README-privilege.md
/usr/share/doc/ansible-freeipa/README-pwpolicy.md
/usr/share/doc/ansible-freeipa/README-replica.md
/usr/share/doc/ansible-freeipa/README-role.md
/usr/share/doc/ansible-freeipa/README-selfservice.md
/usr/share/doc/ansible-freeipa/README-server.md
/usr/share/doc/ansible-freeipa/README-service.md
/usr/share/doc/ansible-freeipa/README-sudocmd.md
/usr/share/doc/ansible-freeipa/README-sudocmdgroup.md
/usr/share/doc/ansible-freeipa/README-sudorule.md
/usr/share/doc/ansible-freeipa/README-topology.md
/usr/share/doc/ansible-freeipa/README-trust.md
/usr/share/doc/ansible-freeipa/README-user.md
/usr/share/doc/ansible-freeipa/README-vault.md
/usr/share/doc/ansible-freeipa/README.md
/usr/share/doc/ansible-freeipa/playbooks
/usr/share/doc/ansible-freeipa/playbooks/backup-server-to-controller.yml
/usr/share/doc/ansible-freeipa/playbooks/backup-server.yml
/usr/share/doc/ansible-freeipa/playbooks/config
/usr/share/doc/ansible-freeipa/playbooks/config/retrieve-config.yml
/usr/share/doc/ansible-freeipa/playbooks/config/set-ca-renewal-master-server.yml
/usr/share/doc/ansible-freeipa/playbooks/copy-all-backups-from-server.yml
/usr/share/doc/ansible-freeipa/playbooks/copy-backup-from-controller.yml
/usr/share/doc/ansible-freeipa/playbooks/copy-backup-from-server.yml
/usr/share/doc/ansible-freeipa/playbooks/delegation
/usr/share/doc/ansible-freeipa/playbooks/delegation/delegation-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/delegation/delegation-member-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/delegation/delegation-member-present.yml
/usr/share/doc/ansible-freeipa/playbooks/delegation/delegation-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig/disable-global-forwarders.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig/disallow-reverse-sync.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig/forwarders-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig/set-configuration.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsforwardzone
/usr/share/doc/ansible-freeipa/playbooks/dnsforwardzone/ensure-dnsforwardzone-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsforwardzone/ensure-dnsforwardzone-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsforwardzone/ensure-dnsforwardzone-with-forwarder-port.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-A-and-AAAA-records-are-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-A-and-AAAA-records-are-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-CNAME-record-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-CNAME-record-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-MX-record-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-PTR-record-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-SRV-record-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-SSHFP-record-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-TLSA-record-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-TXT-record-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-URI-record-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-dnsrecord-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-dnsrecord-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-dnsrecord-with-reverse-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-multiple-A-records-are-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnsrecord/ensure-presence-multiple-records.yml
/usr/share/doc/ansible-freeipa/playbooks/dnszone
/usr/share/doc/ansible-freeipa/playbooks/dnszone/disable-zone-forwarders.yml
/usr/share/doc/ansible-freeipa/playbooks/dnszone/dnszone-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/dnszone/dnszone-all-params.yml
/usr/share/doc/ansible-freeipa/playbooks/dnszone/dnszone-disable.yml
/usr/share/doc/ansible-freeipa/playbooks/dnszone/dnszone-enable.yml
/usr/share/doc/ansible-freeipa/playbooks/dnszone/dnszone-present.yml
/usr/share/doc/ansible-freeipa/playbooks/dnszone/dnszone-reverse-from-ip.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacrule
/usr/share/doc/ansible-freeipa/playbooks/hbacrule/ensure-hbarule-allhosts-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacrule/ensure-hbarule-allhosts-disabled.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacrule/ensure-hbarule-allhosts-enabled.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacrule/ensure-hbarule-allhosts-present.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacrule/ensure-hbarule-allhosts-server-member-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacrule/ensure-hbarule-allhosts-server-member-present.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacsvc
/usr/share/doc/ansible-freeipa/playbooks/hbacsvc/ensure-hbacsvc-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacsvc/ensure-hbacsvc-present.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacsvcgroup
/usr/share/doc/ansible-freeipa/playbooks/hbacsvcgroup/ensure-hbacsvcgroup-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacsvcgroup/ensure-hbacsvcgroup-member-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacsvcgroup/ensure-hbacsvcgroup-member-present.yml
/usr/share/doc/ansible-freeipa/playbooks/hbacsvcgroup/ensure-hbacsvcgroup-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host
/usr/share/doc/ansible-freeipa/playbooks/host/add-host.yml
/usr/share/doc/ansible-freeipa/playbooks/host/delete-host.yml
/usr/share/doc/ansible-freeipa/playbooks/host/disable-host.yml
/usr/share/doc/ansible-freeipa/playbooks/host/ensure_host_with_randompassword.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-allow_create_keytab-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-allow_create_keytab-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-allow_retrieve_keytab-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-allow_retrieve_keytab-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-certificate-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-certificate-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-ipaddresses-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-ipaddresses-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-managedby_host-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-managedby_host-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-principal-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-member-principal-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-present-with-allow_create_keytab.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-present-with-allow_retrieve_keytab.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-present-with-certificate.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-present-with-managedby_host.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-present-with-principal.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-present-with-randompassword.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-present-with-several-ip-addresses.yml
/usr/share/doc/ansible-freeipa/playbooks/host/host-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-member-certificate-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-member-certificate-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-member-managedby_host-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-member-managedby_host-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-member-principal-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-member-principal-present.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-present-with-certificate.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-present-with-managedby_host.yml
/usr/share/doc/ansible-freeipa/playbooks/host/hosts-present-with-randompasswords.yml
/usr/share/doc/ansible-freeipa/playbooks/hostgroup
/usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hostgroup-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hostgroup-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hosts-and-hostgroups-are-absent-in-hostgroup.yml
/usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hosts-and-hostgroups-are-present-in-hostgroup.yml
/usr/share/doc/ansible-freeipa/playbooks/hostgroup/rename-hostgroup.yml
/usr/share/doc/ansible-freeipa/playbooks/install-client.yml
/usr/share/doc/ansible-freeipa/playbooks/install-cluster.yml
/usr/share/doc/ansible-freeipa/playbooks/install-replica.yml
/usr/share/doc/ansible-freeipa/playbooks/install-server.yml
/usr/share/doc/ansible-freeipa/playbooks/location
/usr/share/doc/ansible-freeipa/playbooks/location/location-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/location/location-present.yml
/usr/share/doc/ansible-freeipa/playbooks/permission
/usr/share/doc/ansible-freeipa/playbooks/permission/permission-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/permission/permission-allow-read-employeenum.yml
/usr/share/doc/ansible-freeipa/playbooks/permission/permission-member-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/permission/permission-member-present.yml
/usr/share/doc/ansible-freeipa/playbooks/permission/permission-present.yml
/usr/share/doc/ansible-freeipa/playbooks/permission/permission-renamed.yml
/usr/share/doc/ansible-freeipa/playbooks/privilege
/usr/share/doc/ansible-freeipa/playbooks/privilege/privilege-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/privilege/privilege-member-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/privilege/privilege-member-present.yml
/usr/share/doc/ansible-freeipa/playbooks/privilege/privilege-present.yml
/usr/share/doc/ansible-freeipa/playbooks/pwpolicy
/usr/share/doc/ansible-freeipa/playbooks/pwpolicy/pwpolicy_absent.yml
/usr/share/doc/ansible-freeipa/playbooks/pwpolicy/pwpolicy_present.yml
/usr/share/doc/ansible-freeipa/playbooks/remove-all-backups-from-server.yml
/usr/share/doc/ansible-freeipa/playbooks/remove-backup-from-server.yml
/usr/share/doc/ansible-freeipa/playbooks/restore-server-from-controller.yml
/usr/share/doc/ansible-freeipa/playbooks/restore-server.yml
/usr/share/doc/ansible-freeipa/playbooks/role
/usr/share/doc/ansible-freeipa/playbooks/role/role-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-group-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-group-present.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-host-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-host-present.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-hostgroup-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-hostgroup-present.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-privilege-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-privilege-present.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-service-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-service-present.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-user-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-member-user-present.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-members-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-members-present.yml
/usr/share/doc/ansible-freeipa/playbooks/role/role-rename.yml
/usr/share/doc/ansible-freeipa/playbooks/selfservice
/usr/share/doc/ansible-freeipa/playbooks/selfservice/selfservice-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/selfservice/selfservice-member-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/selfservice/selfservice-member-present.yml
/usr/share/doc/ansible-freeipa/playbooks/selfservice/selfservice-present.yml
/usr/share/doc/ansible-freeipa/playbooks/service
/usr/share/doc/ansible-freeipa/playbooks/service/service-host-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-host-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-disabled.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-with-all-attributes.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-with-host-force.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-present-without-host-object.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-member-allow_create_keytab-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-member-allow_create_keytab-present.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-member-allow_retrieve_keytab-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-member-allow_retrieve_keytab-present.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-member-certificate-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-member-certificate-present.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-member-principal-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/service/service-member-principal-present.yml
/usr/share/doc/ansible-freeipa/playbooks/sudocmd
/usr/share/doc/ansible-freeipa/playbooks/sudocmd/ensure-sudocmd-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/sudocmd/ensure-sudocmd-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/sudocmdgroup
/usr/share/doc/ansible-freeipa/playbooks/sudocmdgroup/ensure-sudocmd-are-absent-in-sudocmdgroup.yml
/usr/share/doc/ansible-freeipa/playbooks/sudocmdgroup/ensure-sudocmd-are-present-in-sudocmdgroup.yml
/usr/share/doc/ansible-freeipa/playbooks/sudocmdgroup/ensure-sudocmdgroup-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/sudocmdgroup/ensure-sudocmdgroup-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-does-not-have-sudooption.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-has-sudooption.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-host-member-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-host-member-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-hostgroup-member-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-hostgroup-member-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-is-disabled.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-is-enabled.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-is-present-with-order.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-runasuser-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-runasuser-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-sudocmd-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/sudorule/ensure-sudorule-sudocmd-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/topology
/usr/share/doc/ansible-freeipa/playbooks/topology/add-topologysegment.yml
/usr/share/doc/ansible-freeipa/playbooks/topology/add-topologysegments.yml
/usr/share/doc/ansible-freeipa/playbooks/topology/check-topologysegments.yml
/usr/share/doc/ansible-freeipa/playbooks/topology/delete-topologysegment.yml
/usr/share/doc/ansible-freeipa/playbooks/topology/delete-topologysegments.yml
/usr/share/doc/ansible-freeipa/playbooks/topology/reinitialize-topologysegment.yml
/usr/share/doc/ansible-freeipa/playbooks/topology/verify-topologysuffix.yml
/usr/share/doc/ansible-freeipa/playbooks/trust
/usr/share/doc/ansible-freeipa/playbooks/trust/add-trust.yml
/usr/share/doc/ansible-freeipa/playbooks/trust/del-trust.yml
/usr/share/doc/ansible-freeipa/playbooks/uninstall-client.yml
/usr/share/doc/ansible-freeipa/playbooks/uninstall-cluster.yml
/usr/share/doc/ansible-freeipa/playbooks/uninstall-replica.yml
/usr/share/doc/ansible-freeipa/playbooks/uninstall-server.yml
/usr/share/doc/ansible-freeipa/playbooks/user
/usr/share/doc/ansible-freeipa/playbooks/user/add-group.yml
/usr/share/doc/ansible-freeipa/playbooks/user/add-groups-to-group.yml
/usr/share/doc/ansible-freeipa/playbooks/user/add-user-to-group.yml
/usr/share/doc/ansible-freeipa/playbooks/user/add-user.yml
/usr/share/doc/ansible-freeipa/playbooks/user/delete-group.yml
/usr/share/doc/ansible-freeipa/playbooks/user/delete-preserve-user.yml
/usr/share/doc/ansible-freeipa/playbooks/user/delete-user.yml
/usr/share/doc/ansible-freeipa/playbooks/user/disable-user.yml
/usr/share/doc/ansible-freeipa/playbooks/user/enable-user.yml
/usr/share/doc/ansible-freeipa/playbooks/user/ensure_user_with_randompassword.yml
/usr/share/doc/ansible-freeipa/playbooks/user/ensure_users_with_randompasswords.yml
/usr/share/doc/ansible-freeipa/playbooks/user/undelete-user.yml
/usr/share/doc/ansible-freeipa/playbooks/user/unlock-users.yml
/usr/share/doc/ansible-freeipa/playbooks/user/user_certificate_absent.yml
/usr/share/doc/ansible-freeipa/playbooks/user/user_certificate_present.yml
/usr/share/doc/ansible-freeipa/playbooks/user/user_present.yml
/usr/share/doc/ansible-freeipa/playbooks/user/users_absent.yml
/usr/share/doc/ansible-freeipa/playbooks/user/users_certificate_absent.yml
/usr/share/doc/ansible-freeipa/playbooks/user/users_certificate_present.yml
/usr/share/doc/ansible-freeipa/playbooks/user/users_present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault
/usr/share/doc/ansible-freeipa/playbooks/vault/change-password-symmetric-vault.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/data-archive-in-asymmetric-vault.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/data-archive-in-symmetric-vault.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-asymetric-vault-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-asymetric-vault-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-service-vault-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-service-vault-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-shared-vault-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-shared-vault-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-standard-vault-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-standard-vault-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-symetric-vault-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-symetric-vault-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-vault-is-present-with-members.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-vault-member-group-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-vault-member-group-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-vault-member-user-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-vault-member-user-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-vault-owner-is-absent.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/ensure-vault-owner-is-present.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/password.txt
/usr/share/doc/ansible-freeipa/playbooks/vault/private.pem
/usr/share/doc/ansible-freeipa/playbooks/vault/public.pem
/usr/share/doc/ansible-freeipa/playbooks/vault/retrive-data-asymmetric-vault.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/retrive-data-symmetric-vault.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/vault-is-present-with-password-file.yml
/usr/share/doc/ansible-freeipa/playbooks/vault/vault-is-present-with-public-key-file.yml
/usr/share/licenses/ansible-freeipa
/usr/share/licenses/ansible-freeipa/COPYING

References

Summary

In this tutorial we learn how to install ansible-freeipa on CentOS 8 using yum and dnf.