用户工具


openldap

LDAP(轻量级目录访问服务),通过配置这个服务,能轻易的完成账号统一,一个账号处处登录的需求。


安装环境

centOS release 6.5 (Final)


安装openldap

安装软件

yum -y install openldap openldap-clients openldap-servers  openldap-devel

修改配置文件

备份配置文件

cd /etc/openldap/slapd.d/cn\=config/
cp olcDatabase\=\{2\}bdb.ldif  olcDatabase\=\{2\}bdb.ldif.bak # 先备份
cp olcDatabase\=\{1\}monitor.ldif olcDatabase\=\{1\}monitor.ldif.bak # 先备份

设置各个角色的权限(这里我们还设置了一个admin 用户,稍后会创建这个用户)

这里要说明一下,openldap已经内置了一个超级管理员(Manager)为什么还要建一个admin呢。因为我们的web客户端(LAM)在允许超级管理员Manager登录的时候不允许其他账号登录。为了方便管理,我们创建了一个既有管理员权限,又可以和其他用户同时登录的普通管理员账号,admin就是这个普通管理员

#对所有东西只有Manager,admin有写权限。每个人对自己的配置有写权限,对其他人只有读权限
echo 'olcAccess: to * by dn.base="cn=Manager,dc=upyun,dc=com" write by dn.base="cn=admin,ou=People,dc=upyun,dc=com" write  by self write by * read' >> olcDatabase\=\{2\}bdb.ldif

修改配置文件的“根” (openldap最原始的后缀)

 sed -i 's/dc=my-domain/dc=upyun/g' olcDatabase\=\{2\}bdb.ldif

配置Manager(初始的管理员)管理员的密码

用ldap自带的工具生成密码
slappasswd
输入密码:
确认密码:
{SSHA}2+5O2SHXrggyg4ZIdq1SUfDnhTwkH33P #这是生成的密码

将密码写入配置文件
echo 'olcRootPW: {SSHA}2+5O2SHXrggyg4ZIdq1SUfDnhTwkH33P' >> olcDatabase\=\{2\}bdb.ldif

这里密码要改成刚刚生成的密码


安装web管理工具(ldap-account-manager)

ldap-account-manager简称LAM,一个用php写的openldap web工具。

  • 安装apache,php

    yum install httpd php php-ldap


初始化

安装ldap-account-manager

  • 下载,解压
yum install -y wget
wget http://prdownloads.sourceforge.net/lam/ldap-account-manager-4.3.tar.bz2?download
tar xvf ldap-account-manager-4.3.tar.bz2?download
  • 生成配置文件 <code> mv ldap-account-manager-4.3 /var/www/html/lam cd /var/www/html/lam/config cp config.cfgsample lam.conf #生成配置文件 </code>
  • 修改lam配置文件(将所有的 根 改成dc=upyun,dc=com) <code> sed -i 's/dc=org/dc=com/g' lam.conf sed -i 's/dc=my-domain/dc=upyun/g' lam.conf sed -i 's/dc=yourdomain/dc=upyun/g' lam.conf </code>
  • 授权和优化 <code> 1、 给apache访问权限 chown apache:apache -R /var/www/html/lam

2、 为了便于访问,在apache的根目录下加一个跳转(记得在命令中替换你的ip) echo '<meta http-equiv=“refresh” content=“0;url=http://your-ip/lam/

>' > /var/www/html/index.html

3、 打开浏览器输入:http://your-ip 进入管理界面 </code>

注意selinux,iptables的影响(保证389,80端口畅通就ok了)


创建用户和组

创建基本组(第一次登录时候提示你新建一些基本的记录)

新建一个unix组

保存组

新建admin用户

设置用户属性,设置密码并保存


这里user name是关键信息(登录名)



配置LAM界面(重新登录)

保存之后重新登录

这个时候可以用admin登录啦