具有OpenLDAP的目录服务[7和最终版本?]:Ldap客户管理器

你好朋友!。 我们不希望发布此文章,因为它包含在许多读者要求的PDF格式的摘要中。 是的,我们将编写摘要并添加有趣的内容。 作为该纲要的预览,我们抄录了 简介:

许多负责业务网络中服务的人员在负责其服务基于Microsoft产品的网络时,如果要迁移到Linux,则考虑在其他服务中迁移域控制器。

如果他们不选择第三方产品(例如ClearOS或Zentyal),或者由于其他原因希望独立,那么他们将承担着成为自己的域控制器或Samba 4或其他Active Directory的艰巨任务。

然后问题开始了,其他一些令人失望的事情。 操作错误。 他们找不到解决问题的位置。 重复安装尝试。 服务的部分运营。 还有很多问题。

如果仔细观察,大多数Internet都不使用Microsoft类型的网络。 但是,在我们的业务环境中,我们做了很多事情。

通过本纲要,我们尝试表明,无需Microsoft理念,我们就可以建立业务网络。 基于针对OpenLDAP目录对用户进行身份验证的服务,例如:电子邮件,FTP,SFTP,基于Owncloud的业务云等。

我们希望提供一种基于100%免费软件的不同方法,并且该方法不使用或模仿Microsoft网络的哲学,即以Microsoft Software或OpenLDAP和Samba为主要思想,这是相同的。

所有使用免费软件Openldap + Samba的解决方案都必须了解什么是LDAP服务器,如何安装,如何配置和管理等基本知识。 后来,他们集成了Samba和可能的Kerberos,最后,它们提供了我们“模仿” Microsoft NT 4风格的域控制器或Active Directory的功能。

当我们从存储库软件包中实现和配置它时,确实是一项艰巨的任务。 那些研究和应用了广泛的Samba文档的人都非常了解我们的意思。 Samba 4甚至建议使用我们在Microsoft Active Directory中找到的经典管理控制台(即2003或其他更高级的控制台)来管理Active Directory。

推荐读物.

https://wiki.debian.org/LDAP
OpenLDAP软件2.4管理员指南
Ubuntu 服务器指南 12.04
使用GNU / Linux进行服务器配置。

El Maestro,Joel BarriosDueñas提供的出色手册,尽管面向CentOS和Red Hat,但它为Debian玩家提供了很好的服务。

我们计划安装和配置哪些服务和软件?

  • 独立的NTP,DNS和DHCP,即最后两个未集成到目录中
  • 目录服务或«目录服务»基于OpenLDAP
  • 电子邮件,“城堡”小组工作套件,FTP和SFTP,
  • 商业云«OwnCloud«
  • 基于Samba的独立文件服务器。

在所有情况下,将直接或通过目录对用户的凭据进行身份验证的过程 libnss-ldap y PAM 取决于所讨论软件的特性。

事不宜迟,让我们开始做生意。

Ldap客户经理

在继续之前,我们必须阅读:

那些阅读了先前系列文章的人会注意到,我们已经有一个目录要管理。 我们可以通过软件包中分组的控制台实用程序以多种方式实现这一目标 ldap脚本,网络界面 PhpLDAP管理员, Ldap客户经理等)。

也有可能通过 Apache 目录工作室,我们必须从Internet下载。 它重约142兆字节。

要管理我们的目录,我们强烈建议您使用 Ldap客户经理。 我们首先要说的是,安装后,我们可以访问它 文件 位于文件夹中 / usr / share / doc / ldap-account-manager / docs.

通过 Ldap客户经理,此后 LAM,我们可以管理存储在目录中的用户和组帐户。 LAM在任何支持PHP5的网页服务器上运行,我们可以通过未加密的通道或通过 启动TLS,这是我们在示例中将使用的形式。

初始安装和配置:

:〜#aptitude安装ldap-account-manager

安装后 Apache2apache2-mpm-prefork-,来自PHP5和其他依赖项以及程序包本身 ldap帐户经理,我们要做的第一件事是创建一个从LAM文档文件夹到Web服务器上文档根目录的符号链接。 例:

