在今天快节奏的数字世界中,跟踪用户帐户和访问控制并不是一件容易的事情。但不要担心!OpenLDAP是解决您困扰的方案,是轻量级目录访问协议(LDAP)的广泛开源实现。
本教程将带您了解在Ubuntu机器上设置OpenLDAP服务器的方方面面。告别散乱的用户数据,迎接集中管理、认证和授权。
继续阅读,优化您的用户管理,简化您的IT工作流程!
先决条件
本教程包含了在设置OpenLDAP服务器时的实际演示。如果您想跟着做,请确保您具备以下条件:
- 两台机器(一台用于服务器,一台用于客户端),运行Ubuntu 20.04或更高版本。
- A non-root user with
sudo
privileges on both machines.
在Ubuntu上安装OpenLDAP服务器 从确保系统准备就绪开始,您现在将深入了解您的设置核心,安装OpenLDAP服务器。在组织网络中管理用户帐户和访问控制时,LDAP在服务器管理中具有重要意义。
从确保您的系统准备就绪,现在您将深入到您的设置的核心,安装OpenLDAP服务器。在服务器管理中,LDAP具有重要意义,特别是在管理组织网络内的用户帐户和访问控制时。
要在您的系统上安装OpenLDAP服务器,请按照以下步骤进行:
? 在本指南中,您必须使用您的域名替换ata.com。
1. 打开您的终端并执行以下命令以设置您机器的主机名(例如,ldap.ata.com
)。此命令不会在终端中输出任何内容,但允许网络上的其他设备识别您的机器。
2. 接下来,运行以下apt update
命令来更新您系统上的包索引。

3. 更新后,运行以下apt install
命令以安装Apache Web服务器和必要的组件(PHP模块)。这些组件对于OpenLDAP的正常运行是必需的。

4. 现在,执行此命令以安装OpenLDAP服务器和LDAP账户管理器(LAM),这是一个便捷的基于网页的管理工具。

5. 在安装过程中,当提示时为您的LDAP服务器提供一个管理员密码。

6. 安装完成后,执行以下systemctl
命令以确认OpenLDAP服务器(slapd
)的状态
。

7. 最后,运行下面的slapcat
命令以检查LDAP数据库内容。
A list of default schemas and configurations below indicates that OpenLDAP has been installed correctly.

使用UFW防火墙保护OpenLDAP服务器的安全
您已成功安装OpenLDAP服务器,但在它能够保护您的网络之前,您必须加强其防御。如何做?通过借助UFW,Ubuntu的可信赖默认防火墙。
配置UFW防火墙就像在您的城堡周围设置数字护城河。您将定制防火墙以保护您的服务器,只允许基本流量通过,并让数字掠夺者远离。
为了确保您的OpenLDAP服务器上的安全连接,您必须按照以下方式为OpenLDAP服务器打开某些端口:
执行以下ufw
命令,允许HTTP(80
)、HTTPS(443
)和LDAP(389
)端口的入站流量。

现在,运行下面的命令来检查系统上UFW的当前状态和配置的详细概览。
下面的输出确认您添加的防火墙规则已成功应用。

在Apache中为LAM启用PHP支持
在使用UFW防火墙加固LDAP服务器的安全性之后,您必须确保Apache能够有效地识别和处理PHP文件。这一关键步骤为Apache和LAM之间的无缝集成铺平了道路,使您能够高效地管理LDAP目录。
要在Apache中启用PHP支持,请执行以下操作:
1. 运行以下a2enconf
命令,为Apache的PHP公共网关接口(CGI)启用配置文件。
这些配置文件通常包含与为Apache配置PHP相关的指令,例如设置处理程序或定义PHP执行的选项。通过启用这些配置文件,您可以确保Apache已正确配置以使用CGI接口处理PHP脚本。

2. 启用后,执行以下命令以重新加载
Apache服务(apache2
)以应用更改。
此命令不会输出任何内容,但确保对Apache配置所做的任何修改生效。此过程包括在不重新启动整个Apache服务的情况下启用PHP CGI模块。
3. 现在,调用此命令以检查apache2
服务的状态
,以确保一切运行顺畅。
输出将显示Apache Web服务器的当前状态为活动(正在运行),没有任何错误,如下所示。

设置LAM Web界面
在为LAM启用Apache中的PHP支持之后,您现在专注于一个可以控制OpenLDAP服务器的集中式中心——LAM Web界面。此Web界面为像您这样的管理员提供了一个直观的平台,以监督目录服务。
要设置LAM Web界面,请按照以下步骤操作:
1. 运行以下ifconfig
命令以显示您的网络信息。
查找并记下您的服务器IP地址(例如,192.168.1.7),通常由inet.表示。

