视窗苹果电脑软件设置安全生产力Linux安卓性能配置苹果自定义设备管理iPhone设置 全部

如何在 Fedora 上配置 LDAP

已编辑 4 几周前 通过 ExtremeHow 编辑团队

帽子LDAP目录服务配置软件系统管理命令行终端网络安全

如何在 Fedora 上配置 LDAP

翻译更新 4 几周前

LDAP,全称为轻量目录访问协议,是用于访问和管理目录信息的协议。LDAP 用于跨不同系统存储和管理用户信息,提供认证,以及在不同系统之间共享目录数据。在 Fedora 上配置 LDAP 涉及几个步骤,包括安装所需的软件包、设置服务器配置以及启动 LDAP 服务。在本指南中,我们将详细介绍这些步骤,以便您能在 Fedora 系统上有效地配置 LDAP。

步骤 1:安装 OpenLDAP 包

要在 Fedora 上开始使用 LDAP,首先需要安装 OpenLDAP 包。OpenLDAP 提供了设置 LDAP 服务器所需的工具。要安装 OpenLDAP 包,请打开终端并执行以下命令:

sudo dnf install openldap-servers openldap-clients

此命令安装了 OpenLDAP 服务器和客户端包。服务器包包含设置 LDAP 服务器所需的文件,而客户端包提供了与 LDAP 目录交互的工具。

步骤 2:配置 OpenLDAP

安装包后,我们需要配置 OpenLDAP 服务器。OpenLDAP 的主配置文件为 /etc/openldap/slapd.d/cn=config/。此目录包含多个 LDIF 格式的配置文件。建议使用 ldapmodify 工具进行更改,而不是直接编辑这些文件。

2.1 配置 rootDN 和域

rootDN 是 LDAP 管理用户的专有名称。您还必须为 LDAP 目录定义域。这些信息存储在名为 base.ldif 的文件中。使用文本编辑器创建一个包含以下内容的新文件:

dn: olcDatabase=config,cn=config
changetype: modify
add: olcRootDN
olcRootDN: cn=Manager,dc=example,dc=com

dn: olcDatabase=config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: <hashed_password_here>

example.com 替换为您的域,并将 <hashed_password_here> 替换为经过哈希处理的密码。使用 slappasswd 命令创建哈希密码:

slappasswd

在提示时输入密码,命令将输出一个哈希密码,您可以将其输入到上述 <hashed_password_here> 中。

2.2 修改域和组织名称

创建另一个名为 domain.ldif 的文件,以定义域的基础:

dn: dc=example,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: Example Company
dc: example

dn: cn=Manager,dc=example,dc=com
objectClass: organizationalRole
cn: Manager

再次,将 example.comExample Company 替换为您实际的域和组织名称。

使用 ldapadd 应用这些更改:

sudo ldapadd -Y EXTERNAL -H ldapi:/// -f base.ldif
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f domain.ldif

步骤 3:启动并启用 LDAP 服务

配置 LDAP 后,下一步是启动 LDAP 服务并确保它在启动时启动。您可以使用以下命令实现:

sudo systemctl start slapd
sudo systemctl enable slapd

要检查 LDAP 服务的状态并确保其正在运行,请使用以下命令:

sudo systemctl status slapd

步骤 4:添加 LDAP 条目

当 LDAP 服务器运行后,下一步是向目录添加条目。LDAP 中的条目是与特定对象关联的属性集合。您可以在 LDIF 文件中定义条目,并使用 ldapadd 命令将它们添加到目录中。

4.1 创建组织单位

创建一个名为 ou.ldif 的 LDIF 文件,以定义 LDAP 结构中的组织单位(OU):

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

使用以下命令将组织单位添加到 LDAP 目录:

sudo ldapadd -x -D "cn=Manager,dc=example,dc=com" -W -f ou.ldif

在提示时,输入您之前配置的 LDAP 管理员的密码。

4.2 添加用户条目

要添加用户条目,创建另一个名为 user.ldif 的 LDIF 文件,包含用户详细信息:

dn: uid=john.doe,ou=People,dc=example,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
cn: John Doe
sn: Doe
uid: john.doe
uidNumber: 1000
gidNumber: 1000
homeDirectory: /home/john.doe
loginShell: /bin/bash
mail: john.doe@example.com
userPassword: <hashed_password>

替换用户信息的相关字段,并确保 <hashed_password> 包含用户密码的哈希形式。

使用 ldapadd 命令将用户添加到 LDAP 目录:

sudo ldapadd -x -D "cn=Manager,dc=example,dc=com" -W -f user.ldif

步骤 5:配置 LDAP 客户端

设置 LDAP 服务器后,下一步是配置 LDAP 客户端以与服务器交互。如果您在同一台 Fedora 机器上进行配置,请安装所需的 LDAP 客户端包:

sudo dnf install nss-pam-ldapd

安装完成后,配置 /etc/nsswitch.conf 文件。找到以下行并将其更新为包括 ldap

passwd: files ldap
shadow: files ldap
group: files ldap

另外,使用您的 LDAP 服务器详细信息更新 LDAP 客户端配置文件 /etc/nslcd.conf。以下是一个示例:

uri ldap://localhost/
base dc=example,dc=com
binddn cn=Manager,dc=example,dc=com
bindpw <password>

在此配置中,用管理员帐户的密码替换 bindpw 值。最后,重新启动 nslcd 服务:

sudo systemctl restart nslcd

步骤 6:测试 LDAP 配置

要验证 LDAP 是否设置正确,可以使用 ldapsearch 命令搜索目录结构。例如,要列出目录中的所有条目,使用:

ldapsearch -x -b "dc=example,dc=com" "(objectClass=*)"

此命令查询 LDAP 服务器,并在基础 DN dc=example,dc=com 下检索所有条目。

总结

在 Fedora 上配置 LDAP 为管理网络上的目录信息提供了一种强大而灵活的方法。通过遵循本指南中的步骤,您可以设置最适合您需求的 LDAP 服务器。请记得将占位符值如 example.comManager 替换为您自己的域和管理帐户。这样可以确保您的 LDAP 配置符合您的特定基础设施。

LDAP 可以扩展以实现更复杂的目录服务,也可以集成到现有系统中进行身份验证和用户管理。凭借其简单的配置和强大的功能集,LDAP 仍然是 Fedora 上网络管理不可或缺的一部分。

如果你发现文章内容有误, 您可以


评论