====== CentOS 7 AD Client ====== ====== Install nslcd and kerberos ====== yum install -y pam_krb5 krb5-workstation yum install -y nscd nss-pam-ldapd wget ====== Enalble nslcd service ====== systemctl enable nslcd ====== Configure nslcd ====== authconfig-tui select "Use LDAP" and "Use LDAP Authentication" select "Use TLS" Server: ldaps://ad1.acm.cs Base DN: dc=acm,dc=cs ====== Update nslcd config ====== uri ldaps://ad1.acm.cs uri ldaps://ad2.acm.cs uri ldaps://ad3.acm.cs ldap_version 3 base dc=acm,dc=cs binddn apacheacm@acm.cs bindpw (ask sysadmin) base group ou=ACMGroups,dc=acm,dc=cs base passwd ou=ACMUsers,dc=acm,dc=cs base shadow ou=ACMUsers,dc=acm,dc=cs bind_timelimit 3 timelimit 30 ssl on #ssl start_tls tls_reqcert never # Mappings for Active Directory pagesize 1000 referrals off idle_timelimit 800 filter passwd (&(objectClass=user)(!(objectClass=computer))(uidNumber=*)(unixHomeDirectory=*)) map passwd uid sAMAccountName map passwd homeDirectory unixHomeDirectory map passwd gecos displayName filter shadow (&(objectClass=user)(!(objectClass=computer))(uidNumber=*)(unixHomeDirectory=*)) map shadow uid sAMAccountName map shadow shadowLastChange pwdLastSet filter group (objectClass=group) nslcd.conf should not be world readable if bindpw is set chmod 600 /etc/nslcd.conf ====== More LDAP Config ====== make sure that passwd, group and shadow have files and then ldap passwd: files ldap group: files ldap shadow: files ldap ====== Start nslcd Service ====== systemctl start nslcd ====== Testing the configuration ====== getent passwd you should see the users form AD su - usernameInAd this should work [root@centosimg acmadmin]# su - bmiddha su: warning: cannot change directory to /home/bmiddha: No such file or directory -bash-4.2$ ====== Password auth with kerberos ====== [libdefaults] default_realm = ACM.CS dns_lookup_realm = false dns_lookup_kdc = true [realms] [domain_realm] acm.cs = ACM.CS .acm.cs = ACM.CS [logging] # kdc = CONSOLE Now you should be able to ssh with password ====== Sudo access to LAN Admins ====== Create this file %AcmLanAdmins ALL=(ALL) ALL ====== Auto create home directories ====== Run this authconfig --enablemkhomedir --updateall Append File . . # Create home directories session required pam_mkhomedir.so skel=/etc/skel/ ====== All Done! ======