1SSSD.CONF(5)             File Formats and Conventions             SSSD.CONF(5)
2
3
4

NAME

6       sssd.conf - the configuration file for SSSD
7

FILE FORMAT

9       The file has an ini-style syntax and consists of sections and
10       parameters. A section begins with the name of the section in square
11       brackets and continues until the next section begins. An example of
12       section with single and multi-valued parameters:
13
14           [section]
15           key = value
16           key2 = value2,value3
17
18
19       The data types used are string (no quotes needed), integer and bool
20       (with values of “TRUE/FALSE”).
21
22       A comment line starts with a hash sign (“#”) or a semicolon (“;”).
23       Inline comments are not supported.
24
25       All sections can have an optional description parameter. Its function
26       is only as a label for the section.
27
28       sssd.conf must be a regular file, owned by root and only root may read
29       from or write to the file.
30

CONFIGURATION SNIPPETS FROM INCLUDE DIRECTORY

32       The configuration file sssd.conf will include configuration snippets
33       using the include directory conf.d. This feature is available if SSSD
34       was compiled with libini version 1.3.0 or later.
35
36       Any file placed in conf.d that ends in “.conf” and does not begin with
37       a dot (“.”) will be used together with sssd.conf to configure SSSD.
38
39       The configuration snippets from conf.d have higher priority than
40       sssd.conf and will override sssd.conf when conflicts occur. If several
41       snippets are present in conf.d, then they are included in alphabetical
42       order (based on locale). Files included later have higher priority.
43       Numerical prefixes (01_snippet.conf, 02_snippet.conf etc.) can help
44       visualize the priority (higher number means higher priority).
45
46       The snippet files require the same owner and permissions as sssd.conf.
47       Which are by default root:root and 0600.
48

GENERAL OPTIONS

50       Following options are usable in more than one configuration sections.
51
52   Options usable in all sections
53       debug_level (integer)
54           SSSD supports two representations for specifying the debug level.
55           The simplest is to specify a decimal value from 0-9, which
56           represents enabling that level and all lower-level debug messages.
57           The more comprehensive option is to specify a hexadecimal bitmask
58           to enable or disable specific levels (such as if you wish to
59           suppress a level).
60
61           Please note that each SSSD service logs into its own log file. Also
62           please note that enabling “debug_level” in the “[sssd]” section
63           only enables debugging just for the sssd process itself, not for
64           the responder or provider processes. The “debug_level” parameter
65           should be added to all sections that you wish to produce debug logs
66           from.
67
68           In addition to changing the log level in the config file using the
69           “debug_level” parameter, which is persistent, but requires SSSD
70           restart, it is also possible to change the debug level on the fly
71           using the sss_debuglevel(8) tool.
72
73           Currently supported debug levels:
74
75           0, 0x0010: Fatal failures. Anything that would prevent SSSD from
76           starting up or causes it to cease running.
77
78           1, 0x0020: Critical failures. An error that doesn't kill SSSD, but
79           one that indicates that at least one major feature is not going to
80           work properly.
81
82           2, 0x0040: Serious failures. An error announcing that a particular
83           request or operation has failed.
84
85           3, 0x0080: Minor failures. These are the errors that would
86           percolate down to cause the operation failure of 2.
87
88           4, 0x0100: Configuration settings.
89
90           5, 0x0200: Function data.
91
92           6, 0x0400: Trace messages for operation functions.
93
94           7, 0x1000: Trace messages for internal control functions.
95
96           8, 0x2000: Contents of function-internal variables that may be
97           interesting.
98
99           9, 0x4000: Extremely low-level tracing information.
100
101           To log required bitmask debug levels, simply add their numbers
102           together as shown in following examples:
103
104           Example: To log fatal failures, critical failures, serious failures
105           and function data use 0x0270.
106
107           Example: To log fatal failures, configuration settings, function
108           data, trace messages for internal control functions use 0x1310.
109
110           Note: The bitmask format of debug levels was introduced in 1.7.0.
111
112           Default: 0
113
114       debug (integer)
115           SSSD 1.14 and later also includes the debug alias for debug_level
116           as a convenience feature. If both are specified, the value of
117           debug_level will be used.
118
119       debug_timestamps (bool)
120           Add a timestamp to the debug messages. If journald is enabled for
121           SSSD debug logging this option is ignored.
122
123           Default: true
124
125       debug_microseconds (bool)
126           Add microseconds to the timestamp in debug messages. If journald is
127           enabled for SSSD debug logging this option is ignored.
128
129           Default: false
130
131   Options usable in SERVICE and DOMAIN sections
132       timeout (integer)
133           Timeout in seconds between heartbeats for this service. This is
134           used to ensure that the process is alive and capable of answering
135           requests. Note that after three missed heartbeats the process will
136           terminate itself.
137
138           Default: 10
139

SPECIAL SECTIONS

141   The [sssd] section
142       Individual pieces of SSSD functionality are provided by special SSSD
143       services that are started and stopped together with SSSD. The services
144       are managed by a special service frequently called “monitor”. The
145       “[sssd]” section is used to configure the monitor as well as some other
146       important options like the identity domains.
147
148       Section parameters
149
150       config_file_version (integer)
151           Indicates what is the syntax of the config file. SSSD 0.6.0 and
152           later use version 2.
153
154       services
155           Comma separated list of services that are started when sssd itself
156           starts.  The services' list is optional on platforms where systemd
157           is supported, as they will either be socket or D-Bus activated when
158           needed.
159
160           Supported services: nss, pam , sudo , autofs , ssh , pac , ifp
161
162           By default, all services are disabled and the administrator must
163           enable the ones allowed to be used by executing: "systemctl enable
164           sssd-@service@.socket".
165
166       reconnection_retries (integer)
167           Number of times services should attempt to reconnect in the event
168           of a Data Provider crash or restart before they give up
169
170           Default: 3
171
172       domains
173           A domain is a database containing user information. SSSD can use
174           more domains at the same time, but at least one must be configured
175           or SSSD won't start. This parameter describes the list of domains
176           in the order you want them to be queried. A domain name should only
177           consist of alphanumeric ASCII characters, dashes, dots and
178           underscores.
179
180       re_expression (string)
181           Default regular expression that describes how to parse the string
182           containing user name and domain into these components.
183
184           Each domain can have an individual regular expression configured.
185           For some ID providers there are also default regular expressions.
186           See DOMAIN SECTIONS for more info on these regular expressions.
187
188       full_name_format (string)
189           A printf(3)-compatible format that describes how to compose a fully
190           qualified name from user name and domain name components.
191
192           The following expansions are supported:
193
194           %1$s
195               user name
196
197           %2$s
198               domain name as specified in the SSSD config file.
199
200           %3$s
201               domain flat name. Mostly usable for Active Directory domains,
202               both directly configured or discovered via IPA trusts.
203
204           Each domain can have an individual format string configured. see
205           DOMAIN SECTIONS for more info on this option.
206
207       try_inotify (boolean)
208           SSSD monitors the state of resolv.conf to identify when it needs to
209           update its internal DNS resolver. By default, we will attempt to
210           use inotify for this, and will fall back to polling resolv.conf
211           every five seconds if inotify cannot be used.
212
213           There are some limited situations where it is preferred that we
214           should skip even trying to use inotify. In these rare cases, this
215           option should be set to 'false'
216
217           Default: true on platforms where inotify is supported. False on
218           other platforms.
219
220           Note: this option will have no effect on platforms where inotify is
221           unavailable. On these platforms, polling will always be used.
222
223       krb5_rcache_dir (string)
224           Directory on the filesystem where SSSD should store Kerberos replay
225           cache files.
226
227           This option accepts a special value __LIBKRB5_DEFAULTS__ that will
228           instruct SSSD to let libkrb5 decide the appropriate location for
229           the replay cache.
230
231           Default: Distribution-specific and specified at build-time.
232           (__LIBKRB5_DEFAULTS__ if not configured)
233
234       user (string)
235           The user to drop the privileges to where appropriate to avoid
236           running as the root user.  This option does not work when running
237           socket-activated services, as the user set up to run the processes
238           is set up during compilation time. The way to override the systemd
239           unit files is by creating the appropriate files in
240           /etc/systemd/system/. Keep in mind that any change in the socket
241           user, group or permissions may result in a non-usable SSSD. The
242           same may occur in case of changes of the user running the NSS
243           responder.
244
245           Default: not set, process will run as root
246
247       default_domain_suffix (string)
248           This string will be used as a default domain name for all names
249           without a domain name component. The main use case is environments
250           where the primary domain is intended for managing host policies and
251           all users are located in a trusted domain. The option allows those
252           users to log in just with their user name without giving a domain
253           name as well.
254
255           Please note that if this option is set all users from the primary
256           domain have to use their fully qualified name, e.g.
257           user@domain.name, to log in. Setting this option changes default of
258           use_fully_qualified_names to True. It is not allowed to use this
259           option together with use_fully_qualified_names set to False.
260
261           Default: not set
262
263       override_space (string)
264           This parameter will replace spaces (space bar) with the given
265           character for user and group names. e.g. (_). User name "john doe"
266           will be "john_doe" This feature was added to help compatibility
267           with shell scripts that have difficulty handling spaces, due to the
268           default field separator in the shell.
269
270           Please note it is a configuration error to use a replacement
271           character that might be used in user or group names. If a name
272           contains the replacement character SSSD tries to return the
273           unmodified name but in general the result of a lookup is undefined.
274
275           Default: not set (spaces will not be replaced)
276
277       certificate_verification (string)
278           With this parameter the certificate verification can be tuned with
279           a comma separated list of options. Supported options are:
280
281           no_ocsp
282               Disables Online Certificate Status Protocol (OCSP) checks. This
283               might be needed if the OCSP servers defined in the certificate
284               are not reachable from the client.
285
286           no_verification
287               Disables verification completely. This option should only be
288               used for testing.
289
290           ocsp_default_responder=URL
291               Sets the OCSP default responder which should be used instead of
292               the one mentioned in the certificate. URL must be replaced with
293               the URL of the OCSP default responder e.g.
294               http://example.com:80/ocsp.
295
296               (NSS Version) This option must be used together with
297               ocsp_default_responder_signing_cert.
298
299           ocsp_default_responder_signing_cert=NAME
300               (NSS Version) The nickname of the cert to trust (expected) to
301               sign the OCSP responses. The certificate with the given
302               nickname must be available in the systems NSS database.
303
304               This option must be used together with ocsp_default_responder.
305
306               (OpenSSL version) This option is currently ignored. All needed
307               certificates must be available in the PEM file given by
308               pam_cert_db_path.
309
310           crl_file=/PATH/TO/CRL/FILE
311               (NSS Version) This option is ignored, please see crlutil(1) how
312               to import a Certificate Revocation List (CRL) into a NSS
313               database.
314
315               (OpenSSL Version) Use the Certificate Revocation List (CRL)
316               from the given file during the verification of the certificate.
317               The CRL must be given in PEM format, see crl(1ssl) for details.
318
319           This man page was generated for the OpenSSL version.
320
321           Unknown options are reported but ignored.
322
323           Default: not set, i.e. do not restrict certificate verification
324
325       disable_netlink (boolean)
326           SSSD hooks into the netlink interface to monitor changes to routes,
327           addresses, links and trigger certain actions.
328
329           The SSSD state changes caused by netlink events may be undesirable
330           and can be disabled by setting this option to 'true'
331
332           Default: false (netlink changes are detected)
333
334       enable_files_domain (boolean)
335           When this option is enabled, SSSD prepends an implicit domain with
336           “id_provider=files” before any explicitly configured domains.
337
338           Default: true
339
340       domain_resolution_order
341           Comma separated list of domains and subdomains representing the
342           lookup order that will be followed. The list doesn't have to
343           include all possible domains as the missing domains will be looked
344           up based on the order they're presented in the “domains”
345           configuration option. The subdomains which are not listed as part
346           of “lookup_order” will be looked up in a random order for each
347           parent domain.
348
349           Please, note that when this option is set the output format of all
350           commands is always fully-qualified even when using short names for
351           input, for all users but the ones managed by the files provider. In
352           case the administrator wants the output not fully-qualified, the
353           full_name_format option can be used as shown below:
354           “full_name_format=%1$s” However, keep in mind that during login,
355           login applications often canonicalize the username by calling
356           getpwnam(3) which, if a shortname is returned for a qualified input
357           (while trying to reach a user which exists in multiple domains)
358           might re-route the login attempt into the domain which uses
359           shortnames, making this workaround totally not recommended in cases
360           where usernames may overlap between domains.
361
362           Default: Not set
363

SERVICES SECTIONS

365       Settings that can be used to configure different services are described
366       in this section. They should reside in the [$NAME] section, for
367       example, for NSS service, the section would be “[nss]”
368
369   General service configuration options
370       These options can be used to configure any service.
371
372       reconnection_retries (integer)
373           Number of times services should attempt to reconnect in the event
374           of a Data Provider crash or restart before they give up
375
376           Default: 3
377
378       fd_limit
379           This option specifies the maximum number of file descriptors that
380           may be opened at one time by this SSSD process. On systems where
381           SSSD is granted the CAP_SYS_RESOURCE capability, this will be an
382           absolute setting. On systems without this capability, the resulting
383           value will be the lower value of this or the limits.conf "hard"
384           limit.
385
386           Default: 8192 (or limits.conf "hard" limit)
387
388       client_idle_timeout
389           This option specifies the number of seconds that a client of an
390           SSSD process can hold onto a file descriptor without communicating
391           on it. This value is limited in order to avoid resource exhaustion
392           on the system. The timeout can't be shorter than 10 seconds. If a
393           lower value is configured, it will be adjusted to 10 seconds.
394
395           Default: 60
396
397       offline_timeout (integer)
398           When SSSD switches to offline mode the amount of time before it
399           tries to go back online will increase based upon the time spent
400           disconnected. This value is in seconds and calculated by the
401           following:
402
403           offline_timeout + random_offset
404
405           The random offset can increment up to 30 seconds. After each
406           unsuccessful attempt to go online, the new interval is recalculated
407           by the following:
408
409           new_interval = old_interval*2 + random_offset
410
411           Note that the maximum length of each interval is currently limited
412           to one hour. If the calculated length of new_interval is greater
413           than an hour, it will be forced to one hour.
414
415           Default: 60
416
417       responder_idle_timeout
418           This option specifies the number of seconds that an SSSD responder
419           process can be up without being used. This value is limited in
420           order to avoid resource exhaustion on the system. The minimum
421           acceptable value for this option is 60 seconds. Setting this option
422           to 0 (zero) means that no timeout will be set up to the responder.
423           This option only has effect when SSSD is built with systemd support
424           and when services are either socket or D-Bus activated.
425
426           Default: 300
427
428       cache_first
429           This option specifies whether the responder should query all caches
430           before querying the Data Providers.
431
432           Default: false
433
434   NSS configuration options
435       These options can be used to configure the Name Service Switch (NSS)
436       service.
437
438       enum_cache_timeout (integer)
439           How many seconds should nss_sss cache enumerations (requests for
440           info about all users)
441
442           Default: 120
443
444       entry_cache_nowait_percentage (integer)
445           The entry cache can be set to automatically update entries in the
446           background if they are requested beyond a percentage of the
447           entry_cache_timeout value for the domain.
448
449           For example, if the domain's entry_cache_timeout is set to 30s and
450           entry_cache_nowait_percentage is set to 50 (percent), entries that
451           come in after 15 seconds past the last cache update will be
452           returned immediately, but the SSSD will go and update the cache on
453           its own, so that future requests will not need to block waiting for
454           a cache update.
455
456           Valid values for this option are 0-99 and represent a percentage of
457           the entry_cache_timeout for each domain. For performance reasons,
458           this percentage will never reduce the nowait timeout to less than
459           10 seconds. (0 disables this feature)
460
461           Default: 50
462
463       entry_negative_timeout (integer)
464           Specifies for how many seconds nss_sss should cache negative cache
465           hits (that is, queries for invalid database entries, like
466           nonexistent ones) before asking the back end again.
467
468           Default: 15
469
470       local_negative_timeout (integer)
471           Specifies for how many seconds nss_sss should keep local users and
472           groups in negative cache before trying to look it up in the back
473           end again. Setting the option to 0 disables this feature.
474
475           Default: 14400 (4 hours)
476
477       filter_users, filter_groups (string)
478           Exclude certain users or groups from being fetched from the sss NSS
479           database. This is particularly useful for system accounts. This
480           option can also be set per-domain or include fully-qualified names
481           to filter only users from the particular domain.
482
483           NOTE: The filter_groups option doesn't affect inheritance of nested
484           group members, since filtering happens after they are propagated
485           for returning via NSS. E.g. a group having a member group filtered
486           out will still have the member users of the latter listed.
487
488           Default: root
489
490       filter_users_in_groups (bool)
491           If you want filtered user still be group members set this option to
492           false.
493
494           Default: true
495
496       override_homedir (string)
497           Override the user's home directory. You can either provide an
498           absolute value or a template. In the template, the following
499           sequences are substituted:
500
501           %u
502               login name
503
504           %U
505               UID number
506
507           %d
508               domain name
509
510           %f
511               fully qualified user name (user@domain)
512
513           %l
514               The first letter of the login name.
515
516           %P
517               UPN - User Principal Name (name@REALM)
518
519           %o
520               The original home directory retrieved from the identity
521               provider.
522
523           %H
524               The value of configure option homedir_substring.
525
526           %%
527               a literal '%'
528
529           This option can also be set per-domain.
530
531           example:
532
533               override_homedir = /home/%u
534
535
536           Default: Not set (SSSD will use the value retrieved from LDAP)
537
538       homedir_substring (string)
539           The value of this option will be used in the expansion of the
540           override_homedir option if the template contains the format string
541           %H. An LDAP directory entry can directly contain this template so
542           that this option can be used to expand the home directory path for
543           each client machine (or operating system). It can be set per-domain
544           or globally in the [nss] section. A value specified in a domain
545           section will override one set in the [nss] section.
546
547           Default: /home
548
549       fallback_homedir (string)
550           Set a default template for a user's home directory if one is not
551           specified explicitly by the domain's data provider.
552
553           The available values for this option are the same as for
554           override_homedir.
555
556           example:
557
558               fallback_homedir = /home/%u
559
560
561           Default: not set (no substitution for unset home directories)
562
563       override_shell (string)
564           Override the login shell for all users. This option supersedes any
565           other shell options if it takes effect and can be set either in the
566           [nss] section or per-domain.
567
568           Default: not set (SSSD will use the value retrieved from LDAP)
569
570       allowed_shells (string)
571           Restrict user shell to one of the listed values. The order of
572           evaluation is:
573
574           1. If the shell is present in “/etc/shells”, it is used.
575
576           2. If the shell is in the allowed_shells list but not in
577           “/etc/shells”, use the value of the shell_fallback parameter.
578
579           3. If the shell is not in the allowed_shells list and not in
580           “/etc/shells”, a nologin shell is used.
581
582           The wildcard (*) can be used to allow any shell.
583
584           The (*) is useful if you want to use shell_fallback in case that
585           user's shell is not in “/etc/shells” and maintaining list of all
586           allowed shells in allowed_shells would be to much overhead.
587
588           An empty string for shell is passed as-is to libc.
589
590           The “/etc/shells” is only read on SSSD start up, which means that a
591           restart of the SSSD is required in case a new shell is installed.
592
593           Default: Not set. The user shell is automatically used.
594
595       vetoed_shells (string)
596           Replace any instance of these shells with the shell_fallback
597
598       shell_fallback (string)
599           The default shell to use if an allowed shell is not installed on
600           the machine.
601
602           Default: /bin/sh
603
604       default_shell
605           The default shell to use if the provider does not return one during
606           lookup. This option can be specified globally in the [nss] section
607           or per-domain.
608
609           Default: not set (Return NULL if no shell is specified and rely on
610           libc to substitute something sensible when necessary, usually
611           /bin/sh)
612
613       get_domains_timeout (int)
614           Specifies time in seconds for which the list of subdomains will be
615           considered valid.
616
617           Default: 60
618
619       memcache_timeout (int)
620           Specifies time in seconds for which records in the in-memory cache
621           will be valid. Setting this option to zero will disable the
622           in-memory cache.
623
624           Default: 300
625
626           WARNING: Disabling the in-memory cache will have significant
627           negative impact on SSSD's performance and should only be used for
628           testing.
629
630           NOTE: If the environment variable SSS_NSS_USE_MEMCACHE is set to
631           "NO", client applications will not use the fast in-memory cache.
632
633       user_attributes (string)
634           Some of the additional NSS responder requests can return more
635           attributes than just the POSIX ones defined by the NSS interface.
636           The list of attributes is controlled by this option. It is handled
637           the same way as the “user_attributes” option of the InfoPipe
638           responder (see sssd-ifp(5) for details) but with no default values.
639
640           To make configuration more easy the NSS responder will check the
641           InfoPipe option if it is not set for the NSS responder.
642
643           Default: not set, fallback to InfoPipe option
644
645       pwfield (string)
646           The value that NSS operations that return users or groups will
647           return for the “password” field.
648
649           This option can also be set per-domain.
650
651           Default: “*” (remote domains) or “x” (the files domain)
652
653   PAM configuration options
654       These options can be used to configure the Pluggable Authentication
655       Module (PAM) service.
656
657       offline_credentials_expiration (integer)
658           If the authentication provider is offline, how long should we allow
659           cached logins (in days since the last successful online login).
660
661           Default: 0 (No limit)
662
663       offline_failed_login_attempts (integer)
664           If the authentication provider is offline, how many failed login
665           attempts are allowed.
666
667           Default: 0 (No limit)
668
669       offline_failed_login_delay (integer)
670           The time in minutes which has to pass after
671           offline_failed_login_attempts has been reached before a new login
672           attempt is possible.
673
674           If set to 0 the user cannot authenticate offline if
675           offline_failed_login_attempts has been reached. Only a successful
676           online authentication can enable offline authentication again.
677
678           Default: 5
679
680       pam_verbosity (integer)
681           Controls what kind of messages are shown to the user during
682           authentication. The higher the number to more messages are
683           displayed.
684
685           Currently sssd supports the following values:
686
687           0: do not show any message
688
689           1: show only important messages
690
691           2: show informational messages
692
693           3: show all messages and debug information
694
695           Default: 1
696
697       pam_response_filter (integer)
698           A comma separated list of strings which allows to remove (filter)
699           data sent by the PAM responder to pam_sss PAM module. There are
700           different kind of responses sent to pam_sss e.g. messages displayed
701           to the user or environment variables which should be set by
702           pam_sss.
703
704           While messages already can be controlled with the help of the
705           pam_verbosity option this option allows to filter out other kind of
706           responses as well.
707
708           Currently the following filters are supported:
709
710           ENV
711               Do not send any environment variables to any service.
712
713           ENV:var_name
714               Do not send environment variable var_name to any service.
715
716           ENV:var_name:service
717               Do not send environment variable var_name to service.
718
719           Default: not set
720
721           Example: ENV:KRB5CCNAME:sudo-i
722
723       pam_id_timeout (integer)
724           For any PAM request while SSSD is online, the SSSD will attempt to
725           immediately update the cached identity information for the user in
726           order to ensure that authentication takes place with the latest
727           information.
728
729           A complete PAM conversation may perform multiple PAM requests, such
730           as account management and session opening. This option controls (on
731           a per-client-application basis) how long (in seconds) we can cache
732           the identity information to avoid excessive round-trips to the
733           identity provider.
734
735           Default: 5
736
737       pam_pwd_expiration_warning (integer)
738           Display a warning N days before the password expires.
739
740           Please note that the backend server has to provide information
741           about the expiration time of the password. If this information is
742           missing, sssd cannot display a warning.
743
744           If zero is set, then this filter is not applied, i.e. if the
745           expiration warning was received from backend server, it will
746           automatically be displayed.
747
748           This setting can be overridden by setting pwd_expiration_warning
749           for a particular domain.
750
751           Default: 0
752
753       get_domains_timeout (int)
754           Specifies time in seconds for which the list of subdomains will be
755           considered valid.
756
757           Default: 60
758
759       pam_trusted_users (string)
760           Specifies the comma-separated list of UID values or user names that
761           are allowed to run PAM conversations against trusted domains. Users
762           not included in this list can only access domains marked as public
763           with “pam_public_domains”. User names are resolved to UIDs at
764           startup.
765
766           Default: All users are considered trusted by default
767
768           Please note that UID 0 is always allowed to access the PAM
769           responder even in case it is not in the pam_trusted_users list.
770
771       pam_public_domains (string)
772           Specifies the comma-separated list of domain names that are
773           accessible even to untrusted users.
774
775           Two special values for pam_public_domains option are defined:
776
777           all (Untrusted users are allowed to access all domains in PAM
778           responder.)
779
780           none (Untrusted users are not allowed to access any domains PAM in
781           responder.)
782
783           Default: none
784
785       pam_account_expired_message (string)
786           Allows a custom expiration message to be set, replacing the default
787           'Permission denied' message.
788
789           Note: Please be aware that message is only printed for the SSH
790           service unless pam_verbosity is set to 3 (show all messages and
791           debug information).
792
793           example:
794
795               pam_account_expired_message = Account expired, please contact help desk.
796
797
798           Default: none
799
800       pam_account_locked_message (string)
801           Allows a custom lockout message to be set, replacing the default
802           'Permission denied' message.
803
804           example:
805
806               pam_account_locked_message = Account locked, please contact help desk.
807
808
809           Default: none
810
811       pam_cert_auth (bool)
812           Enable certificate based Smartcard authentication. Since this
813           requires additional communication with the Smartcard which will
814           delay the authentication process this option is disabled by
815           default.
816
817           Default: False
818
819       pam_cert_db_path (string)
820           The path to the certificate database which contain the PKCS#11
821           modules to access the Smartcard.
822
823           Default:
824
825           ·   /etc/pki/nssdb (NSS version, path to a NSS database)
826
827           ·   /etc/sssd/pki/sssd_auth_ca_db.pem (OpenSSL version, path to a
828               file with trusted CA certificates in PEM format)
829
830           This man page was generated for the OpenSSL version.
831
832       p11_child_timeout (integer)
833           How many seconds will pam_sss wait for p11_child to finish.
834
835           Default: 10
836
837       pam_app_services (string)
838           Which PAM services are permitted to contact domains of type
839           “application”
840
841           Default: Not set
842
843       pam_p11_allowed_services (integer)
844           A comma-separated list of PAM service names for which it will be
845           allowed to use Smartcards.
846
847           It is possible to add another PAM service name to the default set
848           by using “+service_name” or to explicitly remove a PAM service name
849           from the default set by using “-service_name”. For example, in
850           order to replace a default PAM service name for authentication with
851           Smartcards (e.g.  “login”) with a custom PAM service name (e.g.
852           “my_pam_service”), you would use the following configuration:
853
854               pam_p11_allowed_services = +my_pam_service, -login
855
856
857           Default: the default set of PAM service names includes:
858
859           ·   login
860
861           ·   su
862
863           ·   su-l
864
865           ·   gdm-smartcard
866
867           ·   gdm-password
868
869           ·   kdm
870
871           ·   sudo
872
873           ·   sudo-i
874
875           ·   gnome-screensaver
876
877
878       p11_wait_for_card_timeout (integer)
879           If Smartcard authentication is required how many extra seconds in
880           addition to p11_child_timeout should the PAM responder wait until a
881           Smartcard is inserted.
882
883           Default: 60
884
885       p11_uri (string)
886           PKCS#11 URI (see RFC-7512 for details) which can be used to
887           restrict the selection of devices used for Smartcard
888           authentication. By default SSSD's p11_child will search for a
889           PKCS#11 slot (reader) where the 'removable' flags is set and read
890           the certificates from the inserted token from the first slot found.
891           If multiple readers are connected p11_uri can be use to tell
892           p11_child to use a specific reader.
893
894           Example:
895
896               p11_uri = slot-description=My%20Smartcar%20Reader
897
898
899           or
900
901               p11_uri = library-description=OpenSC%20smartcard%20framework;slot-id=2
902
903
904           To find suitable URI please check the debug output of p11_child. As
905           an alternative the GnuTLS utility 'p11tool' with e.g. the
906           '--list-all' will show PKCS#11 URIs as well.
907
908           Default: none
909
910   SUDO configuration options
911       These options can be used to configure the sudo service. The detailed
912       instructions for configuration of sudo(8) to work with sssd(8) are in
913       the manual page sssd-sudo(5).
914
915       sudo_timed (bool)
916           Whether or not to evaluate the sudoNotBefore and sudoNotAfter
917           attributes that implement time-dependent sudoers entries.
918
919           Default: false
920
921       sudo_threshold (integer)
922           Maximum number of expired rules that can be refreshed at once. If
923           number of expired rules is below threshold, those rules are
924           refreshed with “rules refresh” mechanism. If the threshold is
925           exceeded a “full refresh” of sudo rules is triggered instead. This
926           threshold number also applies to IPA sudo command and command group
927           searches.
928
929           Default: 50
930
931   AUTOFS configuration options
932       These options can be used to configure the autofs service.
933
934       autofs_negative_timeout (integer)
935           Specifies for how many seconds should the autofs responder negative
936           cache hits (that is, queries for invalid map entries, like
937           nonexistent ones) before asking the back end again.
938
939           Default: 15
940
941       Please note that the automounter only reads the master map on startup,
942       so if any autofs-related changes are made to the sssd.conf, you
943       typically also need to restart the automounter daemon after restarting
944       the SSSD.
945
946   SSH configuration options
947       These options can be used to configure the SSH service.
948
949       ssh_hash_known_hosts (bool)
950           Whether or not to hash host names and addresses in the managed
951           known_hosts file.
952
953           Default: true
954
955       ssh_known_hosts_timeout (integer)
956           How many seconds to keep a host in the managed known_hosts file
957           after its host keys were requested.
958
959           Default: 180
960
961       ssh_use_certificate_keys (bool)
962           If set to true the sss_ssh_authorizedkeys will return ssh keys
963           derived from the public key of X.509 certificates stored in the
964           user entry as well. See sss_ssh_authorizedkeys(1) for details.
965
966           Default: true
967
968       ca_db (string)
969           Path to a storage of trusted CA certificates. The option is used to
970           validate user certificates before deriving public ssh keys from
971           them.
972
973           Default:
974
975           ·   /etc/pki/nssdb (NSS version, path to a NSS database)
976
977           ·   /etc/sssd/pki/sssd_auth_ca_db.pem (OpenSSL version, path to a
978               file with trusted CA certificates in PEM format)
979
980           This man page was generated for the OpenSSL version.
981
982   PAC responder configuration options
983       The PAC responder works together with the authorization data plugin for
984       MIT Kerberos sssd_pac_plugin.so and a sub-domain provider. The plugin
985       sends the PAC data during a GSSAPI authentication to the PAC responder.
986       The sub-domain provider collects domain SID and ID ranges of the domain
987       the client is joined to and of remote trusted domains from the local
988       domain controller. If the PAC is decoded and evaluated some of the
989       following operations are done:
990
991       ·   If the remote user does not exist in the cache, it is created. The
992           UID is determined with the help of the SID, trusted domains will
993           have UPGs and the GID will have the same value as the UID. The home
994           directory is set based on the subdomain_homedir parameter. The
995           shell will be empty by default, i.e. the system defaults are used,
996           but can be overwritten with the default_shell parameter.
997
998       ·   If there are SIDs of groups from domains sssd knows about, the user
999           will be added to those groups.
1000
1001       These options can be used to configure the PAC responder.
1002
1003       allowed_uids (string)
1004           Specifies the comma-separated list of UID values or user names that
1005           are allowed to access the PAC responder. User names are resolved to
1006           UIDs at startup.
1007
1008           Default: 0 (only the root user is allowed to access the PAC
1009           responder)
1010
1011           Please note that although the UID 0 is used as the default it will
1012           be overwritten with this option. If you still want to allow the
1013           root user to access the PAC responder, which would be the typical
1014           case, you have to add 0 to the list of allowed UIDs as well.
1015
1016       pac_lifetime (integer)
1017           Lifetime of the PAC entry in seconds. As long as the PAC is valid
1018           the PAC data can be used to determine the group memberships of a
1019           user.
1020
1021           Default: 300
1022
1023   Session recording configuration options
1024       Session recording works in conjunction with tlog-rec-session(8), a part
1025       of tlog package, to log what users see and type when they log in on a
1026       text terminal. See also sssd-session-recording(5).
1027
1028       These options can be used to configure session recording.
1029
1030       scope (string)
1031           One of the following strings specifying the scope of session
1032           recording:
1033
1034           "none"
1035               No users are recorded.
1036
1037           "some"
1038               Users/groups specified by users and groups options are
1039               recorded.
1040
1041           "all"
1042               All users are recorded.
1043
1044           Default: "none"
1045
1046       users (string)
1047           A comma-separated list of users which should have session recording
1048           enabled. Matches user names as returned by NSS. I.e. after the
1049           possible space replacement, case changes, etc.
1050
1051           Default: Empty. Matches no users.
1052
1053       groups (string)
1054           A comma-separated list of groups, members of which should have
1055           session recording enabled. Matches group names as returned by NSS.
1056           I.e. after the possible space replacement, case changes, etc.
1057
1058           NOTE: using this option (having it set to anything) has a
1059           considerable performance cost, because each uncached request for a
1060           user requires retrieving and matching the groups the user is member
1061           of.
1062
1063           Default: Empty. Matches no groups.
1064

DOMAIN SECTIONS

1066       These configuration options can be present in a domain configuration
1067       section, that is, in a section called “[domain/NAME]”
1068
1069       domain_type (string)
1070           Specifies whether the domain is meant to be used by POSIX-aware
1071           clients such as the Name Service Switch or by applications that do
1072           not need POSIX data to be present or generated. Only objects from
1073           POSIX domains are available to the operating system interfaces and
1074           utilities.
1075
1076           Allowed values for this option are “posix” and “application”.
1077
1078           POSIX domains are reachable by all services. Application domains
1079           are only reachable from the InfoPipe responder (see sssd-ifp(5))
1080           and the PAM responder.
1081
1082           NOTE: The application domains are currently well tested with
1083           “id_provider=ldap” only.
1084
1085           For an easy way to configure a non-POSIX domains, please see the
1086           “Application domains” section.
1087
1088           Default: posix
1089
1090       min_id,max_id (integer)
1091           UID and GID limits for the domain. If a domain contains an entry
1092           that is outside these limits, it is ignored.
1093
1094           For users, this affects the primary GID limit. The user will not be
1095           returned to NSS if either the UID or the primary GID is outside the
1096           range. For non-primary group memberships, those that are in range
1097           will be reported as expected.
1098
1099           These ID limits affect even saving entries to cache, not only
1100           returning them by name or ID.
1101
1102           Default: 1 for min_id, 0 (no limit) for max_id
1103
1104       enumerate (bool)
1105           Determines if a domain can be enumerated, that is, whether the
1106           domain can list all the users and group it contains. Note that it
1107           is not required to enable enumeration in order for secondary groups
1108           to be displayed. This parameter can have one of the following
1109           values:
1110
1111           TRUE = Users and groups are enumerated
1112
1113           FALSE = No enumerations for this domain
1114
1115           Default: FALSE
1116
1117           Enumerating a domain requires SSSD to download and store ALL user
1118           and group entries from the remote server.
1119
1120           Note: Enabling enumeration has a moderate performance impact on
1121           SSSD while enumeration is running. It may take up to several
1122           minutes after SSSD startup to fully complete enumerations. During
1123           this time, individual requests for information will go directly to
1124           LDAP, though it may be slow, due to the heavy enumeration
1125           processing. Saving a large number of entries to cache after the
1126           enumeration completes might also be CPU intensive as the
1127           memberships have to be recomputed. This can lead to the “sssd_be”
1128           process becoming unresponsive or even restarted by the internal
1129           watchdog.
1130
1131           While the first enumeration is running, requests for the complete
1132           user or group lists may return no results until it completes.
1133
1134           Further, enabling enumeration may increase the time necessary to
1135           detect network disconnection, as longer timeouts are required to
1136           ensure that enumeration lookups are completed successfully. For
1137           more information, refer to the man pages for the specific
1138           id_provider in use.
1139
1140           For the reasons cited above, enabling enumeration is not
1141           recommended, especially in large environments.
1142
1143       subdomain_enumerate (string)
1144           Whether any of autodetected trusted domains should be enumerated.
1145           The supported values are:
1146
1147           all
1148               All discovered trusted domains will be enumerated
1149
1150           none
1151               No discovered trusted domains will be enumerated
1152
1153           Optionally, a list of one or more domain names can enable
1154           enumeration just for these trusted domains.
1155
1156           Default: none
1157
1158       entry_cache_timeout (integer)
1159           How many seconds should nss_sss consider entries valid before
1160           asking the backend again
1161
1162           The cache expiration timestamps are stored as attributes of
1163           individual objects in the cache. Therefore, changing the cache
1164           timeout only has effect for newly added or expired entries. You
1165           should run the sss_cache(8) tool in order to force refresh of
1166           entries that have already been cached.
1167
1168           Default: 5400
1169
1170       entry_cache_user_timeout (integer)
1171           How many seconds should nss_sss consider user entries valid before
1172           asking the backend again
1173
1174           Default: entry_cache_timeout
1175
1176       entry_cache_group_timeout (integer)
1177           How many seconds should nss_sss consider group entries valid before
1178           asking the backend again
1179
1180           Default: entry_cache_timeout
1181
1182       entry_cache_netgroup_timeout (integer)
1183           How many seconds should nss_sss consider netgroup entries valid
1184           before asking the backend again
1185
1186           Default: entry_cache_timeout
1187
1188       entry_cache_service_timeout (integer)
1189           How many seconds should nss_sss consider service entries valid
1190           before asking the backend again
1191
1192           Default: entry_cache_timeout
1193
1194       entry_cache_sudo_timeout (integer)
1195           How many seconds should sudo consider rules valid before asking the
1196           backend again
1197
1198           Default: entry_cache_timeout
1199
1200       entry_cache_autofs_timeout (integer)
1201           How many seconds should the autofs service consider automounter
1202           maps valid before asking the backend again
1203
1204           Default: entry_cache_timeout
1205
1206       entry_cache_ssh_host_timeout (integer)
1207           How many seconds to keep a host ssh key after refresh. IE how long
1208           to cache the host key for.
1209
1210           Default: entry_cache_timeout
1211
1212       refresh_expired_interval (integer)
1213           Specifies how many seconds SSSD has to wait before triggering a
1214           background refresh task which will refresh all expired or nearly
1215           expired records.
1216
1217           The background refresh will process users, groups and netgroups in
1218           the cache.
1219
1220           You can consider setting this value to 3/4 * entry_cache_timeout.
1221
1222           Default: 0 (disabled)
1223
1224       cache_credentials (bool)
1225           Determines if user credentials are also cached in the local LDB
1226           cache
1227
1228           User credentials are stored in a SHA512 hash, not in plaintext
1229
1230           Default: FALSE
1231
1232       cache_credentials_minimal_first_factor_length (int)
1233           If 2-Factor-Authentication (2FA) is used and credentials should be
1234           saved this value determines the minimal length the first
1235           authentication factor (long term password) must have to be saved as
1236           SHA512 hash into the cache.
1237
1238           This should avoid that the short PINs of a PIN based 2FA scheme are
1239           saved in the cache which would make them easy targets for
1240           brute-force attacks.
1241
1242           Default: 8
1243
1244       account_cache_expiration (integer)
1245           Number of days entries are left in cache after last successful
1246           login before being removed during a cleanup of the cache. 0 means
1247           keep forever. The value of this parameter must be greater than or
1248           equal to offline_credentials_expiration.
1249
1250           Default: 0 (unlimited)
1251
1252       pwd_expiration_warning (integer)
1253           Display a warning N days before the password expires.
1254
1255           If zero is set, then this filter is not applied, i.e. if the
1256           expiration warning was received from backend server, it will
1257           automatically be displayed.
1258
1259           Please note that the backend server has to provide information
1260           about the expiration time of the password. If this information is
1261           missing, sssd cannot display a warning. Also an auth provider has
1262           to be configured for the backend.
1263
1264           Default: 7 (Kerberos), 0 (LDAP)
1265
1266       id_provider (string)
1267           The identification provider used for the domain. Supported ID
1268           providers are:
1269
1270           “proxy”: Support a legacy NSS provider.
1271
1272           “files”: FILES provider. See sssd-files(5) for more information on
1273           how to mirror local users and groups into SSSD.
1274
1275           “ldap”: LDAP provider. See sssd-ldap(5) for more information on
1276           configuring LDAP.
1277
1278           “ipa”: FreeIPA and Red Hat Enterprise Identity Management provider.
1279           See sssd-ipa(5) for more information on configuring FreeIPA.
1280
1281           “ad”: Active Directory provider. See sssd-ad(5) for more
1282           information on configuring Active Directory.
1283
1284       use_fully_qualified_names (bool)
1285           Use the full name and domain (as formatted by the domain's
1286           full_name_format) as the user's login name reported to NSS.
1287
1288           If set to TRUE, all requests to this domain must use fully
1289           qualified names. For example, if used in LOCAL domain that contains
1290           a "test" user, getent passwd test wouldn't find the user while
1291           getent passwd test@LOCAL would.
1292
1293           NOTE: This option has no effect on netgroup lookups due to their
1294           tendency to include nested netgroups without qualified names. For
1295           netgroups, all domains will be searched when an unqualified name is
1296           requested.
1297
1298           Default: FALSE (TRUE if default_domain_suffix is used)
1299
1300       ignore_group_members (bool)
1301           Do not return group members for group lookups.
1302
1303           If set to TRUE, the group membership attribute is not requested
1304           from the ldap server, and group members are not returned when
1305           processing group lookup calls, such as getgrnam(3) or getgrgid(3).
1306           As an effect, “getent group $groupname” would return the requested
1307           group as if it was empty.
1308
1309           Enabling this option can also make access provider checks for group
1310           membership significantly faster, especially for groups containing
1311           many members.
1312
1313           Default: FALSE
1314
1315       auth_provider (string)
1316           The authentication provider used for the domain. Supported auth
1317           providers are:
1318
1319           “ldap” for native LDAP authentication. See sssd-ldap(5) for more
1320           information on configuring LDAP.
1321
1322           “krb5” for Kerberos authentication. See sssd-krb5(5) for more
1323           information on configuring Kerberos.
1324
1325           “ipa”: FreeIPA and Red Hat Enterprise Identity Management provider.
1326           See sssd-ipa(5) for more information on configuring FreeIPA.
1327
1328           “ad”: Active Directory provider. See sssd-ad(5) for more
1329           information on configuring Active Directory.
1330
1331           “proxy” for relaying authentication to some other PAM target.
1332
1333           “none” disables authentication explicitly.
1334
1335           Default: “id_provider” is used if it is set and can handle
1336           authentication requests.
1337
1338       access_provider (string)
1339           The access control provider used for the domain. There are two
1340           built-in access providers (in addition to any included in installed
1341           backends) Internal special providers are:
1342
1343           “permit” always allow access. It's the only permitted access
1344           provider for a local domain.
1345
1346           “deny” always deny access.
1347
1348           “ldap” for native LDAP authentication. See sssd-ldap(5) for more
1349           information on configuring LDAP.
1350
1351           “ipa”: FreeIPA and Red Hat Enterprise Identity Management provider.
1352           See sssd-ipa(5) for more information on configuring FreeIPA.
1353
1354           “ad”: Active Directory provider. See sssd-ad(5) for more
1355           information on configuring Active Directory.
1356
1357           “simple” access control based on access or deny lists. See sssd-
1358           simple(5) for more information on configuring the simple access
1359           module.
1360
1361           “krb5”: .k5login based access control. See sssd-krb5(5) for more
1362           information on configuring Kerberos.
1363
1364           “proxy” for relaying access control to another PAM module.
1365
1366           Default: “permit”
1367
1368       chpass_provider (string)
1369           The provider which should handle change password operations for the
1370           domain. Supported change password providers are:
1371
1372           “ldap” to change a password stored in a LDAP server. See sssd-
1373           ldap(5) for more information on configuring LDAP.
1374
1375           “krb5” to change the Kerberos password. See sssd-krb5(5) for more
1376           information on configuring Kerberos.
1377
1378           “ipa”: FreeIPA and Red Hat Enterprise Identity Management provider.
1379           See sssd-ipa(5) for more information on configuring FreeIPA.
1380
1381           “ad”: Active Directory provider. See sssd-ad(5) for more
1382           information on configuring Active Directory.
1383
1384           “proxy” for relaying password changes to some other PAM target.
1385
1386           “none” disallows password changes explicitly.
1387
1388           Default: “auth_provider” is used if it is set and can handle change
1389           password requests.
1390
1391       sudo_provider (string)
1392           The SUDO provider used for the domain. Supported SUDO providers
1393           are:
1394
1395           “ldap” for rules stored in LDAP. See sssd-ldap(5) for more
1396           information on configuring LDAP.
1397
1398           “ipa” the same as “ldap” but with IPA default settings.
1399
1400           “ad” the same as “ldap” but with AD default settings.
1401
1402           “none” disables SUDO explicitly.
1403
1404           Default: The value of “id_provider” is used if it is set.
1405
1406           The detailed instructions for configuration of sudo_provider are in
1407           the manual page sssd-sudo(5). There are many configuration options
1408           that can be used to adjust the behavior. Please refer to
1409           "ldap_sudo_*" in sssd-ldap(5).
1410
1411           NOTE: Sudo rules are periodically downloaded in the background
1412           unless the sudo provider is explicitly disabled. Set sudo_provider
1413           = None to disable all sudo-related activity in SSSD if you do not
1414           want to use sudo with SSSD at all.
1415
1416       selinux_provider (string)
1417           The provider which should handle loading of selinux settings. Note
1418           that this provider will be called right after access provider ends.
1419           Supported selinux providers are:
1420
1421           “ipa” to load selinux settings from an IPA server. See sssd-ipa(5)
1422           for more information on configuring IPA.
1423
1424           “none” disallows fetching selinux settings explicitly.
1425
1426           Default: “id_provider” is used if it is set and can handle selinux
1427           loading requests.
1428
1429       subdomains_provider (string)
1430           The provider which should handle fetching of subdomains. This value
1431           should be always the same as id_provider. Supported subdomain
1432           providers are:
1433
1434           “ipa” to load a list of subdomains from an IPA server. See sssd-
1435           ipa(5) for more information on configuring IPA.
1436
1437           “ad” to load a list of subdomains from an Active Directory server.
1438           See sssd-ad(5) for more information on configuring the AD provider.
1439
1440           “none” disallows fetching subdomains explicitly.
1441
1442           Default: The value of “id_provider” is used if it is set.
1443
1444       session_provider (string)
1445           The provider which configures and manages user session related
1446           tasks. The only user session task currently provided is the
1447           integration with Fleet Commander, which works only with IPA.
1448           Supported session providers are:
1449
1450           “ipa” to allow performing user session related tasks.
1451
1452           “none” does not perform any kind of user session related tasks.
1453
1454           Default: “id_provider” is used if it is set and can perform session
1455           related tasks.
1456
1457           NOTE: In order to have this feature working as expected SSSD must
1458           be running as "root" and not as the unprivileged user.
1459
1460       autofs_provider (string)
1461           The autofs provider used for the domain. Supported autofs providers
1462           are:
1463
1464           “ldap” to load maps stored in LDAP. See sssd-ldap(5) for more
1465           information on configuring LDAP.
1466
1467           “ipa” to load maps stored in an IPA server. See sssd-ipa(5) for
1468           more information on configuring IPA.
1469
1470           “ad” to load maps stored in an AD server. See sssd-ad(5) for more
1471           information on configuring the AD provider.
1472
1473           “none” disables autofs explicitly.
1474
1475           Default: The value of “id_provider” is used if it is set.
1476
1477       hostid_provider (string)
1478           The provider used for retrieving host identity information.
1479           Supported hostid providers are:
1480
1481           “ipa” to load host identity stored in an IPA server. See sssd-
1482           ipa(5) for more information on configuring IPA.
1483
1484           “none” disables hostid explicitly.
1485
1486           Default: The value of “id_provider” is used if it is set.
1487
1488       re_expression (string)
1489           Regular expression for this domain that describes how to parse the
1490           string containing user name and domain into these components. The
1491           "domain" can match either the SSSD configuration domain name, or,
1492           in the case of IPA trust subdomains and Active Directory domains,
1493           the flat (NetBIOS) name of the domain.
1494
1495           Default for the AD and IPA provider:
1496           “(((?P<domain>[^\\]+)\\(?P<name>.+$))|((?P<name>[^@]+)@(?P<domain>.+$))|(^(?P<name>[^@\\]+)$))”
1497           which allows three different styles for user names:
1498
1499           ·   username
1500
1501           ·   username@domain.name
1502
1503           ·   domain\username
1504
1505           While the first two correspond to the general default the third one
1506           is introduced to allow easy integration of users from Windows
1507           domains.
1508
1509           Default: “(?P<name>[^@]+)@?(?P<domain>[^@]*$)” which translates to
1510           "the name is everything up to the “@” sign, the domain everything
1511           after that"
1512
1513           NOTE: Some Active Directory groups, typically those used for MS
1514           Exchange contain an “@” sign in the name, which clashes with the
1515           default re_expression value for the AD and IPA providers. To
1516           support these groups, consider changing the re_expression value to:
1517           “((?P<name>.+)@(?P<domain>[^@]+$))”.
1518
1519       full_name_format (string)
1520           A printf(3)-compatible format that describes how to compose a fully
1521           qualified name from user name and domain name components.
1522
1523           The following expansions are supported:
1524
1525           %1$s
1526               user name
1527
1528           %2$s
1529               domain name as specified in the SSSD config file.
1530
1531           %3$s
1532               domain flat name. Mostly usable for Active Directory domains,
1533               both directly configured or discovered via IPA trusts.
1534
1535           Default: “%1$s@%2$s”.
1536
1537       lookup_family_order (string)
1538           Provides the ability to select preferred address family to use when
1539           performing DNS lookups.
1540
1541           Supported values:
1542
1543           ipv4_first: Try looking up IPv4 address, if that fails, try IPv6
1544
1545           ipv4_only: Only attempt to resolve hostnames to IPv4 addresses.
1546
1547           ipv6_first: Try looking up IPv6 address, if that fails, try IPv4
1548
1549           ipv6_only: Only attempt to resolve hostnames to IPv6 addresses.
1550
1551           Default: ipv4_first
1552
1553       dns_resolver_timeout (integer)
1554           Defines the amount of time (in seconds) to wait for a reply from
1555           the internal fail over service before assuming that the service is
1556           unreachable. If this timeout is reached, the domain will continue
1557           to operate in offline mode.
1558
1559           Please see the section “FAILOVER” for more information about the
1560           service resolution.
1561
1562           Default: 6
1563
1564       dns_discovery_domain (string)
1565           If service discovery is used in the back end, specifies the domain
1566           part of the service discovery DNS query.
1567
1568           Default: Use the domain part of machine's hostname
1569
1570       override_gid (integer)
1571           Override the primary GID value with the one specified.
1572
1573       case_sensitive (string)
1574           Treat user and group names as case sensitive. Possible option
1575           values are:
1576
1577           True
1578               Case sensitive. This value is invalid for AD provider.
1579
1580           False
1581               Case insensitive.
1582
1583           Preserving
1584               Same as False (case insensitive), but does not lowercase names
1585               in the result of NSS operations. Note that name aliases (and in
1586               case of services also protocol names) are still lowercased in
1587               the output.
1588
1589           Default: True (False for AD provider)
1590
1591       subdomain_inherit (string)
1592           Specifies a list of configuration parameters that should be
1593           inherited by a subdomain. Please note that only selected parameters
1594           can be inherited. Currently the following options can be inherited:
1595
1596           ignore_group_members
1597
1598           ldap_purge_cache_timeout
1599
1600           ldap_use_tokengroups
1601
1602           ldap_user_principal
1603
1604           ldap_krb5_keytab (the value of krb5_keytab will be used if
1605           ldap_krb5_keytab is not set explicitly)
1606
1607           Example:
1608
1609               subdomain_inherit = ldap_purge_cache_timeout
1610
1611
1612           Default: none
1613
1614           Note: This option only works with the IPA and AD provider.
1615
1616       subdomain_homedir (string)
1617           Use this homedir as default value for all subdomains within this
1618           domain in IPA AD trust. See override_homedir for info about
1619           possible values. In addition to those, the expansion below can only
1620           be used with subdomain_homedir.
1621
1622           %F
1623               flat (NetBIOS) name of a subdomain.
1624
1625           The value can be overridden by override_homedir option.
1626
1627           Default: /home/%d/%u
1628
1629       realmd_tags (string)
1630           Various tags stored by the realmd configuration service for this
1631           domain.
1632
1633       cached_auth_timeout (int)
1634           Specifies time in seconds since last successful online
1635           authentication for which user will be authenticated using cached
1636           credentials while SSSD is in the online mode.
1637
1638           Special value 0 implies that this feature is disabled.
1639
1640           Please note that if “cached_auth_timeout” is longer than
1641           “pam_id_timeout” then the back end could be called to handle
1642           “initgroups.”
1643
1644           Default: 0
1645
1646       auto_private_groups (string)
1647           If this option is enabled, SSSD will automatically create user
1648           private groups based on user's UID number. The GID number is
1649           ignored in this case.
1650
1651           For POSIX subdomains, setting the option in the main domain is
1652           inherited in the subdomain.
1653
1654           For ID-mapping subdomains, auto_private_groups is already enabled
1655           for the subdomains and setting it to false will not have any effect
1656           for the subdomain.
1657
1658           NOTE: Because the GID number and the user private group are
1659           inferred from the UID number, it is not supported to have multiple
1660           entries with the same UID or GID number with this option. In other
1661           words, enabling this option enforces uniqueness across the ID
1662           space.
1663
1664           Default: False
1665
1666       Options valid for proxy domains.
1667
1668       proxy_pam_target (string)
1669           The proxy target PAM proxies to.
1670
1671           Default: not set by default, you have to take an existing pam
1672           configuration or create a new one and add the service name here.
1673
1674       proxy_lib_name (string)
1675           The name of the NSS library to use in proxy domains. The NSS
1676           functions searched for in the library are in the form of
1677           _nss_$(libName)_$(function), for example _nss_files_getpwent.
1678
1679       proxy_fast_alias (boolean)
1680           When a user or group is looked up by name in the proxy provider, a
1681           second lookup by ID is performed to "canonicalize" the name in case
1682           the requested name was an alias. Setting this option to true would
1683           cause the SSSD to perform the ID lookup from cache for performance
1684           reasons.
1685
1686           Default: false
1687
1688       proxy_max_children (integer)
1689           This option specifies the number of pre-forked proxy children. It
1690           is useful for high-load SSSD environments where sssd may run out of
1691           available child slots, which would cause some issues due to the
1692           requests being queued.
1693
1694           Default: 10
1695
1696   Application domains
1697       SSSD, with its D-Bus interface (see sssd-ifp(5)) is appealing to
1698       applications as a gateway to an LDAP directory where users and groups
1699       are stored. However, contrary to the traditional SSSD deployment where
1700       all users and groups either have POSIX attributes or those attributes
1701       can be inferred from the Windows SIDs, in many cases the users and
1702       groups in the application support scenario have no POSIX attributes.
1703       Instead of setting a “[domain/NAME]” section, the administrator can set
1704       up an “[application/NAME]” section that internally represents a domain
1705       with type “application” optionally inherits settings from a tradition
1706       SSSD domain.
1707
1708       Please note that the application domain must still be explicitly
1709       enabled in the “domains” parameter so that the lookup order between the
1710       application domain and its POSIX sibling domain is set correctly.
1711
1712       Application domain parameters
1713
1714       inherit_from (string)
1715           The SSSD POSIX-type domain the application domain inherits all
1716           settings from. The application domain can moreover add its own
1717           settings to the application settings that augment or override the
1718           “sibling” domain settings.
1719
1720           Default: Not set
1721
1722       The following example illustrates the use of an application domain. In
1723       this setup, the POSIX domain is connected to an LDAP server and is used
1724       by the OS through the NSS responder. In addition, the application
1725       domain also requests the telephoneNumber attribute, stores it as the
1726       phone attribute in the cache and makes the phone attribute reachable
1727       through the D-Bus interface.
1728
1729           [sssd]
1730           domains = appdom, posixdom
1731
1732           [ifp]
1733           user_attributes = +phone
1734
1735           [domain/posixdom]
1736           id_provider = ldap
1737           ldap_uri = ldap://ldap.example.com
1738           ldap_search_base = dc=example,dc=com
1739
1740           [application/appdom]
1741           inherit_from = posixdom
1742           ldap_user_extra_attrs = phone:telephoneNumber
1743

TRUSTED DOMAIN SECTION

1745       Some options used in the domain section can also be used in the trusted
1746       domain section, that is, in a section called
1747       “[domain/DOMAIN_NAME/TRUSTED_DOMAIN_NAME]”. Where DOMAIN_NAME is the
1748       actual joined-to base domain. Please refer to examples below for
1749       explanation. Currently supported options in the trusted domain section
1750       are:
1751
1752       ldap_search_base,
1753
1754       ldap_user_search_base,
1755
1756       ldap_group_search_base,
1757
1758       ldap_netgroup_search_base,
1759
1760       ldap_service_search_base,
1761
1762       ad_server,
1763
1764       ad_backup_server,
1765
1766       ad_site,
1767
1768       use_fully_qualified_names
1769
1770       For more details about these options see their individual description
1771       in the manual page.
1772

CERTIFICATE MAPPING SECTION

1774       To allow authentication with Smartcards and certificates SSSD must be
1775       able to map certificates to users. This can be done by adding the full
1776       certificate to the LDAP object of the user or to a local override.
1777       While using the full certificate is required to use the Smartcard
1778       authentication feature of SSH (see sss_ssh_authorizedkeys(8) for
1779       details) it might be cumbersome or not even possible to do this for the
1780       general case where local services use PAM for authentication.
1781
1782       To make the mapping more flexible mapping and matching rules were added
1783       to SSSD (see sss-certmap(5) for details).
1784
1785       A mapping and matching rule can be added to the SSSD configuration in a
1786       section on its own with a name like “[certmap/DOMAIN_NAME/RULE_NAME]”.
1787       In this section the following options are allowed:
1788
1789       matchrule (string)
1790           Only certificates from the Smartcard which matches this rule will
1791           be processed, all others are ignored.
1792
1793           Default: KRB5:<EKU>clientAuth, i.e. only certificates which have
1794           the Extended Key Usage “clientAuth”
1795
1796       maprule (string)
1797           Defines how the user is found for a given certificate.
1798
1799           Default:
1800
1801           ·   LDAP:(userCertificate;binary={cert!bin}) for LDAP based
1802               providers like “ldap”, “AD” or “ipa”.
1803
1804           ·   The RULE_NAME for the “files” provider which tries to find a
1805               user with the same name.
1806
1807
1808       domains (string)
1809           Comma separated list of domain names the rule should be applied. By
1810           default a rule is only valid in the domain configured in sssd.conf.
1811           If the provider supports subdomains this option can be used to add
1812           the rule to subdomains as well.
1813
1814           Default: the configured domain in sssd.conf
1815
1816       priority (integer)
1817           Unsigned integer value defining the priority of the rule. The
1818           higher the number the lower the priority.  “0” stands for the
1819           highest priority while “4294967295” is the lowest.
1820
1821           Default: the lowest priority
1822
1823       To make the configuration simple and reduce the amount of configuration
1824       options the “files” provider has some special properties:
1825
1826       ·   if maprule is not set the RULE_NAME name is assumed to be the name
1827           of the matching user
1828
1829       ·   if a maprule is used both a single user name or a template like
1830           “{subject_rfc822_name.short_name}” must be in braces like e.g.
1831           “(username)” or “({subject_rfc822_name.short_name})”
1832
1833       ·   the “domains” option is ignored
1834
1835

EXAMPLES

1837       1. The following example shows a typical SSSD config. It does not
1838       describe configuration of the domains themselves - refer to
1839       documentation on configuring domains for more details.
1840
1841           [sssd]
1842           domains = LDAP
1843           services = nss, pam
1844           config_file_version = 2
1845
1846           [nss]
1847           filter_groups = root
1848           filter_users = root
1849
1850           [pam]
1851
1852           [domain/LDAP]
1853           id_provider = ldap
1854           ldap_uri = ldap://ldap.example.com
1855           ldap_search_base = dc=example,dc=com
1856
1857           auth_provider = krb5
1858           krb5_server = kerberos.example.com
1859           krb5_realm = EXAMPLE.COM
1860           cache_credentials = true
1861
1862           min_id = 10000
1863           max_id = 20000
1864           enumerate = False
1865
1866       2. The following example shows configuration of IPA AD trust where the
1867       AD forest consists of two domains in a parent-child structure. Suppose
1868       IPA domain (ipa.com) has trust with AD domain(ad.com). ad.com has child
1869       domain (child.ad.com). To enable shortnames in the child domain the
1870       following configuration should be used.
1871
1872           [domain/ipa.com/child.ad.com]
1873           use_fully_qualified_names = false
1874
1875       3. The following example shows the configuration for two certificate
1876       mapping rules. The first is valid for the configured domain “my.domain”
1877       and additionally for the subdomains “your.domain” and uses the full
1878       certificate in the search filter. The second example is valid for the
1879       domain “files” where it is assumed the files provider is used for this
1880       domain and contains a matching rule for the local user “myname”.
1881
1882           [certmap/my.domain/rule_name]
1883           matchrule = <ISSUER>^CN=My-CA,DC=MY,DC=DOMAIN$
1884           maprule = (userCertificate;binary={cert!bin})
1885           domains = my.domain, your.domain
1886           priority = 10
1887
1888           [certmap/files/myname]
1889           matchrule = <ISSUER>^CN=My-CA,DC=MY,DC=DOMAIN$<SUBJECT>^CN=User.Name,DC=MY,DC=DOMAIN$
1890
1891

SEE ALSO

1893       sssd(8), sssd.conf(5), sssd-ldap(5), sssd-krb5(5), sssd-simple(5),
1894       sssd-ipa(5), sssd-ad(5), sssd-files(5), sssd-sudo(5), sssd-session-
1895       recording(5), sss_cache(8), sss_debuglevel(8), sss_obfuscate(8),
1896       sss_seed(8), sssd_krb5_locator_plugin(8), sss_ssh_authorizedkeys(8),
1897       sss_ssh_knownhostsproxy(8), sssd-ifp(5), pam_sss(8).  sss_rpcidmapd(5)
1898       sssd-systemtap(5)
1899

AUTHORS

1901       The SSSD upstream - https://pagure.io/SSSD/sssd/
1902
1903
1904
1905SSSD                              03/28/2019                      SSSD.CONF(5)
Impressum