:〜#ln -s / usr / share / doc / ldap-account-manager / docs / manual // var / www / lam-docs

这样,如果我们指向地址,我们保证可以通过网络浏览器访问LAM手册。 http://mildap.amigos.cu/lam-docs.

接下来,让我们开始配置LAM本身。 在浏览器中,我们指向 http://mildap.amigos.cu/lam.

  • 我们点击链接 “ LAM配置”.
  • 点击链接 “编辑服务器配置文件”.
  • 我们输入密码 'm' 没有引号。

在LAM配置页面中,我们可以根据自己的偏好和需求修改许多参数。 正如我一直建议的那样,从简单过渡到复杂,而不是相反,我们只涉及使用功能强大的LAM工具所必须具备的条件。 如果在成为大师后,我们想要修改或添加功能,那么欢迎您。

  • 激活TLS: -推荐的-。
  • 树后缀: dc =朋友,dc = cu
  • 预设语言: Español (西班牙)
  • 有效用户列表*: cn =管理员,dc =朋友,dc = cu
  • 新密码: 与lam密码不同
  • 重新输入密码: 与lam密码不同

注意: '' * '表示这是必填项。

左下方是按钮 ^保存 y ^取消。 如果我们现在保存更改,它将返回到初始页面,我们可以看到语言已经更改,并且用户名现在为 管理员。 之前是 经理。 但是,让我们回到编辑-now西班牙语- “设置。 LAM»。 返回配置页面后,我们将执行以下操作:

  • 我们选择标签 “帐户类型”.
  • 在本节中 '有效帐户类型'->'用户'->'LDAP后缀', 我们写: ou =人,dc =朋友,dc = cu.
  • 在本节中 “有效帐户类型”->“组”->“ LDAP后缀”, 我们写: ou =群组,dc =朋友,dc = cu.
  • 使用标题为的按钮 '^删除此类型的帐户',我们消除了与 '团队' y “ Samba域”,我们将不使用。
  • 我们选择标签 '模块'.
  • En “用户”,在清单上 “选定的模块”,我们移动模块 'Samba 3(sambaSamAccount)' 到清单 “可用模块”.
  • En “组”,在清单上 “选定的模块”,我们移动模块 'Samba 3(sambaGroupMapping)' 到清单 “可用模块”.

现在,直到我们熟悉LAM配置为止,我们将一直保留它。

我们保存更改并返回到初始页面,必须在该页面中输入用户密码 管理员 (cn =管理员,dc =朋友,dc = cu),在安装过程中声明 拍打。 如果返回错误,请检查 /etc/ldap/ldap.conf 在服务器本身上已正确配置。 您可能使用了错误的TLS证书路径或其他错误。 记住它应该看起来像这样:

BASE dc =朋友,dc = cu URI ldap://mildap.amigos.cu#TLS证书(GnuTLS所需)TLS_CACERT /etc/ssl/certs/cacert.pem

一旦进入LAM,我们必须花一些时间研究它,然后再更改任何配置。 它的界面非常直观,易于使用。 使用它并检查。

观察: 在文件中 http://mildap.amigos.cu/lam-docs/ch02s02.html#confTypicalScenarios,我们可以在最后阅读:

具有大量用户(> 10 000)的单个LDAP目录
LAM经过测试可与10个用户一起使用。 如果您有更多的用户,则基本上有两种选择。

  • 将LDAP树划分为组织单位:这通常是效果最好的选择。 与上述高级方案一样,将您的帐户划分为多个组织单位并设置LAM。
  • 增加内存限制:增加php.ini中的memory_limit参数。 这将允许LAM读取更多条目。 但这会减慢LAM的响应时间。

让我们在目录管理中富有创造力和有秩序。

密码安全策略以及通过LAM的其他方面

  • 我们点击链接 «LAM配置».
  • 点击链接 “编辑常规设置”.
  • 我们输入密码 'm' 没有引号。

