参考文献:

https://help.ubuntu.com/12.04/serverguide/openldap-server.html(最主要的)

http://www.linuxidc.com/Linux/2011-08/40020.htm

http://blog.chinaunix.net/uid-24276740-id-3360306.html

前言

在网上搜索ldap的安装配置,能找到很多资料,但是仔细一看会返现千篇一律的都是一样的,但是这些步骤却跟我们当前安装的ldap不一致,这是因为版本更新的缘故,在ubuntu12.04以后,默认安装的ldap发生了很大变更。这个我也是在看了参考文献2和3以后才发现。所以建议大家还是参考官方的配置文档比较好。

配置

按照官方的配置文档,第一步是修改/etc/hosts当中的内容,这里不需要修改主机名,但是需要添加域名,具体内容如下所示,我们添加了cgnmon.envisioncn.com 这一段内容。

127.0.0.1       localhost
127.0.1.1 cgnmon.envisioncn.com cgnmon #do not forget cgnmon # The following lines are desirable for IPv6 capable hosts
:: ip6-localhost ip6-loopback
fe00:: ip6-localnet
ff00:: ip6-mcastprefix
ff02:: ip6-allnodes
ff02:: ip6-allrouters

修改完毕以后执行如下命令安装ldap,需要注意的是不要在SecureCRT中安装,不然看不到安装的图形界面,安装过程中设置密码为12345678。

sudo apt-get install slapd ldap-utils

如果已经安装了,可以通过以下命令重新配置

sudo dpkg-reconfigure slapd

在安装完毕以后,可以通过以下命令来验证是否已经正确安装

sudo ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config dn
ldapsearch -x -LLL -H ldap:/// -b dc=envisioncn,dc=com dn

在安装好ldap以后,就需要来创建用户和组了,在/etc/ldap目录下创建一个add_content.ldif文件,起文件内容如下

//创建People,用户存放user
dn: ou=People,dc=envisioncn,dc=com
objectClass: organizationalUnit
ou: People
//创建Groups,用户存放组
dn: ou=Groups,dc=envisioncn,dc=com
objectClass: organizationalUnit
ou: Groups //创建一个miners组
dn: cn=miners,ou=Groups,dc=envisioncn,dc=com
objectClass: posixGroup
cn: miners
gidNumber: //创建一个用户xuwei
dn: uid=xuwei,ou=People,dc=example,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: xuwei
sn: Xu
givenName: Wei
cn: Wei Xu
displayName: Wei Xu
uidNumber:
gidNumber:
userPassword: Envisi0n
gecos: Wei Xu
loginShell: /bin/bash
homeDirectory: /home/xuwei

然后通过以下命令根据上述信息来添加用户和组

ldapadd -x -D cn=admin,dc=envisioncn,dc=com -W -f add_content.ldif

我执行完上述命令以后提示一下内容,表示添加uid=xuwei失败,但是People,Groups和miners是添加成功的。

Enter LDAP Password: ********
adding new entry "ou=People,dc=envisoncn,dc=com"
adding new entry "ou=Groups,dc=envisoncn,dc=com"
adding new entry "cn=miners,ou=Groups,dc=envisoncn,dc=com"
adding new entry "uid=xuwei,ou=People,dc=envisoncn,dc=com"
ldap_add: Server is unwilling to perform ()
additional info: no global superior knowledge

添加用户失败也没有关系,我们用ldapadmin这个图形界面工具来进行操作。使用ldapadmin连接管理ldap可以参考:http://www.ldapadmin.org/docs/introduction.html

具体的连接方式可以参考下图,这里选择的version是3,因为ldap默认安装的就是3,细心的人还会记得在安装ldap过程中还会提示我们是否安装ldap2。

使用这个工具,在People下New一个User即可,然后在SetPassword。

到此为止LDAP部分完成。

