openldap安装全过程记录

 

#准备工作    2009-11-13 下午15:49:36



----------------------------------------------------------

#安装zlib

# tar xvfz zlib-1.2.3.tar.gz

# cd zlib-1.2.3

# ./configure --shared

# make

# make install

----------------------------------------------------------

#升级安装Openssl  不要卸载系统自带的Openssl,否则很多服务都起不来.

# tar xzvf openssl-0.9.8k.tar.gz 

# cd openssl-0.9.8k

# ./config shared  #注意这里是用./config 会安装到/usr/local/ssl

# make

# make install

#配置库文件搜索路径

# echo "/usr/local/ssl/lib" >> /etc/ld.so.conf

# ldconfig -v

-------------------------------------------------------------------------------------------

#升级安装Openssh

# 首先卸载系统自带的Openssh

# rpm -e --nodeps openssh-3.9p1-8.RHEL4.24

# 升级openssh 

# tar xzvf openssh-5.2p1.tar.gz

# rm -rf /etc/ssh/*

# cd openssh-5.2p1

# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-ssl-dir=/usr/local/ssl --with-zlib   

# make

# make install

-------------------------------------------------------------------------------------------

#安装cyrus-sasl

# tar xzvf cyrus-sasl-2.1.23.tar.gz 

# cd cyrus-sasl-2.1.23

# ./configure --prefix=/usr/local/sasl2 --enable-login --with-openssl=/usr/local/ssl

# make

# make install

#把原有的sasl库文件改名或删除,并将相关符号链接指向新安装SASL的库文件

# cd /usr/lib

# mv libsasl2.so.2.0.19 libsasl2.so.2.0.19.OFF

# mv libsasl2.so.2 libsasl2.so.2.OFF

# rm -rf /usr/lib/sasl2/*

# ln -s /usr/local/sasl2/lib/sasl2/*  /usr/lib/sasl2/

# ln -s /usr/local/sasl2/lib/libsasl2.so.2.0.23  /usr/lib/libsasl2.so.2

# ln -s /usr/local/sasl2/lib/libsasl2.so  /usr/lib/libsasl2.so

#配置库文件搜索路径

# echo "/usr/local/sasl2/lib" >> /etc/ld.so.conf

# echo "/usr/local/sasl2/lib/sasl2" >> /etc/ld.so.conf

# ldconfig -v

#创建运行时需要的目录并调试启动

# mkdir -pv /var/state/saslauthd      

#启动并测试验正

# /usr/local/sasl2/sbin/saslauthd -a  shadow

# /usr/local/sasl2/sbin/testsaslauthd -u root -p root的密码

0: OK "Success."

-----------------------------------------------------------------------

#安装BerkeleyDB 不建议安装Berkeley DB 4.7.25 经测试,会出现莫名其妙的错误

# tar xzvf db-4.6.21.tar.gz

# cd db-4.6.21/build_unix

# ../dist/configure --prefix=/data/BerkeleyDB --sysconfdir=/etc

# make

# make install

#配置库文件搜索路径

# echo "/data/BerkeleyDB/lib" >> /etc/ld.so.conf

# ldconfig -v

-----------------------------------------------------------------------

#安装openldap

# tar xzvf openldap-stable-20090411.tgz

# cd openldap-2.4.16

# env CPPFLAGS="-I/data/BerkeleyDB/include -I/usr/local/sasl2/include" LDFLAGS="-L/data/BerkeleyDB/lib -L/usr/local/sasl2/lib -L/usr/local/sasl2/lib/sasl2" ./configure --prefix=/usr/local/openldap --sysconfdir=/etc --enable-passwd --enable-wrappers  --enable-spasswd --enable-crypt --enable-modules --enable-ldap --enable-accesslog 

# make depend

# make

# make test #这一步时间会很长

# make install

# cp /usr/local/openldap/var/openldap-data/DB_CONFIG.example  /usr/local/openldap/var/openldap-data/DB_CONFIG

#配置库文件搜索路径

# echo "/usr/local/openldap/lib" >> /etc/ld.so.conf

# ldconfig -v

# chmod 700 /usr/local/openldap/var/openldap-data

# mkdir -p /usr/local/openldap/var/accesslog

==============安装apache软件=============================================================

------------------------------------------------------------------------------------------

# tar zxvf httpd-2.2.11.tar.gz 

# cd httpd-2.2.11

# ./configure --prefix=/data/apache --enable-mods-shared=all --enable-so

# make

# make install

# cp /data/apache/bin/apachectl /etc/init.d/httpd

# chmod +x /etc/init.d/httpd

# vi /etc/rc.d/rc.local

#rc.local上加入一行/data/apache/bin/apachectl –k start  系统启动时自动启动Apache服务

------------------------------------------------------------------------------------------

# tar xzvf gettext-0.17.tar.gz 

# cd gettext-0.17

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

# make

# make install

#配置库文件搜索路径

# echo "/usr/local/gettex/lib" >> /etc/ld.so.conf

# ldconfig -v

------------------------------------------------------------------------------------------

#安装PHP

# tar xzvf php-5.2.9.tar.gz 

# cd php-5.2.9

# ./configure --prefix=/data/php5 --with-config-file-path=/etc --with-apxs2=/data/apache/bin/apxs  --with-zlib --enable-xml --enable-mbstring --enable-sockets --with-openssl=/usr/local/ssl --with-ldap=/usr/local/openldap --with-gettext=/usr/local/gettex

# make

# make install

# cp php.ini-dist /etc/php.ini

# vi /data/apache/conf/httpd.conf

#查找AddType application/x-compress .Z

     AddType application/x-gzip .gz .tgz

在其下加入

---------------------------------------------------

AddType application/x-tar .tgz

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

AddType image/x-icon .ico

      ---------------------------------------------------       

      DirectoryIndex 行,添加index.php

      修改为DirectoryIndex index.php index.html index.html.var

------------------------------------------------------------------------------------------

#安装PhpLDAPAdmin

# tar xzvf phpldapadmin-1.1.0.7.tar.gz -C /data/apache/htdocs/

# cd  /data/apache/htdocs/phpldapadmin-1.1.0.7/config 

# cp config.php.example config.php

# vi /data/apache/conf/httpd.conf

# 加入以下内容:

<VirtualHost *:8080>

    ServerAdmin sunbin1984@gmail.com

    DocumentRoot "/data/apache/htdocs/phpldapadmin-1.1.0.7"

</VirtualHost>

-------------------------------------------------------------------------------------------------------------------------------------------------

#从和主的ldap安装完全一样,只是配置文件略有不同 配置文件位于/etc/openldap/sldap.conf

#ldap配置文件见请分别参考sldap-master.confsldap-slave.conf

# 启动ldap

# /usr/local/openldap/libexec/slapd

# cd /usr/local/openldap/bin/

# 将如下内容保存为.ldif文件

# vi replicator.ldif

dn: cn=replicator,dc=mydomain,dc=com

objectClass: simpleSecurityObject

objectClass: organizationalRole

cn: replicator

description: LDAP replicator

userPassword: woaiwojia

#这里的replicator是用来同步主从之间数据的用户

#导入replicator用户到数据库

# /usr/local/openldap/bin/ldapadd -x -D 'cn=admin,dc=sun,dc=com' -W -f replicator.ldif

ldap客户端配置(有三种方法,这里采取最简单的一种)

# authconfig

#选择Use LDAP, Use MD5 Password, Use Shadow Password, Use LDAP Authenticatio, Local authorization is sufficien

#然后next,填入LDAP服务器的IPBase DN

#修改/etc/pam.d/system-auth 插入如下代码

session     required      pam_mkhomedir.so skel=/etc/skel umask=0077 

# 添加用户:直接打开IE输入:http://ip:8080 输入slapd.conf中预先定义的用户名和密码登陆

########################################---END---##################################################################



###################################################################################################################

#ldap查询命令

#/usr/local/openldap/bin/ldapsearch -x -b 'dc=sun,dc=com'

ldap的配置文件比较特别,和别的一般的包的名字,位置都不太一样。

我是这样理解,ldap3个配置文件,他们各自有不同的用途。

/etc/openldap/slapd.conf 这是ldap的主要的配置文件

ldap还有另外两个配置文件,名字都是 ldap.conf ,比较容易搞错。

/etc/ldap.conf :是用来作为 LDAP's Name Service Switch (NSS) interfaces,

/etc/openldap/ldap.conf specifies defaults for various LDAP client programs

#限制用户登录

# vi /etc/ldap.conf

过滤一个用户

pam_filter gidNumber=1000

过滤多个用户

pam_filter |(gidNumber=10)(gidNumber=501)(gidNumber=500)

:这里过滤的组是允许登录的组

-----------------------------------------------------

ldap客户机,需要将 “ldap” 添加到 /etc/nsswitch.conf 

----------------------

passwd:     files ldap

shadow:     files ldap

group:      files ldap

---------------------

本人测试结果:

file 在前 ldap在后就是 ldap失败的时候可以通过本地系统的用户登陆,相反file在后,ldap在前,就是ldap失败的话本地也无法登陆.
2010.1.13
安装成功版本  BerkeleyDB.4.6.21 与openldap .2.4.17  


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wang01ning/archive/2009/11/13/4809267.aspx

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值