在该页面上,我们找到了密码策略,安全首选项,允许的主机等。

注意: LAM配置保存在 /usr/share/ldap-account-manager/config/lam.conf.

我们启用https以安全地连接到LAM:

:〜#a2ensite default-ssl
:〜#a2enmod ssl
:〜#/etc/init.d/apache2重新启动

当我们以前面的方式启用https时,我们将使用Apache默认生成的证书,并将其反映在其虚拟主机的定义中 默认情况下,SSL。 如果我们要使用自己生成的其他证书,请让我们咨询 /usr/share/doc/apache2.2-common/README.Debian.gz。 有问题的证书称为 “蛇油” o蛇油,它们存在于:

/etc/ssl/certs/ssl-cert-snakeoil.pem
/etc/ssl/private/ssl-cert-snakeoil.key

让我们将浏览器指向 https://mildap.amigos.cu,我们接受证书。 然后我们指向 https://mildap.amigos.cu/lam 并且我们已经可以通过https LAM进行工作。

重要事项: 如果在服务器启动过程中, 进出口 需要很长时间才能开始,安装轻型替代品 ssmtp.

:〜#aptitude安装ssmtp
 将安装以下新软件包:ssmtp {b} 0个更新的软件包,1个新安装的软件包,0个要删除的软件包和0个未更新的软件包。 我需要下载52,7 kB的文件。 打开包装后,将使用8192 B,不满足以下软件包的依赖关系:exim4-config:冲突:ssmtp,但将安装2.64-4。 exim4-daemon-light:冲突:mail-transport-agent,它是一个虚拟包。 ssmtp:冲突:作为虚拟包的mail-transport-agent。 以下操作将解决这些依赖性:删除以下软件包:1)exim4 2)exim4-base 3)exim4-config 4)exim4-daemon-light您接受此解决方案吗? [Y / n / q /?]并且

然后我们执行:

:〜#清除能力〜c:〜#清除能力:〜#清除能力自动清理:〜#重新启动

如果您使用的是虚拟服务器,那么这将是一个很好的备份整个主服务器的好时机,以防万一。 🙂

复制。 保存并还原目录数据库。

在出色的指南中-我们建议大家阅读和学习-«Ubuntu服务器指南»Ubuntu Server 12.04«Precise»中,对我们编写的有关OpenLDAP和TLS证书生成的部分代码进行了详细说明,并且还详细介绍了目录复制以及如何执行保存和还原数据库。

但是,这是在发生灾难时还原整个数据库的过程。

很重要:

我们必须始终通过Ldap客户经理获取导出的文件 作为我们数据的备份。 当然,文件cn = amigos.ldif必须与我们自己的安装相对应。 我们也可以通过slapcat命令获得它,我们将在后面看到。

1.-我们仅消除了安装。

:〜#aptitude purge slpad

2.-我们清洁包装系统

:〜#aptitude install -f:〜#aptitude清除〜c:〜#aptitude clean:〜#aptitude autoclean

3.-我们完全删除了目录数据库

:〜#rm -r / var / lib / ldap / *

4.-我们重新安装slapd守护程序及其依赖项

:〜#aptitude安装slapd

5.-我们检查

:〜#ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn =配置dn:〜#ldapsearch -x -LLL -H ldap:/// -b dc =朋友,dc = cu dn

6.-添加相同的索引文件olcDbIndex.ldif

:〜#ldapmodify -Y EXTERNAL -H ldapi:/// -f ./olcDbIndex.ldif

7.-我们检查添加的索引

:〜#ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// \ -b cn = config'(olcDatabase = {1} hdb)'olcDbIndex

8.-我们添加相同的访问控制规则

:〜#ldapmodify -Y EXTERNAL -H ldapi:/// -f ./olcAccess.ldif

9.-我们检查访问控制规则

:〜#ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// \ -b cn = config'(olcAccess = *)'olcAccess olcSuffix

10.-我们添加了TLS证书。 无需重建或修复权限。 它们已存在于文件系统中,但未在数据库中声明。

