Centos
使用 Kerberos 通過 SSH 登錄時,oddjob_mkhomedir 不執行
我目前有一台伺服器,它具有 Kerberos/SSSD/Samba 來對 Windows 2012 AD 進行身份驗證。
在
/etc/pam.d/system-auth
oddjob_mkhomedir 中設置如下:session optional pam_oddjob_mkhomedir.so umask=0077 skel=/etc/skel
這是通過執行設置的
authconfig --enablesssdauth --enablesssd --enablemkhomedir --update
。但是,當使用 AD 帳戶通過 SSH 登錄時,不會創建主目錄,使用者只是以 root 身份結束,
/bin/sh
而不是/bin/bash
.錯誤日誌中沒有任何內容表明 sssd 未按預期執行或未呼叫 PAM 模組。
配置複製如下:
/etc/ssh/ssh_config
Port 22 ListenAddress x.x.x.x Protocol 2 SyslogFacility AUTHPRIV PermitRootLogin yes PasswordAuthentication yes ChallengeResponseAuthentication no KerberosAuthentication yes GSSAPIAuthentication yes GSSAPICleanupCredentials yes UsePAM yes AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE AcceptEnv XMODIFIERS X11Forwarding yes Subsystem sftp /usr/libexec/openssh/sftp-server
/etc/sssd/sssd.conf
[sssd] config_file_version = 2 debug_level = 7 domains = mydomain.co.uk services = nss, pam override_homedir = /home/%d/%u default_shell = /bin/bash [nss] [pam] [domain/mydomain.co.uk] id_provider = ad access_provider = ad cache_credentials = true debug_level = 7
我會看幾件事
- is oddjobd running? - any messages related to this or PAM in authlog, messages - is SElinux enabled or enforced? check audit log for any AVC denial messages
再次查看您的 sssd.conf,您可能想要
override_homedir
進入該DOMAIN
部分,否則 sssd 似乎從 ldap 獲取主目錄資訊。
對於未來的Google人:我在 RHEL7 上遇到了一個非常相似的問題。
症狀:
authconfig
已使用 ‘–enablesssd –enablessdauth –enablemkhomedir –update’ 執行sssd
已經(重新)開始oddjob-mkhomedir
已安裝並oddjobd
已(重新)啟動- 使用 LDAP 使用者登錄時仍然沒有創建目錄。
事實證明,當我重新啟動
dbus
時,一切都開始了——我認為oddjob 會向 DBus 註冊沒有被拾取的東西。可能值得一試!