1.ldap是什么
ldap目录服务认证,和windows活动目录类似,就是记录数据的一种方式
就像微博帐号,有一个帐号可以在任何一台设备登陆
2.ldap客户端所须软件
yum sssd krb5-workstation -y
authconfig-gtk
sssd
krb5-workstation
做这个实验,首先 执行vim /etc/yum.repos.d/rhel_dvd.repo
再执行 pingclassroom.example.com
3.如何开启ldap用户认证
(1)通过 authconfig-gtk 认证 ldap 用户
authconfig-gtk
(2)通过 authconfig-tui 认证 ldap 用户
authconfig-tui
因为tls的证书缺失,需要到服务器端下载所需要的证书到/etc/openldap/cacerts,
用到的命令
wget http://172.25.254.254/pub/example-ca.crt
下载证书文件
cd /etc/openldap/cacerts
wget http://classroom.example.com/pub/example-ca.crt
ls /etc/openldap/cacerts
<测试>
getent passwd ldapuser1
如果用户信息可以正常显示,证明客户端认成功。
检测 ldap 认证用户
getent passwd ldapuserx
vim /etc/sssd.conf
– enumerate = ture | false
– systemctl restart sssd
4.自动挂载用户家目录
yum install autofs -y
vim /etc/autofs.master
/home/guests /etc/auto.ldap
vim /etc/auto.ldap
ldapuser1 172.25.254.254:/home/guests/ldapuser1
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
* 172.25.254.254:/home/guests/&
systemctl restart autofs
自动挂在 ldap 用户家目录
安装 autofs
编辑 autofs 策略文件
– vim /etc/auto.master
/home/guests /etc/auto.ldap
– vim /etc/auto.ldap
ldapuser0 classroom.example.com:/home/guest
5 脚本
写之前修改本地用户名字
vim suth-config.sh
sh auth-config.sh
authconfig-tui
id ldapuser1
脚本内容太长,执行 authconfig --help | less
在文本里下面一行输入:/ldap查找需要的命令,复制粘贴到脚本
脚本内容无自动挂载ldap
#!/bin/bash
echo "install packages..."
yum install sssd krb5-workstation -y &> /dev/null
echo "config authconfig..."
authconfig \
--enableldap \
--enablekrb5 \
--disableldapauth \
--enableldaptls \
--ldapserver="classroom.example.com" \
--ldapbasedn="dc=example,dc=com" \
--ldaploadcacert=http://172.25.254.254/pub/example-ca.crt \
--krb5realm="EXAMPLE.COM" \
--krb5kdc="classroom.example.com" \
--krb5adminserver="classroom.example.com" \
--update
systemctl restart autofs
echo "ok!!"
文本编辑 ,有自动挂载ldap
#!/bin/bash
echo "install packages..."
yum install sssd krb5-workstation autofs -y &> /dev/null
echo "config authconfig..."
authconfig \
--enableldap \
--enablekrb5 \
--disableldapauth \
--enableldaptls \
--ldapserver="classroom.example.com" \
--ldapbasedn="dc=example,dc=com" \
--ldaploadcacert=http://172.25.254.254/pub/example-ca.crt \
--krb5realm="EXAMPLE.COM" \
--krb5kdc="classroom.example.com" \
--krb5adminserver="classroom.example.com" \
--update
echo "config autofs..."
echo "/home/guests /etc/auto.ldap" >>/etc/auto.master
echo "* 172.25.254.254:/home/guests/&"&