前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ldap安装

Ldap安装

作者头像
WindCoder
发布2020-01-21 16:28:52
2.1K0
发布2020-01-21 16:28:52
举报
文章被收录于专栏:WindCoderWindCoder

准备

代码语言:javascript
复制
# 下载
wget http://gpl.savoirfairelinux.net/pub/mirrors/openldap/openldap-release/openldap-2.4.46.tgz

# 解压
gunzip -c openldap-2.4.46.tgz | tar xvfB -

# 检测系统环境
./configure

构建软件

代码语言:javascript
复制
# 先构建依赖关系
make depend

# 再编译软件
make

# 检测构建--这一步等待时间略长
make test

安装

代码语言:javascript
复制
// 安装软件
su root -c 'make install'

配置

设置加密的密码

代码语言:javascript
复制
slappasswd

根据提示输入两遍密码,即可获得加密后端密码,如:

代码语言:javascript
复制
{SSHA}LFvNxLuy20L00BudQ8MYgv8ZdxRSXNxd

修改 slapd.conf

代码语言:javascript
复制
// 进入
cd /usr/local/etc/openldap/

sudo vi slapd.conf

根据需求导入schema,此处需要inetorgperson,故添加如下:

代码语言:javascript
复制
include        /usr/local/etc/openldap/schema/cosine.schema
include        /usr/local/etc/openldap/schema/inetorgperson.schema

修改suffix、rootdn、rootpw、directory,这些均可改成自己的:

代码语言:javascript
复制
suffix      "dc=windcoder,dc=com"
# 账号
rootdn     "cn=admin,dc=windcoder,dc=com"
# 密码,即上面生成的
rootpw     {SSHA}LFvNxLuy20L00BudQ8MYgv8ZdxRSXNxd
# 可以看做数据存储位置,自定义即可。
directory   /usr/local/etc/openldap/datas/openldap-data

此处的directory目录,不会自动创建,需手动创建,不然会造成无法启动,暂时不知其他目录下是否会自动创建。

启动

代码语言:javascript
复制
sudo /usr/local/libexec/slapd

查看启动状态:

代码语言:javascript
复制
ps -ef |grep slapd

导入数据

创建文件

代码语言:javascript
复制
sudo vi test1.ldif

添加:

代码语言:javascript
复制
dn: dc=windcoder,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
dc: windcoder
o: windcoder-com


dn: ou=User,dc=windcoder,dc=com
objectclass: top
objectclass: person
objectclass: organizationalPerson
sn:Person
cn:Some-Person

添加entry时,如果父级目录不存在,也通常会返回“ldap_add: No such object (32)”的错误。故这里在第一次导入时(类似初始化),优先创建根目录。

导入

代码语言:javascript
复制
ldapadd -x -D "cn=admin,dc=windcoder,dc=com" -W -f test1.ldif

输入Ldap登录密码(即rootpw被加密之前的原始密码)后出现类似如下提示而不报错即可:

代码语言:javascript
复制
adding new entry "dc=windcoder,dc=com"

adding new entry "ou=User,dc=windcoder,dc=com"

查看

代码语言:javascript
复制
ldapsearch -x -b 'dc=windcoder,dc=com' '(objectClass=*)'

输出:

代码语言:javascript
复制
# extended LDIF
#
# LDAPv3
# base <dc=windcoder,dc=com> with scope subtree
# filter: (objectClass=*)
# requesting: ALL
#

# windcoder.com
dn: dc=windcoder,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
dc: windcoder
o: windcoder-com

# User,  windcoder.com
dn: ou=User,dc=windcoder,dc=com
objectClass: top
objectClass: person
objectClass: organizationalPerson
sn: Person
cn: Some-Person
ou: User

放行端口

ldap默认389,ldaps默认636 。此处以开放389为例。

iptables篇

代码语言:javascript
复制
         /sbin/iptables -I INPUT -p tcp --dport 389 -j ACCEPT   // 写入修改

         /etc/init.d/iptables save   // 保存修改

        service iptables restart    // 重启防火墙,修改生效

firewall篇

代码语言:javascript
复制
sudo firewall-cmd --zone=public --add-port=389/tcp --permanent
sudo firewall-cmd --reload
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-11-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 准备
  • 构建软件
  • 安装
  • 配置
    • 设置加密的密码
      • 修改 slapd.conf
      • 启动
      • 导入数据
        • 创建文件
          • 导入
            • 查看
            • 放行端口
              • iptables篇
                • firewall篇
                相关产品与服务
                数据保险箱
                数据保险箱(Cloud Data Coffer Service,CDCS)为您提供更高安全系数的企业核心数据存储服务。您可以通过自定义过期天数的方法删除数据,避免误删带来的损害,还可以将数据跨地域存储,防止一些不可抗因素导致的数据丢失。数据保险箱支持通过控制台、API 等多样化方式快速简单接入,实现海量数据的存储管理。您可以使用数据保险箱对文件数据进行上传、下载,最终实现数据的安全存储和提取。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档