:〜#ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/ssl/certinfo.ldif

11.-我们根据自己的备份添加内容

:〜#ldapadd -x -D cn =管理员,dc =朋友,dc = cu -W -f dc = friends.ldif

不要重新启动slapd,因为它正在索引数据库,并且它可能已损坏! 在添加备份文件之前,请务必对其进行编辑,以避免输入现有条目。

我们在浏览器中指向 https://mildap.amigos.cu/lam 然后我们检查。

slapcat命令

命令 lap 它主要用于以LDIF格式生成处理内容的数据库的内容。 拍打。 该命令将打开由数据库编号或后缀确定的数据库,并在屏幕上以LDIF格式写入相应的文件。 除非我们指定此选项,否则还将显示配置为下级的数据库 -g.

使用此命令的最重要限制是,当 拍打,至少在写入模式下,以确保数据一致性。

例如,如果我们要将目录数据库的备份副本复制到名为 备份 slapd.ldif,我们执行:

:〜#service slapd stop:〜#slapcat -l backup-slapd.ldif:〜#service slapd start

LAM图像

拉姆-01

拉姆-02

拉姆-03

拉姆-04

拉姆-05

拉姆-06


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   何塞·安东尼奥

    我很喜欢它,也很推荐阅读。
    他一直在寻找类似的文章,但收效甚微。

    我给你十英镑

    1.    费德里科

      感谢您评论和评估我的文章!

  2.   让我们使用linux

    有趣! 再次,杰出的贡献,菲科!
    拥抱! 保罗

    1.    费德里科

      非常感谢您的评论和称赞,朋友巴勃罗! 我希望它对需要它的人有用。

  3.   维达格努

    精彩内容,再次感谢您的分享。

    问候

    1.    费德里科

      感谢您的评论!

  4.   猎人

    本垒打菲科! 正式的pdf文件何时准备就绪?

    1.    费德里科

      问候dhunter! 想象一下,除了包含迄今为止发布的7篇文章之外,我还将介绍如何集成基于CITADEL的基本邮件服务器; FTP,SFTP服务; 基于OwnCloud的业务云; 通过libnss-ldap和PAM等具有系统用户的独立Samba服务器。 得出自己的结论。 🙂我认为是XNUMX月底或XNUMX月初。

      1.    古兹曼网

        您好费德里科,感谢您的贡献,我们将非常期待。 随着更新..

        1.    费德里科

          我将努力在本月底之前完成它。 写一本书即使只有几页也不是一件容易的事。

  5.   nexus6

    我只能说在此博客的撰稿人中,您似乎是所有博客中最有趣,解释最好和最接近的。

    1.    费德里科

      非常感谢您的评论。 在我写的每一篇文章中,我都尽力而为,因为我知道尽管有很多人不发表评论,但总有像您这样的读者。
      问候Nexus6 !!!

  6.   埃德加

    下午好,每当我咨询有关ldap的网络时,我都会为您提供建议,我对此表示祝贺。现在,我对此感到陌生,就像每个想要学习的人
    这是问题
    我的朋友告诉我,当网络断开连接时,已经通过ldap进行身份验证的操作系统会将我的语言更改为英语,您可以告诉我应该在哪里检查要检查的文件,以便用西班牙语重新初始化用户。预先在LDAP中添加了感谢您的帮助

  7.   佩洛普

    费德里科和往常一样出色的职位。 我读到您在评论与PDF相关的内容,其中包含商务网络中使用的大多数远程信息处理服务的配置。 您说到9090月底或去年XNUMX月初就可以了。 我的问题是,当时您是否能够完成并上传? 预先感谢,最后我要测试Openfire,我发现它甚至还具有XNUMX的Web界面。

    1.    费德里科·瓦尔德斯·图亚格

      感谢您的评论,Pedro Pablo。 我没有广泛回答您,而是写了一篇文章,您将在今天或明天阅读。 像您这样感恩的读者应该得到答案。 再次感谢。