Linux服务器部署系列之七—OpenLDAP篇

LDAP(轻量级目录访问服务),通过配置这个服务,我们也可以在linux下面使用目录的形式管理用户,就像windows下面的AD一样,方便我们管理。下面我们就一起来配置openldap服务。本文运行环境:CentOS 5。

软件需求:

db-4.7.25.tar.gz(http://www.oracle.com/technology/global/cn/software/products/berkeley-db/index.html

openldap-stable-20090411.tgz

(http://www.openldap.org/software/download/)

phpldapadmin-0.9.8.5.tar.gz(http://phpldapadmin.sourceforge.net/wiki/index.php/Main_Page)

另外,运行phpldapadmin需要apache和php的支持,有关apache和php的安装,大家可以参考我的另一篇文章:Linux服务器部署系列之一—Apache篇(http://guoxuemin.blog.51cto.com/379574/168534

 

1. 安装openldap

1)安装BerkeleyDB

# tar  zxvf  db-4.7.25.tar.gz

# cd  db-4.7.25/build_unix

# ../dist/configure

# make

# make  install

# vi  /etc/ld.so.conf

加入一下语句:

/usr/local/BerkeleyDB.4.7/lib

# /sbin/ldconfig

2)安装openldap

# tar  zxvf  openldap-stable-20090411.tgz

# cd  openldap-2.4.16

# env  CPPFLAGS=”-I/usr/local/BerkeleyDB.4.7/include”  LDFLAGS=”-L/usr/local/BerkeleyDB.4.7/lib”  ./configure  --prefix=/usr/local/openldap  --enable-ldbm

# make depend

# make

# make install

3)检查安装结果

安装好后,系统会自动生成一些.schema文件,我们可以使用命令:# ll  /usr/local/openldap/etc/openldap/schema/*.schema来查看,如下图:

2. 配置openldap

openldap的配置文件主要为slapd.conf和ldap.conf,手动安装的话,存放在/usr/local/openldap/etc/openldap下面,如下图:

1)配置slapd.conf文件

主要需要修改的地方有两个,一个是将所有./schema添加进来(默认只有include  /usr/local/openldap/etc/openldap/schema/core.schema这条记录),如下图:

另一个地方是下图所示,将suffix项改成自己的目录后缀;设置rootdn,注意这里设置的root管理员是管理openldap的,跟linux系统的root管理员不是一样的。

2)启动openldap

使用以下命令启动openldap:

# /usr/local/openldap/libexec/slapd

3)加密管理员密码

使用命令slappasswd修改管理员密码,默认的管理员密码是明文形式的,使用slappasswd修改后将以加密的方式保存。

4)修改客户端配置文档

如下图,修改红色框处,设置目录起点。

5)录入信息

一般信息录入的方式有三种:手工录入,使用.ldif文件格式录入,使用脚本录入。这里我们选用比较方便的那种——使用.ldif文件格式录入。

首先使用vi  init.ldif命令建立一个init.ldif文件,内容如下:

然后用命令/usr/local/openldap/bin/ldapadd  -x  -W  -D  “cn=root,dc=guoxuemin,dc=cn”  -f  init.ldif将内容导入,如下图:

3. 配置openldapadmin

1)安装openldapadmin

# tar  zxvf  phpldapadmin-0.9.8.5.tar.gz

# mv  phpldapadmin-0.9.8.5  /usr/local/phpldapadmin

openldapadmin的安装很简单,只需要解压,然后移动到相应的目录就可以了。

2)配置http.conf文件

# vi  /usr/local/apache/conf/httpd.conf

增加上图所示的内容,上述内容的作用是建立虚拟目录并设置用户认证。

设置用户admin的密码,如下图:

3)配置phpldapadmin

默认情况下phpldapadmin自带了一个示例配置文件config.php.example,我们可以对改文件稍做修改,就可以使用了。

# cd  /usr/local/phpldapadmin/config

# cp  config.php.example  config.php

# vi  config.php

