RHEL6配置简单LDAP服务器
基于TLS加密和NFS的用户家目录自动挂载
实验说明:
在RHEL6.0中,使用开源的openldap套件,安装配置LDAP认证服务;并使用TLS加密认证;NFS共享用户家目录, autofs实现自动挂载。
实验环境:
利用教学使用的instructor服务器,提供dns、dhcp服务;
server5为独立的CA服务器,station.domain11.example.com配置
为ldap服务器,desktop11为ldap客户端。
备注:简单实验,服务器可集中在1台,客户端1台,共2台即可。
实验拓朴:
实验步骤:
1.DNS做好域名解析,
2.ldap服务器的基本网络配置
3.安装LDAP相关软件:
主要有3个包:openldap、openldap-servers、openldap-clients
4.配置LDAP的域信息,并测试!
5.创建数据库文件(从模板复制产生)。并使用户ldap有权限。
6.启动LDAP服务,自动创建数据库文件。
7.检查搜索域
8.创建待认证的用户。最后指定特定的家目录。如:/netdir/guests
9.安装迁移工具migrationtools,用来迁移系统用户为ldap用户。
这些 Perl 脚本的配置信息包含在 migrate_common.ph 文件的开头。对于我们来说,只需要修改命名前缀的变量来使用条目的识别名就足够了,如下所示:
10.创建认证账户文件
主要的概念:
dn:唯一区分名
dc:所属区域
ou:所属组织
cn/uid:全名/登录ID
① 运行脚本 migrate_base.pl,它会创建根项,并为 Hosts、Networks、Group 和 People 等创建低一级的组织单元,指定为base.ldif文件
② 创建用户数据库文件:最好先把要迁移为ldap用户先导出为独立文件。
③ 创建组账户文件;④ 检查产生的三个文件。
⑤ 重启sladp,迁移用户;
如果出现错误:
ldap_bind: Invalid credentials(49)
就表示你要么给出了错误的"cn="条目,要么给出了错误的密码
Enter LDAPPassword:(输入你刚才设置的密码),正确之后会显示:
检测:
11.打开服务器端防火墙tcp389端口
12.用GUI界面查看LDAP用户
最好是:cd /var/www/html/目录,再下载phpldapadmin-1.2.2.tgz(版本要新点的,不要下错啊!否则可能造成无法使用)
然后在客户机上打开浏览器http://192.168.0.111/myldap访问LDAP。如下:
登录的时候:DN框输入:cn=Manager,dc=domain11,dc=com,输入密码。
登录成功!列出目录用户
13.ldap客户端配置(另启一台为客户端)
1)打开LDAP配置界面
2)测试。这时还不能自动挂ldapuser的家目录,后面autofs再分析。
检查/etc/openldap/ldap.conf;/etc/nsswitch.conf;
再次检查/etc/resolv.conf的配置是否发生变化;
3)关于sssd服务。这个服务不是必须的。
安装sssd包。将/etc/sssd/sssd.conf文件中的#enumerate=false,修改为:enumerate=true,这样修改完后,getent就会从LDAP查找账户信息。
14.实现TLS加密
① 搭建CA中心,安装openssl包,并配置:
② CA中心生成自已的私、公钥(证书)
③ ldap服务器生成私钥,并生成证书请求文件:
④ CA中心签发证书,ldap服务器下载CA证书和自己的证书
⑤ ldap服务器安装证书
⑥ CA中心发布自已的公钥
⑦ 测试
TLSVerifyClientnever #永不对客户证书进行认证
附注:要启动TLS进行数据加密,server端即使不对客户端进行证书认证,也必须(required)配置以上项,否则TLS失败。
15.实现基于NFS的LDAP用户主目录
1)配置nfs服务器
如果不是on则远程用户无权限进入自己的目录。
2) 配LDAP客户端。必须有第一节的目录,即:/netdir,其它可以没有!
3) 测试登录,有家目录了!