ubuntu安装LDAP的更多相关文章

  1. ubuntu安装php常见错误集锦

    一.configure 报错 1.错误类型: Configure: error: Please reinstall the libcurl distribution-easy.h should be ...

  2. ubuntu安装greenplum依赖包

    ubuntu安装greenplum的过程中有两个比较难找的包,特地写出来给大家分享一下: 错误提示1:configure: error: header file <ldap.h> is r ...

  3. Mac OS、Ubuntu 安装及使用 Consul

    Consul 概念(摘录): Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,比如 Airbnb 的 SmartStac ...

  4. ubuntu安装mysql

    好记性不如烂笔头,记录一下,ubuntu安装mysql的指令. 安装MySQL: sudo apt-get install mysql-server sudo apt-get install mysq ...

  5. ubuntu安装vim时提示 没有可用的软件包 vim,但是它被其它的软件包引用了 解决办法

    ubuntu安装vim时提示 没有可用的软件包 vim-gtk3,但是它被其它的软件包引用了 解决办法 本人在ubuntu系统安装vim  输入 sudo apt-get install vim 提示 ...

  6. docker 1.8+之后ubuntu安装指定版本docker-engine

    这边记录ubuntu安装过程,首先是官网文档 If you haven’t already done so, log into your Ubuntu instance. Open a termina ...

  7. debian/ubuntu安装桌面环境

    apt-get install xorg apt-get install gnome 然后startx ubuntu 安装Gnome桌面 1.安装全部桌面环境,其实Ubuntu系列桌面实际上有几种桌面 ...

  8. 一个ubuntu phper的自我修养(ubuntu安装)

    ubuntu安装篇 一.ubuntu下载 到ubuntu官网下载适合自己电脑配置的系统版本,此处不做展开. 二.制作USB启动盘 在windows下制作USB启动盘,工具是universal usb ...

  9. ubuntu 安装JAVA jdk的两种方法:

    ubuntu 安装jdk 的两种方式: 1:通过ppa(源) 方式安装. 2:通过官网下载安装包安装. 这里推荐第1种,因为可以通过 apt-get upgrade 方式方便获得jdk的升级 使用pp ...

随机推荐

  1. Swagger文档化restful接口

    1.注解 @Api:用在类上,说明该类的作用. @ApiOperation:注解来给API增加方法说明. @ApiImplicitParams : 用在方法上包含一组参数说明. @ApiImplici ...

  2. 使用 jquery-autocomplete插件 完成文本框输入自动填充联想效果 解决兼容IE输入中文问题

    项目中有时会用到ajax自动补全查询,就像Google的搜索框中那样,输入汉字或者字母的首个字母,则包含这个汉字或者字母的相关条目会显示出来供用户选择,该插件就是实现这样的功能的.autocomple ...

  3. MySQL V5.6.37升级到V5.6.38

    简单!万事先备份 cp /usr/my.cnf /home/xx/ cp -r /var/lib/mysql/dbname /home/xx/ mysqldump -u root -ppasswd - ...

  4. Linux内核源码分析--内核启动之(1)zImage自解压过程(Linux-3.0 ARMv7) 【转】

    转自:http://blog.chinaunix.net/uid-25909619-id-4938388.html 研究内核源码和内核运行原理的时候,很总要的一点是要了解内核的初始情况,也就是要了解内 ...

  5. MySQL binlog导入失败

    一个同事问我,说他用innobackupex恢复数据后用mysqlbinlog导入增量数据时,发现数据没有导入进去并且也没有报错. mysqlbinlog /u01/mysql_py/database ...

  6. Coursera台大机器学习技法课程笔记14-Radial Basis Function Network

    将Radial Basis Function与Network相结合.实际上衡量两个点的相似性:距离越近,值越大. 将神经元换为与距离有关的函数,就是RBF Network: 可以用kernel和RBF ...

  7. ThinkPHP中的统计查询方法

    • count() 表示查询表中总的记录数 • max() 表示查询某个字段的最大值 • min() 表示查询某个字段的最小值 • avg() 表示查询某个字段的平均值 • sum() 表示求出某个字 ...

  8. 【TensorFlow】获取object detection API训练模型的输出坐标

    如下图,谷歌开源的object detection API提供了五种网络结构的fine-tuning训练权重,方便我们针对目标检测的需求进行模型训练,本文详细介绍下导出训练模型后,如何获得目标检测框的 ...

  9. Servlet发送Http请求

    今日遇到一个需求,android注册,短信验证码功能. android请求我服务端,我请求tosms.cn发送验证码短信给android,于是需要在Servlet中发送Http请求 package o ...

  10. JS开发打气球游戏

    JS开发打气球游戏 观视频<月薪4万的程序员有多强?半小时原生JS开发打气球游戏,征服现场数万人!> 清晨,日常打开B站,被首页此视频的标题所吸引,虽一看就是标题党,但还是没能抑制住好奇心 ...