将274行的/*移动到283行,然后修改276-282行的参数,具体如下:

然后屏蔽以下行的内容,如下图:

另外,还有两项需要修改的,如下图:

保存配置文件,并重启Apache服务,就可以使用浏览器输入:http://IP地址或计算机名/phpldapadmin/进行访问了。如下图:

注意,要使用phpldapadmin,需要有gettext包的支持,在php编译时还需要将ldap也编译进去,否则,会出现下图所示错误信息:

如果出现类似信息,那么只需要安装gettext包,并对php重新编译安装就可以了,

gettext包的安装:

# tar  zxvf  gettext-0.16.1.tar.gz

# cd  gettext-0.16.1

# ./configure  --prefix=/usr/local/gettext

# make

# make  install

对php的编译如下图:

4phpldapadmin应用

点击左面板的login,我们可以通过openldap管理员root登录,如下图:

登录进去后,可以看到openldap的操作界面,左面板上跟windows的AD一样有ou,有用户信息。

如果我们要建立用户信息,可以点击左面板上的“Create new entry here”,然后根据需要在右面板上选择帐户类型,根据向导一步步建立。图形化的操作界面大家都很熟悉了,这里我就不再一一介绍。

当然我们也还可以通过ldif的方式导入,点击左面板上的import可以导入ldif文件。点击左面板上的export可以将现有数据导出为ldif文件。

4. 配置ldap日志

修改ldap配置文件slapd.conf,增加一项loglevel 1,如下图:

# vi  /usr/local/openldap/etc/openldap/slapd.conf

然后修改系统日志配置文件:

# vi  /etc/syslog.conf

增加以下行:

local4.*  /usr/local/openldap/var/log/ldap.log

使用命令service syslog restart重启syslog,系统就会自动生成日志文件ldap.log了。

OK,现在已经设置好了,我们可以通过目录的形式管理帐户信息了,不过,这个服务是免费的,所以功能上相对于windows的AD还是要弱一些。

本文仅讲述了openldap的安装和基本配置,对于openldap的高级应用将会在后续的文章中讲述,谢谢大家的关注。

本文出自 “Tonyguo De博客【知识..” 博客,请务必保留此出处http://tonyguo.blog.51cto.com/379574/182432

时间: 2024-08-07 21:16:59

Linux服务器部署系列之七—OpenLDAP篇的相关文章

Linux服务器部署系列之八—Sendmail篇

Sendmail是目前Linux系统下面用得最广的邮件系统之一,虽然它存在一些不足,不过,目前还是有不少公司在使用它.对它的学习,也能让我们更深的了解邮件系统的运作.下面我们就来看看sendmail邮件服务器的部署. 本文将从以下几个方面讲解Sendmail邮件系统: 1.Sendmail安装: 2.Sendmail基本配置: 3.Openwebmail安装和配置: 4.配置Mailscanner+clamav过滤病毒: 5.配置SpamAssassin+mimedefang过滤垃圾邮件. 本文

Linux服务器部署系列之五—Webmin篇

对于很多习惯使用windows的用户,在刚接触Linux的时候,要使用命令行配置Linux服务器可能会感觉难以适应.今天我们来讲解一下,Linux下的图形配置工具—Webmin,通过这款工具,用户可以很方便的使用web界面对Linux服务器进行配置.下面我们就来具体看看这款工具的部署: 1. 首先,我们需要安装好软件,安装步骤很简单,只需要四部就可以完成. Webmin需要以下软件的支持: Perl-5.8.8-18.el5  (一般系统自带) Openssl-0.9.8k.tar.tar  (

Linux服务器部署系列之四—DHCP篇

DHCP服务器的配置是Linux服务器配置中最简单的服务之一,网上也有很多相关文档,不过大部分都只是讲解了配置.虽然我这篇文档也不一定很完善,不过我还是希望能够尽量说得明白一些,同时也希望大家能够提供更多宝贵的意见.有关DHCP的工作过程,可以参考“DHCP工作过程详解(http://guoxuemin.blog.51cto.com/379574/163475)”.今天我们要谈的主要话题有以下几点: 1. DHCP安装 2. 基本配置 3. 多作用域及中继代理配置 4. DHCP服务器的安全 5

Linux服务器部署系列之三—DNS篇

网上介绍DNS的知识很多,在这里我就不再讲述DNS原理及做名词解释了.本篇我们将以一个实例为例来讲述DNS的配置,实验环境如下: 域名:guoxuemin.cn, 子域:shenzhen.guoxuemin.cn 主域名服务器:dns.guoxuemin.cn ,IP地址:192.168.99.9 辅助域名服务器:dns1.guoxuemin.cn,IP地址:192.168.99.8 子域服务器:dns.shenzhen.guoxuemin.cn,IP地址:192.168.99.202 需要解析

转 整理 Linux服务器部署系列之一—Apache篇2

http://www.jb51.net/article/46148.htm 如何查看Apache的连接数和当前连接数 查看了连接数和当前的连接数 netstat -ant | grep $ip:80 | wc -l netstat -ant | grep $ip:80 | grep EST | wc -l

Linux服务器部署系列之六—远程管理篇

做为网络管理员,我们不可能总是在机房操作服务器,对于windows服务器,我们可以通过远程终端或netmeeting进行操作.但是对于Linux服务器呢?我们也可以使用远程工具进行操作,常用的远程管理服务有telnet,SSH,VNC等,这些远程管理服务虽然都能做远程管理用,但是他们在功能及使用方面还是各有千秋.今天我们就来谈谈使用这些不同的远程管理服务工具管理Linux服务器. 本文中的服务器IP地址为192.168.99.9,服务器使用系统为:CentOS 5. 一.Telnet 1. 软件

如何在linux服务器部署Rstudio server,配置ODBC远程访问win 服务器上的SQL server

如何在linux服务器部署Rstudio server,配置ODBC后通过RODBC包远程访问SQL server 背景介绍:之前写过一篇文章,提到近期要部署Rstudio server(搭建数据分析团队的分析环境),花了一个星期,搭好了.还YY过给这个亲生的儿子起个装逼的名字呢,莫扎特,巴赫什么的,并YY出以下场景{Jenny ,你把模型扔到莫扎特上跑一版最新结果出来...啊哈是不是特有逼格..哦哈哈...}我是部署的Rstudio server,这个是免费的,但是Rstudio sererv

linux服务器部署tomcat和Nginx

项目需要,申请了三台测试机器,好在测试机里面光秃秃的什么都没有,我就可以好好的学习一把玩一把了!接下来以图文的形式讲一下我所碰到的坑以及小小的收获吧! 一.准备工作 首先你得有一台可以玩的linux服务器,知道用户名和密码,然后你需要在windows电脑上安装两个可以连上linux服务器的工具,Xshell 5和Xftp 5,安装教程不多说,补图说明如何连上服务器: xshell连接界面如下,输入好主机ip后点击确定,xshell会弹出窗口输入用户名和密码即可连接成功! xftp连接界面如下,填

linux服务器部署SpringBoot项目并查看项目运行日志

在Linux服务器上部署SpringBoot项目: 1.首先将SpringBoot项目打包成JAR包,通过xFTP或者其他工具将JAR包上传到Linux上,然后执行如下命令启动项目: java -jar xxx.jar & 该命令启动jar,一旦Xshell窗口关闭,JAR就停止运行了. 如果想让项目在后台一直运行,通过如下命令启动JAR: nohup java -jar xxx.jar & >> consoleMsg.log 2>&1 & 注意:cons