default.conf(5)
π default.conf β the IPA configuration file (manual page default.conf(5))
okay bestie, sit down, hydrate, because this is THE config file for IPA and she has a LOT to say π
β¨ NAME β¨
default.conf β the IPA configuration file. iconic, central, the main character of /etc/ipa π
β¨ SYNOPSIS β¨
/etc/ipa/default.conf, ~/.ipa/default.conf, /etc/ipa/server.conf,
/etc/ipa/cli.conf, /etc/ipa/installer.conf, /etc/ipa/cli_installer.conf
yes bestie, she lives in MULTIPLE places. it's giving "i have a personality for every context" π¦
β¨ DESCRIPTION β¨
So. The default.conf configuration file is what you use to set system-wide defaults that get applied whenever IPA clients and servers run. it's the vibe-setter for the whole operation, no cap β¨
Users can also make an optional config file at ~/.ipa/default.conf, and that one gets merged into the system-wide defaults file. a little personal touch, as a treat π
Here's the order the files get read in, and yes, order MATTERS:
~/.ipa/default.conf/etc/ipa/<context>.conf/etc/ipa/default.conf- built-in constants
The IPA server does not read ~/.ipa/default.conf. not even a little bit. server said "your personal file means nothing to me" π
The first setting wins. first come, first served, periodt π
β¨ SYNTAX β¨
the grammar lesson nobody asked for but everybody needs, let's gooo πΈ
The configuration options are not case sensitive. The values, though? Those may be case sensitive, depending on the option. sneaky little guys π
Blank lines are ignored. Lines starting with # are comments and get ignored too. ghosted, respectfully π«Ά
A valid line is: an option name, an equals sign, and a value. Spaces around the equals sign are ignored. An option terminates at the end of the line. simple. clean. we love a low-drama format β¨
Values should not be quoted β the quotes will not be stripped. like, she will literally keep the quotes as part of the value. do NOT do this to yourself.
# Wrong - don't include quotes
verbose = "True"
# Right - Properly formatted options
verbose = True
verbose=True
see how both right answers work? slay. the wrong one does not. π
Options must appear in the section named [global]. There are no other sections defined or used currently. one section, one vibe, one queen π
You can define options that IPA doesn't actually use. β οΈ but be careful of misspellings β they will not be rejected. she'll just silently ignore your typo and you'll be debugging for three hours fr fr π
β¨ OPTIONS β¨
The following options are relevant for the server:
basedn <base>β Specifies the base DN to use when performing LDAP operations. The base must be in DN format, likedc=example,dc=com. give her the DN or give her nothing π¦ca_agent_port <port>β Specifies the secure CA agent port. The default is8443.ca_host <hostname>β Specifies the hostname of the dogtag CA server. The default is the hostname of the IPA server. she just assumes it's herself unless told otherwise, self-love honestly πca_port <port>β Specifies the insecure CA end user port. The default is8080. note that word "insecure", bestie, she said it not mecertmonger_wait_timeout <seconds>β The time to wait for a certmonger request to complete during installation. The default value is300seconds. To tune it, create/add to/etc/ipa/installer.conf. certmonger is out here taking her sweet time and this is your patience timer β³context <context>β Specifies the context that IPA is being executed in. IPA may operate differently depending on the context. The current defined contexts arecli,serveranddns. Additionally, this value is used to load/etc/ipa/context.confto provide context-specific configuration. example time: if you want to always perform client requests in verbose mode but do not want verbose enabled on the server, add theverboseoption to/etc/ipa/cli.conf. context-specific behavior, we stan a config with range πdebug <boolean>β WhenTrueit provides detailed information. Specifically, this sets the global log level to"debug". Default isFalse. β οΈ warning from your girl: this is LOUD. like, screaming into the void loud π₯dogtag_version <version>β Stores the version of Dogtag. Value9is assumed if not specified otherwise.domain <domain>β The domain of the IPA server, e.g.example.com. give her the domain, she's lost without it π₯Ίenable_ra <boolean>β Specifies whether the CA is acting as an RA agent, such as when dogtag is being used as the Certificate Authority. This setting only applies to the IPA server configuration.fallback <boolean>β Specifies whether an IPA client should attempt to fall back and try other services if the first connection fails. backup plan energy, always have a backup plan bestie β¨host <hostname>β Specifies the local system hostname.http_timeout <seconds>β Timeout for HTTP blocking requests (e.g. connection). The default value is30seconds. thirty seconds and then she's GONE π¨in_server <boolean>β Specifies whether requests should be forwarded to an IPA server or handled locally. This is used internally by IPA in a similar way ascontext. The same IPA framework is used by theipacommand-line tool and the server. This setting tells the framework whether it should execute the command as if on the server, or forward it via XML-RPC to a remote server. internal plumbing, iykyk π°in_tree <boolean>β This is used in development and is generally a detected value. It means that the code is being executed within a source tree. dev girlies know π±interactive <boolean>β Specifies whether values should be prompted for or not. The default isTrue. yes queen, ask me questions πkinit_lifetime <time duration spec>β Controls the lifetime of the ticket obtained by users authenticating to the WebGUI using login/password. The expected format is a time duration string. Examples are"2 hours","1h:30m","10 minutes","5min, 30sec". When the parameter is not set indefault.conf, the ticket will have a duration inherited from the default value for kerberos clients, which can be set asticket_lifetimeinkrb5.conf. When the ticket lifetime has expired, the ticket is not valid anymore and the GUI will prompt to re-login with a message"Your session has expired. Please re-login."the ticket dies, the vibe dies, the GUI says please re-login πldap_cache <boolean>β Enable a per-request LDAP cache. The default isTrue. caching, we love her πldap_cache_size <integer>β The maximum number of entries cached ifldap_cacheisTrue. Since this cache is per-request it is not expected to be very large. The default is100. Setting the value< 1effectively disables the cache regardless of theldap_cachesetting. yes, even ifldap_cacheisTrue. she said what she saidldap_cache_debug <boolean>β Log details on hits, misses, etc. for the LDAP cache if the cache is enabled. hit or miss? this option tells you πldap_uri <URI>β Specifies the URI of the IPA LDAP server to connect to. The URI scheme may be one ofldaporldapi. The default is to useldapi, e.g.ldapi://%2fvar%2frun%2fslapd-EXAMPLE-COM.socket. look at all those percent signs, she's encoded and she's thriving β¨log_logger_XXX <comma separated list of regexps>β Loggers matching the regexp will be assignedXXXlevel.
Logger levels can be explicitly specified for specific loggers as opposed to a global logging level. Specific loggers are indicated by a list of regular expressions bound to a level. If a logger's name matches the regexp then it is assigned that level. This config item must begin with "log_logger_level_" and then be followed by a symbolic or numeric log level, for example:
log_logger_level_debug = ipalib\.dn\..*
log_logger_level_35 = ipalib\.plugins\.dogtag
The first line says any logger belonging to the ipalib.dn module will have its level configured to debug.
The second line says the ipa.plugins.dogtag logger will be configured to level 35.
This config item is useful when you only want to see the log output from one or more selected loggers. Turning on the global debug flag will produce an enormous amount of output. This allows you to leave the global debug flag off and selectively enable output from a specific logger. Typically loggers are bound to classes and plugins.
Note: logger names are a dot (.) separated list forming a path in the logger tree. The dot character is also a regular expression metacharacter (matches any character), therefore you will usually need to escape the dot in the logger names by preceding it with a backslash. do not skip this, bestie, regex will humble you π
mode <mode>β Specifies the mode the server is running in. The currently supported values areproductionanddeveloper. When running inproductionmode some self-tests are skipped to improve performance. production mode said "no time for self-tests, we're busy" β‘mount_ipa <URI>β Specifies the mount point that the development server will register. The default is/ipa/.oidc_child_debug_level <debuglevel>β Specifies the debug level ofoidc_child, a helper process used byipa-otpdfor OIDC/OAuth2 authentication. Level can be between0and10, the higher the more details. If the level is6or higher, HTTP debug output is added as well. crank it to 6 and the HTTP receipts show up πpasskey_child_debug_level <debuglevel>β Specifies the debug level ofpasskey_child, a helper process used byipa-otpdfor passkey authentication. Level can be between0and10, the higher the more details. If the level is6or higher, libfido2 debug output is added as well. same energy, different helper, libfido2 said hi πprompt_all <boolean>β Specifies that all options should be prompted for in the IPA client, even optional values. Default isFalse. turn this on if you want her to ask about EVERYTHING. chatty queen π£οΈra_plugin <name>β Specifies the name of the CA back end to use. The current options aredogtagandnone. This is a server-side setting. β οΈ Changing this value is not recommended, as the CA back end is only set up during initial installation. set it once, set it right, do not come back later fr frrealm <realm>β Specifies the Kerberos realm. ALL CAPS energy, usually π¦replication_wait_timeout <seconds>β The time to wait for a new entry to be replicated during replica installation. The default value is300seconds. replication is a slow texter, give her five minutes β³schema_ttl <seconds>β The number of seconds for theipatool to cache the IPA API and help schema. Reducing this value during development is helpful so that API changes are seen sooner in the tool. Setting this on a server will define the TTL for all client versions> 4.3.1. Client versions> 4.3.1that connect to IPA servers older than4.3.1will use the client-side configuration value. The default is3600seconds.0disables the cache. A change in the ttl will not be immediately recognized by clients. They will use the new value once their current cache expires. patience, bestie, the cache has its own timeline πserver <hostname>β Specifies the IPA Server hostname.skip_version_check <boolean>β Skip client vs. server API version checking. β οΈ Can lead to errors/strange behavior when newer clients talk to older servers. Use with caution. this is a "i know what i'm doing" button. do you? π€¨startup_timeout <time in seconds>β Controls the amount of time waited when starting a service. The default value is90seconds, the same as the default systemd startup timeout. If configuring a CA thestartup_timeoutvalue will be added as an override forTimeoutStartSecin systemd. If installation times out when starting the CA, create/etc/ipa/installer.confwith this value set. ninety seconds and if she's not up, she's not coming πstartup_traceback <boolean>β If the IPA server fails to start and this value isTrue, the server will attempt to generate a python traceback to make identifying the underlying problem easier. when things go wrong, at least you get a nice little paper trail πβ¨
and that's the end of part 1, bestie β the server-side options. part 2 has more for you, so don't go anywhere π«Ά
validate_api<boolean> β okay so this one is internal-only, it lives in the IPA source package and its whole job is checking that the API hasn't changed. It's an anti-regression thing π‘οΈ. If it'sTrue, then some errors get ignored, so that enough of the IPA framework can load up to verify the whole entire API β even if optional components aren't installed. Default isFalse.verbose<boolean> β whenTrueyou get more info, bestie. Specifically: it sets the global log level to"info". That's it, that's the whole thing β¨.wait_for_dns<number of attempts> β this one controls whether the IPA commandsdnsrecord-{add,mod,del}work synchronously or not. The DNS commands will repeat DNS queries up to the number of attempts you specify, until the DNS server returns an up-to-date answer for the modified records. Delay between retries is one second.
The DNS commands will raise a DNSDataMismatch exception if the answer doesn't match the expected value even after all those attempts. π
The DNS queries get sent to the resolver configured in /etc/resolv.conf on the IPA server.
Do not enable this in production! π¨ It will cause problems if the resolver on the IPA server uses a caching server instead of a local authoritative server, or e.g. if DNS answers are modified by DNS64. Default is disabled (the option is not present).
xmlrpc_uri<URI> β specifies the URI of the XML-RPC server for a client. IPA may use this, and some external tools use it too, likeipa-getcert. Example:https://ipa.example.com/ipa/xmljsonrpc_uri<URI> β specifies the URI of the JSON server for a client. IPA uses this one. If you don't give it, it gets derived fromxmlrpc_uri. Example:https://ipa.example.com/ipa/jsonrpc_protocol<URI> β specifies what type of RPC calls IPA makes:'jsonrpc'or'xmlrpc'. Defaults to'jsonrpc'. πkey_type_sizeTYPE:SIZE β specifies the type and size of private keys for the Apache, LDAP, PKINIT and RA (if you're configuring the CA) certificates. The CA/KRA certificate sizes need to be specified using apki-config-overridefile provided to the installer. Currently only supports the RSA key type. Valid type values are:rsa. This only applies during initial server installation. The value gets stored in the IPA config β changing it there will not change existing certificates. It will only apply when a new replica is added. Default is:rsa:2048.
The following define the containers for the IPA server. Containers define where in the DIT that objects can be found. The full location is the value of container + basedn. π
container_accounts:cn=accountscontainer_applications:cn=applications,cn=configs,cn=policiescontainer_automount:cn=automountcontainer_configs:cn=configs,cn=policiescontainer_dns:cn=dnscontainer_group:cn=groups,cn=accountscontainer_hbac:cn=hbaccontainer_hbacservice:cn=hbacservices,cn=hbaccontainer_hbacservicegroup:cn=hbacservicegroups,cn=hbaccontainer_host:cn=computers,cn=accountscontainer_hostgroup:cn=hostgroups,cn=accountscontainer_netgroup:cn=ng,cn=altcontainer_permission:cn=permissions,cn=pbaccontainer_policies:cn=policiescontainer_policygroups:cn=policygroups,cn=configs,cn=policiescontainer_policylinks:cn=policylinks,cn=configs,cn=policiescontainer_privilege:cn=privileges,cn=pbaccontainer_rolegroup:cn=roles,cn=accountscontainer_roles:cn=roles,cn=policiescontainer_service:cn=services,cn=accountscontainer_sudocmd:cn=sudocmds,cn=sudocontainer_sudocmdgroup:cn=sudocmdgroups,cn=sudocontainer_sudorule:cn=sudorules,cn=sudocontainer_user:cn=users,cn=accountscontainer_vault:cn=vaults,cn=kracontainer_virtual:cn=virtual operations,cn=etc
ποΈ FILES ποΈ
/etc/ipa/default.confβ system-wide IPA configuration file$HOME/.ipa/default.confβ user IPA configuration file
Okay so you can also define context-specific configuration files π. The context gets set when the IPA api is initialized. The currently defined contexts in IPA are cli, server and dns. This is helpful, for example, if you only want debug enabled on the server and not in the client. If this is set to True in default.conf it will affect both the ipa client tool and the IPA server. If it's only set in server.conf then only the server will have debug set. These files get loaded if they exist:
/etc/ipa/cli.confβ system-wide IPA client configuration file/etc/ipa/server.confβ system-wide IPA server configuration file/etc/ipa/installer.confβ IPA configuration used while installing an IPA server or replica/etc/ipa/cli_installer.confβ IPA configuration used while installing an IPA client
πΈ EXAMPLES πΈ
An example of a context-specific configuration file is /etc/ipa/dns.conf, to be used to increase debug output of the IPA DNSSEC daemons. Obsessed. π¦
[global]
debug = True
π SEE ALSO π
That's the whole page, bestie β you made it to the end, main character energy fr fr π
This one's from the IPA source, dated Feb 21 2011, and it's section default.conf(5). Go forth and configure responsibly, ily π«Άβ¨
π¦ where this page comes from
- centos-stream 10: ipa-client-common 4.13.4-1.el10 Β· GPL-3.0-or-later
- centos-stream 9: ipa-client-common 4.13.4-1.el9 Β· GPL-3.0-or-later
- fedora 43: freeipa-client-common 4.13.4-2.fc43
- fedora 43: freeipa-client-common 4.13.4-3.fc43 Β· GPL-3.0-or-later
- fedora 44: freeipa-client-common 4.13.1-9.fc44 Β· GPL-3.0-or-later
- fedora 44: freeipa-client-common 4.13.4-2.fc44
- fedora 44: freeipa-client-common 4.13.4-3.fc44 Β· GPL-3.0-or-later
- nixpkgs unstable: freeipa 4.13.1
- ubuntu resolute: freeipa-client 4.13.1-1 Β· GPL-3.0-or-later
- ubuntu stonking: freeipa-client 4.13.1-1build1 Β· GPL-3.0-or-later
- Copyright (C) 2011 Red Hat, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms