栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

openldap安装

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

openldap安装

文章目录
    • 1 生产服务器硬件配置需求
    • 2 openldap master服务安装
    • 3 ldap参数配置优化。
      • 3.1 配置ldap管理员密码参数
      • 3.2 日志及缓存参数。
      • 3.4 配置syslog记录ldap服务日志配置syslog
      • 3.5 配置LDAP数据库路径
      • 3.6 查看OpenLDAP 数据库
    • 4 为OpenLDAP初始化数据

1 生产服务器硬件配置需求

ldap服务对系统环境的要求不高,一般在生产场景,ldap服务应该最少是两台,这样某一台物理服务器岩机才不会因单点问题影响生产业务故障,下面是在工作中单台的硬件配置参考:

设备名称配置描述
CPU一颗四核至强处理器 Intel(R)Xeon(R)CPU E5606@2.13GHz
MEM8GB(2×4GB)667MHz
RaidSAS Raid 10/Raid0 SAS6I Raid卡(支持1/0/5/6/10)。
DISK 146GBx1 3.5英寸SAS硬盘 15k

操作系统:Centos7/8 64bit。

操 作 系 统其 它
CentOS-7.6当前很稳定且免费的Linux版本。

网卡及IP资源

名 称接 口IP用途
ldap主服务器01eth010.0.0.17外部管理IP,用于WAN数据转发。
eth110.0.0.17备用管理IP,用于LAN内数据转发。
ldap从服务器02eth010.0.0.8管理IP,用于LAN数据转发。
eth110.0.0.18外部管理IP,用于WAN数据转发。

Tips:内外网IP分配可采用最后8位相同的方式,这样使于管理。


2 openldap master服务安装

yum 安装OpenLDAP组件

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

默认OpenLdap服务所使用的端口为389,此端口采用明文传输数据,数据信息得不到保障。所以可以通过配置CA及结合TLS/SASL实现数据加密传输,所使用端口为636。

编译安装

yum install -y 
libtool-ltdl 
libtool-ltdl-devel 
gcc 
openssl 
openssl-devel

重新生成配置文件

slapadd -n 0 -F /etc/openldap/slapd.d -l /etc/openldap/slapd.ldif

Openldap依赖的相关软件:

  • http://www.openldap.org/doc/admin24/install.html
3 ldap参数配置优化。 3.1 配置ldap管理员密码参数
  • /etc/openldap/slapd.d/*: /etc/openldap/slapd.ldif配置信息生成的文件,每修改一次配置信息,这里的东西就要重新生成。
  • /var/lib/ldap/*:OpenLDAP的数据文件。
  • /usr/share/openldap-servers/DB_CONFIG.example:模板数据库配置文件。
  • /usr/share/openldap-servers/slapd.ldif:默认模板配置文件。

默认OpenLdap服务所使用的端口为389,此端口采用明文传输数据,数据信息得不到保障。所以可以通过配置CA及结合TLS/SSL实现数据加密传输,所使用端口为636。

cp /usr/share/openldap-servers/slapd.ldif /etc/openldap/

指定密码,不提示

[root@node06 openldap]# slappasswd -s 123 
{SSHA}OHmKWcXD6YUDEPhCK9W5ut8EK2esIaNF
# 指定要搜索的后缀
olcSuffix: dc=etiantian,dc=org
# rootdn,使用这个dn可以登录服务器
olcRootDN: cn=admin,dc=etiantian,dc=org
olcDbDirectory: /var/lib/ldap
# 指定ldapserver管理员密码==
olcRootPW: {SSHA}OHmKWcXD6YUDEPhCK9W5ut8EK2esIaNF
3.2 日志及缓存参数。
# 设置日志级别,记录日志信息方便调试 stats 256(日志连接/操作/结果) 
olcLogLevel: stats

# 设置ldap可以缓存的记录数
olcDbCacheSize: 1000

# checkpoint 可以吧内存中的数据写会数据文件的操作,此设置表示每达到2048kb或者10分钟执行一次
olcDbCheckpoint: 1024 10
include: file:///etc/openldap/schema/collective.ldif   # OpenLDAP的核心schema必须
include: file:///etc/openldap/schema/corba.ldif # 
include: file:///etc/openldap/schema/cosine.ldif
include: file:///etc/openldap/schema/duaconf.ldif
include: file:///etc/openldap/schema/dyngroup.ldif
include: file:///etc/openldap/schema/inetorgperson.ldif
include: file:///etc/openldap/schema/java.ldif
include: file:///etc/openldap/schema/misc.ldif
include: file:///etc/openldap/schema/nis.ldif
include: file:///etc/openldap/schema/openldap.ldif
include: file:///etc/openldap/schema/pmi.ldif
include: file:///etc/openldap/schema/ppolicy.ldif

###3.3 授权及安全参数配置

access to dn="cn=subschema" by * read
access to 
    by self write 
    by dn subtree="ou=sysusers,dc=intra,dc=qq,dc=com" read
    by anonymous auth

权限管理的说明

  • http://www.openldap.org/doc/admin24/access-control.html

提示:

参数在文件中的先后位置不能随意动。

空行和以“#”开头的注释行将被忽略。如果一行以空格开头,它将被认为是接着前一行的(即使前一行是注释)。


官方配置文件详解:

  • http://www.openldap.org/doc/admin24/guide.html#Configuring%20slapd
  • http://www.openldap.org/software/man.cgi?query=slapd-config&sektion=5&apropos=0&manpath=OpenLDAP+2.4-Release
3.4 配置syslog记录ldap服务日志配置syslog

记录ldap服务日志,默认级别为256;

echo 'local4.*          /var/log/slapd.log' >> /etc/rsyslog.conf

local4.*                /var/log/slapd.log
3.5 配置LDAP数据库路径

注意:

slapd.conf中设定了LDAP数据库格式为hdb,存储路径/var/1ib/ldap


cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_ConFIG

chown ldap.ldap /var/lib/ldap/DB_ConFIG
chmod 700 /var/lib/ldap/DB_ConFIG
3.6 查看OpenLDAP 数据库

此时要查看OpenLDAP数据库,会发现没有内容

ldapsearch -LLL -x -W -H ldap://10.0.0.4 -D "cn=admin,dc=seal,dc=com" -b "dc=seal,dc=com" "(uid=*)"

Enter LDAP Password: 
No such object (32)

Reference

  • http://www.openldap.org/faq/data/cache/1.html
  • http://www.openldap.org/doc/admin24/appendix-common-errors.html
4 为OpenLDAP初始化数据

通过OpenLDAP客户端工具来初始化数据经过长期的使用、教学比对,第三种方法比较适合初学者学习掌握,不过本文以最简单的不好理解的方法讲解。

为ldap master 初始化基础用户数据。

通过事先准备好的文件初始化数据。

cat << EOF | ldapadd -x -H ldaps://10.0.0.4 -D "cn=admin,dc=seal,dc=com" -W 
dn: dc=seal,dc=com
objectClass: organization
objectClass: dcObject
dc: seal
o: seal

dn: ou=People,dc=seal,dc=com
objectClass: organizationalUnit
ou: People

dn: ou=group,dc=seal,dc=com
objectClass: organizationalUnit
ou: group

dn: cn=tech,ou=group,dc=seal,dc=com
objectClass: posixGroup
gidNumber: 10001
cn: tech
EOF

cat << EOF | ldapadd -x -H ldaps://10.0.0.4 -D "cn=admin,dc=seal,dc=com" -W 
dn: cn=test_admin,ou=Group,dc=seal,dc=com
objectClass: groupOfUniqueNames
cn: test_admin
uniqueMember: cn=test_admin,ou=Group,dc=seal,dc=com
EOF

一个条目的完整信息

cat << EOF | ldapadd -x -H ldaps://10.0.0.4 -D "cn=admin,dc=seal,dc=com" -W 
dn: uid=user01,ou=People,dc=seal,dc=com
objectClass: posixAccount
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: person
homeDirectory: /home/user01
loginShell: /bin/bash
uid: user01
cn: user01
uidNumber: 10004
gidNumber: 10001
userPassword: {SSHA}hJpIIVxj1qS9g05qUlgG+o7MO14EXbFQ
sn: user01
givenName: user01

dn: uid=oldgirl,ou=People,dc=seal,dc=com
objectClass: posixAccount
objectClass: inetOrgPerson
objectClass: organizationalPerson
objectClass: person
homeDirectory: /home/oldgirl
loginShell: /bin/bash
uid: oldgirl
cn: oldgirl
userPassword: {SSHA}2pvE4C6xy8dkmW2aD/eEocVajg8BujWW
uidNumber: 10005
gidNumber: 10001
sn: oldgirl
EOF

提示:

  • 以上信息中ldap用户1:user01密码111,用户2:oldgirl 密码123456
  • 这些原始信息是如何获得的?

3.8.3检查初始化的ldap测试数据。

查询导入的结果:

ldapsearch -LLL -w 123 -x -H ldap://10.0.0.4 -D "cn=admin,dc=seal,dc=com" -b "dc=seal,dc=com"

ldapsearch命令参数说明

参数说 明
-W指定密码,交互式,不需要在命令上写密码
-w指定密码,需要命令上指定密码
-Hldapapi
-D所绑定的服务器的DN,如cn=admin,dc=etiantian,dc=org
-f-f: filename.ldif文件
-b-b 指定查询的相对节点
-LLL以LDIF格式打印响应,不带注释
-x简单的认证

备份ldap数据库数据

ldapadd -x -H ldap://etiantian.org -D "cn=admin,dc=etiantian,dc=org" -W -f base.ldif >base.ldif
ldapadd -x -H ldap://etiantian.org -D "cn=admin,dc=etiantian,dc=org" -W -f test.ldif >test.ldif

ldapsearch -x -H ldaps://10.0.0.4 -W -D “cn=admin,dc=seal,dc=com” -b “dc=seal,dc=com” ‘(uid=user1)’

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/335083.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号