Ldap统一认证实验
1.所需环境
LAMP:mysql没有用到
域名称设置:abc.com(这里先做了NIS域,可以不做)
服务器名:model
2.下载软件
Db-6.0.30.tar.gz
Openldap-2.4.39.tgz
Pam_ldap.gz和Nss_ldap.gz(32为系统,64为nss-pam-ldap,实验中直接emerge了)
Phpldapadmin-1.2.3.tgz
实验步骤:
上传上述文件到model
Tar zxvf db-6.0.30.tar.gz
Cd db.6.0.30/build_unix
../dist/configure##DB有本地编译的目录
Make
Make install
Echo “/usr/local/BerkeleyDB.6.0/lib” >>/etc/ld.so.conf
Cp /usr/local/BerkeleyDB.6.0/lib /usr/lib
Cp /usr/local/BerkeleyDB.6.0/inclube /usr/inclube
Tar xvf openldap-2.4.39.tgz
Env CPPFLAGS=”-I /usr/local/BerkeleyDB.4.7/include”
LDFLAGS=”-l/usr/”local/BerkeleyDB.4.7/lib ./configure �Cprefix=/usr/local/openldap
�Cenable-ldbm
Make depend
Make
Make install
Cd /usr/local/openldap/etc/openldap
启动openldap
/usr/local/openldap/libexec/slapd
Vi ldap.conf
Vi /etc/ldap.conf
录入信息,这里我们只要创建一个基本的域,其他的都可以登录到图形界面去管理
Vi init.ldif
Dn: dc=abc,dc=com
Objectclass: dcobject
Objectclass:organization
Dc: abc
导入命令
/usr/local/openldap/bin/ldapadd �Cx �CW �CD “cn=admin,dc=abc,dc=com” �Cf init.ldif
Openldapadmin配置
Tar zxvf openldapadmin-1.2.3.tar.gz
Cd openldapadmin-1.2.3
mv phpldapadmin-1.2.3 /var/www/localhost/htdocs/phpldapadmin �Cr
cd /var/www/localhost/htdocs/phpldapadmin
cp config/config.php.example config/config.php
登录phpldapadmin,用上面设置的登录密码登录
点击创建一个新条目,如下图是我们可以创建的内容
Nis配置参考文档
见附件
客户端的配置
Emerge pam_ldap nss_ldap
修改验证,先看下pam.d下面文件
Vi system-logon
Vi system-remote-login
Vi sshd
现在我们可以去phpldapadmin里去添加一个账号,然后去客户端测试
Ldap统一验证做的不是很好,无论配置还是使用都有一段差距,不过linux下好像没更好的统一认证软件了
Samba统一认证
Samba的安装
Emerge �Cav samba
修改samba配置文件
Cp /etc/samba/smb.conf.default /etc/samba/smb.conf
Vi smb.conf
主要就是这些了
另外加了一个public目录,测试用,如下
拷贝schema文件到ldap目录,这个文件目录我没找到,直接解了一个源码包做了,在samba源码包的example/LDAP下,操作如下:
Cp samba.schema /usr/local/openldap/etc/openldap/schema
并修改sladp配置文件,添加samba模块支持
配置samba管理员密码
Smbpasswd �Cw $PASSWORD
登录phpldapadmin界面,看到多出了两个选项
而且samba domain按钮也被激活
添加一个samba用户
Smbpasswd �Ca $USERNAME
条件是该用户必须存在
然后我们就可以用这个账号去samba服务器了,并且在phpldapadmin里可以管理这个账号
本文出自 “冷飞狐的博客” 博客,谢绝转载!