2. 打开你最喜欢的网页浏览器,并在地址栏中输入你的服务器IP地址,后跟/lam(例如,http://192.168.1.7/lam)。这样做会将你的浏览器重定向到LAM的网页界面,如下所示。

3. 在登录页面上点击LAM配置(右上角)以访问LDAP账户管理器页面(第四步)。

4. 现在,点击编辑服务器配置文件来修改你的LAM设置。

5. 在第二个登录页面上输入默认的lam密码,并点击确定进行身份验证。

6. 登录后,在常规设置下配置以下服务器和语言设置:
- 树后缀 – 输入你的目录的基本区分名称(DN),例如dc=ata,dc=com,替换为你的实际域组件。
- 默认语言 – 选择你偏好的语言作为LAM网页界面的语言。
- 时区 – 选择与你的服务器位置相符的时区,这对于精确管理账户到期时间至关重要。

7. 向下滚动并设置以下安全性和配置文件密码的选项:
- 有效用户列表 – 插入你的LDAP管理用户的DN,例如,cn=admin,dc=ata,dc=com。
- 新密码和重新输入密码 – 为LAM管理账户创建并确认一个强密码,以替换初始的默认密码。
- 保持其他设置为默认值,然后点击保存以应用您的配置。保存后,您的浏览器将被重定向回登录页面。

在LAM中创建组和用户
准备好LAM仪表板后,您将专注于为有组织和安全的目录结构奠定基础——组和用户。创建组和用户就像将您的团队组织成部门并为每个人提供他们的ID徽章。
要在LAM中创建组和用户,请执行以下操作:
1. 按照“设置LAM Web界面”部分的步骤三到五导航到LDAP Account Manager。但这一次,输入您为OpenLDAP服务器新配置的密码。
2. 在LAM Account Manager中,导航到账户类型选项卡以查看所有访问类型选项。

3. 接下来,向下滚动并设置LDAP后缀,同时替换<base_DN>(即dc=ata,dc=com),如下所示:
- 用户 – ou=部门,<base_DN>
- 组 – ou=组,<base_DN>
- 保持其他设置为默认值,然后点击保存。
保存后,您的浏览器将被重定向到管理员登录页面(步骤四)。

4. 现在,输入您在安装过程中设置的管理员密码,然后点击登录以访问您的OpenLDAP服务器。

5. 当提示时,点击创建以建立两个缺失的后缀。

6. 创建后,点击树形视图(右上角)以查看新的LDAP后缀(部门和组)以层次结构显示,如下所示。

7. 接下来,点击工具(右上角)并选择OU编辑器来配置一个新的部门,如下:
- 父DN – 选择部门 > ata > com作为父DN。这个选项指定了新部门将在您的LDAP目录中创建的位置。
- 名称 – 输入IT(任意)作为部门(OU)名称。
配置完成后,点击确定以添加一个名为IT的新部门。

8. 现在,导航到组选项卡并点击新建组来创建一个新组。
创建组简化了管理,促进了协作,执行了政策,并促进了组织的可扩展性。

9. 提供一个描述性的组名(例如,我的IP组),然后点击保存以确认新组。

10. 一旦组创建完成,导航到用户选项卡并点击新建用户来创建一个新用户。
建立一个根据用户角色、部门或其他标准对用户进行分组的强大框架至关重要。这个框架有助于管理资源访问并促进组织内的高效协作。

11. 随后,按以下方式设置用户的个人信息:
- 从后缀下拉菜单中选择IT > 部门 > ata > com,将用户置于IT部门。
- 在左侧窗格的个人选项卡下,在姓氏字段中输入myituser(任意)。

12. 使用以下方式配置新用户的凭据:
- 导航到左侧窗格的Unix选项卡,并确保将新创建的组名(即My IP Group)设置为主组。
- 点击设置密码,这将打开一个对话框,您将在其中为新用户设置密码(步骤13)。

13. 为新用户提供一个安全的密码,并点击确定确认。

14. 保持其他设置不变,点击保存以完成新用户账户的创建。

15. 重新访问树视图,查看包含新部门(IT)、组(My IP Group)和用户账户(myituser)的更新结构。

安装和配置OpenLDAP客户端
现在你已经有了一个很棒的服务器设置,你需要通过安装和配置OpenLDAP客户端来与之交互。设置这个客户端对于实现网络中的集中式认证和资源访问至关重要。
将你的Ubuntu系统与LDAP目录服务器集成,建立了一个统一的认证机制,增强了安全性并简化了用户管理。
要安装和配置OpenLDAP客户端,请遵循以下步骤:
1. 执行以下sh
命令,将OpenLDAP服务器的主机名和IP地址添加到你的客户端机器的/etc/hosts
文件中,允许基于主机名的通信。
请记住将192.168.1.7
和ldap.ata.com
替换为你的服务器IP地址和主机名。

2. 添加完成后,运行下面的ping
命令,检查你的系统和你的OpenLDAP服务器之间的连接性(ldap.ata.com
)。
下面的输出确认客户端机器可以成功地使用指定的IP地址和主机名与OpenLDAP服务器通信。

3. 接下来,运行下面的命令来更新
你的包列表,并安装
以下必要的OpenLDAP客户端包:
libnss-ldap
– 使你的系统能够使用LDAP作为常用配置数据库。libpam-ldap
– 允许系统通过LDAP目录进行身份验证。ldap-utils
– 提供用于管理LDAP目录条目的命令行工具。nscd
– 缓存NSS查找,通过减少对LDAP服务器的查询来提高性能。
在安装过程中,您将收到一系列提示,以配置OpenLDAP客户端(步骤四)。

4. 现在,在LDAP服务器统一资源标识符字段中输入ldap://192.168.1.7,这将指导客户端连接到您的OpenLDAP服务器。

5. 输入搜索基础的DN(即dc=ata,dc=com)用于LDAP操作。

6. 选择3作为要使用的LDAP版本,以增强安全性和功能

7. 接下来,选择是以授予root用户数据库管理员权限。

8. 之后,选择否以禁用LDAP数据库登录进行root账户管理。

9. 输入root的LDAP账户(即cn=admin,dc=ata,dc=com)。此配置指定了用于管理LDAP的管理员账户。

10. 提供一个强LDAP根账户密码(管理员密码)。

11. 在客户端配置完成后,在您喜欢的编辑器(例如nano
或vim
)中打开/etc/nsswitch.conf文件,以配置系统的名称服务开关。
此文件决定了系统查找用户账户、组、主机和服务等信息的优先顺序。
12. 在/etc/nsswitch.conf文件中更改以下行的值,包括以下内容:
compat
– 指本地文件,如/etc/passwd。
ldap
– 指定使用LDAP。
此配置允许使用LDAP用户认证和其他系统功能
passwd: compat systemd ldap
group: compat systemd ldap
shadow: compat

13. 现在,打开/etc/pam.d/common-password文件,找到并删除use_authtok选项,如下所示,保存更改并关闭文件。
此操作允许您调整PAM密码设置以使用用户提供的密码。

14. 此外,打开/etc/pam.d/common-session文件,添加以下行并保存并关闭文件。
用户登录时,此配置会自动创建家目录以确保用户家目录以正确的权限创建。

最后,运行以下命令来重启
名称服务缓存守护进程(nscd
)并应用配置更改。
检查您的OpenLDAP设置
在所有设置就位后,您必须确保您的OpenLDAP服务器和客户端配置按预期工作。您将测试以确认您的LDAP目录是可访问的,用户可以成功认证,并且数据正在正确检索和更新。
为了确保您的OpenLDAP服务器和客户端设置的完整性和功能性,执行以下操作:
执行以下ldapsearch
命令来查询您的LDAP目录中的所有用户帐户。
您将看到类似于以下的输出,列出了每个用户的详细信息。这个输出表明OpenLDAP服务器正确响应了您的搜索查询。

最后,尝试登录(su
)到myituser
用户帐户。
成功登录表明与OpenLDAP服务器的认证工作正常。
? 成功登录的消息可能不会总是显示;相反,您可能只是登录并被呈现一个新的命令提示符,如下所示。如果有任何错误,它们将被显示,并且您将保持当前用户的登录状态。

结论
您做到了!您的Ubuntu服务器现在拥有一个完全可操作的OpenLDAP系统,具有安全的防火墙,启用了PHP的Web服务器,以及一个时尚的LDAP Account Manager界面。
组和用户账户已设置,您的OpenLDAP客户端已准备好连接。因此,您可以对服务器的性能感到自信。
现在,花些时间浏览OpenLDAP的官方文档页面,其中包含许多宝贵的技巧。另外,为何不考虑学习如何备份和恢复您的OpenLDAP服务器,以确保用户账户和配置的安全呢?