家庭目录和Active Directoryauthentication用户的shell

我已经成功地configurationsssd,并可以ssh进入一个系统与AD凭据我缺less的是创build一个主目录和bash设置为壳。

我的假设是,如果我login到一个没有本地linux帐户,但是有一个有效的AD帐户的系统,那么当用户第一次login时就会创build一个主目录,并且按照/etc/sssd/sssd.conf

 override_homedir = /home/%u default_shell = /bin/bash 

我也跑了

 authconfig --enablesssd --enablesssdauth --enablemkhomedir --update 

我错过了什么,或者我对现有configuration做出了不正确的假设?

我想避免使用Windows的Unix的Identity Managementfunction。

这个等式有两个部分。 一个是SSSD和名称服务交换机接口。 该部分报告主目录在系统上,你可以用“getent passwd $ username”来testing它。 只要这个命令给你准确的答案,那么SSSD就是应该的。

另一部分是实际创build主目录。 我会build议在那里使用oddjob和pam_oddjob_mkhomedir来覆盖旧的pam_mkhomedir。 根据我的经验,SELinux的效果更好。

查看/ var / log / secure以查看来自PAM模块的错误消息。

这个问题是通过移动条目解决的

 override_homedir = /home/%u default_shell = /bin/bash 

从sssd.conf的[sssd]部分到[domain / lab.local]

请先看这篇文章: 有关Linux服务器的Active Directoryauthentication的常识?

对于RHEL / CentOS 6.x系统,我这样做:

  • 使用正确的初始SSSD设置进行Authconfig。
  • 修改sssd.conf来品尝。
  • 修改并configurationoddjobd。

对于authconfig,如下所示:

authconfig –enablesssd –ldapserver = ldap://dc1.ad.blahblah.com –ldapbasedn =“dc = ad,dc = blahblah,dc = com”–enablerfc2307bis –enablesssdauth –krb5kdc = dc1.ad。 blahblah.com –krb5realm = AD.BLAHBLAH.COM –disableforcelegacy –enablelocauthorize –enablemkhomedir –updateall

  • 我简单的sssd.conf将如下所示: http ://pastebin.com/Aa2XsYhh – 修改configuration后重新启动sssd服务。

  • 然后我安装oddjob-mkhomediryum install oddjob-mkhomedir – 你可以在/etc/oddjobd.conf.d/oddjobd-mkhomedir.conf调整主目录权限

  • 确保sssdoddjob服务设置为在启动时启动。

这应该是所有需要的。