Description of problem:
On a workstation using Kerberos to login and autofs to mount NFS homedirs, the homedirs do not get mounted on login, because sssd starts before the workstation is able to reach the server
Version-Release number of selected component (if applicable):
install fc 30 system from scratch, configure kerberos, autofs to mount NFS homedirs. Boot, and autofs does not mount the homedirs. Manually restarting (systemctl restart) sssd.service and autofs.service fixes this.
Steps to Reproduce:
1. Boot fresh fc30
2. Find autofs is not mounting homedirs, users can't login on NFS home instead using local home at mountpoint
3. systemctl restart sssd and autofs
4. Now users can login and get their NFS home
No autofs mounted homedirs
autofs mounts homedirs and users can login to their homedir
Fix to problem:
patching the sssd.service file to wait for network online fixes this issue. E.g. with below patch
--- sssd.service 2019-07-17 09:37:15.495945708 +0200
+++ sssd.service.fix 2019-07-17 09:36:58.059009927 +0200
@@ -2,7 +2,8 @@
Description=System Security Services Daemon
# SSSD must be running before we permit user sessions
sssd configured with:
sudo authconfig --enableldap --enableldapauth \
content of file [sssd.conf]:
debug_level = 1
id_provider = ldap
autofs_provider = ldap
auth_provider = krb5
krb5_server = example.com
krb5_realm = EXAMPLE.COM
chpass_provider = krb5
sudo_provider = ldap
ldap_sudo_search_base = ou=SUDOers,dc=example,dc=com
ldap_uri = ldaps://example.com
ldap_search_base = dc=example,dc=com
cache_credentials = True
ldap_autofs_map_object_class = automountMap
ldap_autofs_entry_object_class = automount
ldap_autofs_map_name = automountMapName
ldap_autofs_entry_key = automountKey
ldap_autofs_entry_value = automountInformation
services = nss, pam, autofs, sudo
domains = default
homedir_substring = /home
debug_level = 1
https://pagure.io/SSSD/sssd/issue/3467 should have fixed the issue of not detecting online state when starting before network goes online.
You don't need to modify sssd.service file -- it is possible to create a local override instead:
# cat /etc/systemd/system/sssd.service.d/network.conf
Before=systemd-user-sessions.service nss-user-lookup.target network-online.target
Even though SSSD starts in offline mode, it will try to connect to the server on first authentication request.
Finally, there is no full-featured authconfig in Fedora 30. Some options you provided are not supported by authselect's compatibility layer.
There's also a long-standing issue where sssd returns the same error code to autofs for "I don't know the maps (yet)" and "There are no maps". This is something we'll fix in the upcoming weeks, for one of the next RHEL releases. It might be nice to see sssd logs to rule out that #3467 is fixed properly and sssd starts with the 'delayed' online detection.
apologies for the slow reply.. vacation.
@Alexander, thanks! Your suggestion for override works for me, and saves the hassle of updating sssd.service after every upgrade.
I'm running sssd-2.2.0-3.fc30.x86_64, I am not sure whether that contains the fix for #3467 (it went in 4 months ago, so probably it has, but the rpm changelog does not explicitly mention it).
He are the logs for sssd and autofs.. (not very helpful it seems, I can run again with the verbosity/debug level if you can tell me which levels are most helpful)
-- Reboot --
Jul 30 10:31:26 example.com systemd: Starting System Security Services Daemon...
Jul 30 10:32:01 example.com sssd: Starting up
Jul 30 10:32:06 example.com sssd[be[implicit_files]]: Starting up
Jul 30 10:32:06 example.com sssd[be[default]]: Starting up
Jul 30 10:32:10 example.com sssd[nss]: Starting up
Jul 30 10:32:10 example.com sssd[autofs]: Starting up
Jul 30 10:32:10 example.com sssd[pam]: Starting up
Jul 30 10:32:10 example.com sssd[sudo]: Starting up
Jul 30 10:32:15 example.com systemd: Started System Security Services Daemon.
Jul 30 10:33:00 example.com sssd[be[default]]: Backend is offline
Jul 30 10:33:07 example.com sssd[be[default]]: Backend is online
-- Reboot --
Jul 30 10:33:03 example.com systemd: Starting Automounts filesystems on demand...
Jul 30 10:34:34 example.com automount: lookup_read_master: lookup(sss): getautomntent_r: Invalid argument
Jul 30 10:34:35 example.com automount: setautomntent: lookup(sss): setautomntent: No such file or directory
Jul 30 10:34:35 example.com systemd: Started Automounts filesystems on demand.
This message is a reminder that Fedora 30 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 30 on 2020-05-26.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '30'.
Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version.
Thank you for reporting this issue and we are sorry that we were not
able to fix it before Fedora 30 is end of life. If you would still like
to see this bug fixed and are able to reproduce it against a later version
of Fedora, you are encouraged change the 'version' to a later Fedora
version prior this bug is closed as described in the policy above.
Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.
Fedora 30 changed to end-of-life (EOL) status on 2020-05-26. Fedora 30 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.
If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
Thank you for reporting this bug and we are sorry it could not be fixed.