ipa-server-install
ipa-server-install
is the command used to set up a new FreeIPA server. FreeIPA (Identity, Policy, and Audit) is an integrated solution for centralized identity management, authentication, and authorization in Linux and Unix environments. The ipa-server-install
command is crucial for initializing and configuring an IPA server, which will act as the primary server for managing users, groups, hosts, and services.
Purpose
This command installs and configures an IPA server with various services like:
389 Directory Server (LDAP)
Kerberos (KDC)
DNS (optional)
NTP or Chrony (optional)
PKI (Dogtag Certificate System)
HTTP server
The installation includes setting up an LDAP directory, configuring Kerberos authentication, and other optional services such as DNS and certificate authorities.
Basic Usage
Key Options
--hostname
: Specifies the fully qualified domain name (FQDN) of the server.Example:
--realm
: Specifies the Kerberos realm. It is usually the domain name in uppercase.Example:
--domain
: Specifies the domain name for the IPA server.Example:
--ds-password
: The password for the Directory Server's admin user (cn=Directory Manager
).Example:
--admin-password
: The password for the FreeIPA admin account (admin
user).Example:
--setup-dns
: Installs and configures the DNS server as part of the FreeIPA setup. This option is used if you want FreeIPA to manage DNS.Example:
--no-host-dns
: Skips the creation of DNS records for the host in the DNS server.Example:
--no-ntp
or--no-chrony
: Skips the installation of NTP or Chrony for time synchronization. By default,ipa-server-install
installs either NTP or Chrony, but you can opt out with these flags.Example:
--idstart
and--idmax
: Define the range of UID/GID values to be used by FreeIPA for user and group IDs.Example:
--no-pkinit
: Disables PKINIT (Public Key Cryptography for Initial Authentication in Kerberos).Example:
--external-ca
: Use this option if you're integrating FreeIPA with an external certificate authority. This will generate a Certificate Signing Request (CSR) for submission to the external CA.Example:
--unattended
: Use this for unattended installations, where the system does not prompt for input, and all required data is provided via command-line options.Example:
Installation Process
Prepare the Environment: Ensure that DNS is properly configured and the FQDN of the server resolves correctly.
Run
ipa-server-install
: Execute theipa-server-install
command with the necessary options.Example:
Set up DNS (Optional): If you're setting up DNS with FreeIPA, make sure to provide the DNS-related options (
--setup-dns
,--no-host-dns
, etc.).Provide Passwords: During the installation, you'll be asked to provide passwords for the Directory Manager and the admin user unless provided as command-line options.
Verify Time Synchronization: Make sure that time is synchronized across all systems, as FreeIPA relies on Kerberos, which requires accurate time settings.
Complete the Setup: Once the installation is complete, the server will be fully set up and ready to manage identity services.
Post-Installation Steps
After installation, you can verify the status of the FreeIPA server using:
To add users, groups, and manage the FreeIPA server, you can use the ipa
command-line tools.
For example:
To add a user:
To add a group:
Common Issues and Troubleshooting
DNS Resolution: Ensure the FQDN resolves properly, as DNS issues can cause the installation to fail.
Ports: Ensure that the necessary ports (e.g., 389 for LDAP, 88 for Kerberos, 53 for DNS if configured) are open and accessible.
Time Sync: Kerberos relies on synchronized clocks, so ensure that NTP or Chrony is configured correctly.
Firewall: Ensure that your firewall settings allow the necessary communication (e.g., LDAP, Kerberos, HTTP).
Conclusion
The ipa-server-install
command sets up a new FreeIPA server with services like LDAP, Kerberos, and DNS. By configuring these services, it centralizes authentication and policy management across Linux/Unix systems, reducing administrative overhead. The installation process is flexible, allowing options for DNS management, certificate authorities, and unattended installs for automated environments.
Last updated