参考文献:

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. Python网络通信 (一)

    ISO(国际标准化组织)--->网络体系结构标准 OSI模型 OSI 七层模型 应用层 :提供用户服务,具体内容由特定程序规定 表示层 :提供数据的压缩解压和加密等 会话层 :建立程序级的连接, ...

  2. Linux内核中进程上下文、中断上下文、原子上下文、用户上下文的理解【转】

    转自:http://blog.csdn.net/laoliu_lcl/article/details/39972459 进程上下文和中断上下文是操作系统中很重要的两个概念,这两个概念在操作系统课程中不 ...

  3. react-native 报错

    报错信息: java.lang.RuntimeException: Unable to load script from assets 'index.android.bundle'. Make sur ...

  4. 不借助autolt实现下载文件到指定目录

    今天尝试了下不用借助autolt完成下载文件到指定目录, 好处:在于集成回归,远程机可以绕过执行autolt程序权限问题,导致autolt程序无法调用,不能完成脚本的回归 Firefox浏览器已经成功 ...

  5. Linux系统产生随机数/dev/random 和 /dev/urandom

    1.  基本介绍 /dev/random和/dev/urandom是Linux系统中提供的随机伪设备,这两个设备的任务,是提供永不为空的随机字节数据流.很多解密程序与安全应用程序(如SSH Keys, ...

  6. unmappable character for US-ASCII

    编码错误编译时加-encoding UTF-8即可 :javac -encoding UTF- file.java //

  7. LOJ 10127 -「一本通 4.3 练习 1」最大数

    题面 题目描述 给定一个正整数数列 $a_1, a_2, a_3, \dots , a_n$,每一个数都在 0~p-1之间.可以对这列数进行两种操作: 添加操作:向序列后添加一个数,序列长度变成 n+ ...

  8. Java编程的逻辑 (17) - 继承实现的基本原理

    ​本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http: ...

  9. jenkins 2:用ssh agent插件在pipeline里实现scp和远程执行命令

    昨晚测试成功了. 现在ssh agent的认证,已不支持明文用户密码,而只能用加密方式实现. 所以我先在jenknis和nginx服务器之后,实现ssh免密码rsa证书登陆. 私钥放jenkins,公 ...

  10. NET定时任务组件Hangfire

    开源的.NET定时任务组件Hangfire解析 项目慢慢就要开工了,很多园友都在问这个事情,看来大伙对这事很上心啊,事情需要一步步的来,尽量写出一个我们都满意的项目.以前每次在博客前面都会扯淡一下,不 ...