From 447f142a76236ef7e722eb881db82fc850ecc9d7 Mon Sep 17 00:00:00 2001 From: wxy Date: Sun, 4 Oct 2015 00:47:03 +0800 Subject: [PATCH] PUB:RHCSA Series--Part 14--Setting Up LDAP-based Authentication in RHEL 7 @FSSlc --- ... Up LDAP-based Authentication in RHEL 7.md | 56 +++++++++---------- 1 file changed, 28 insertions(+), 28 deletions(-) rename {translated/tech/RHCSA => published/RHCSA Series}/RHCSA Series--Part 14--Setting Up LDAP-based Authentication in RHEL 7.md (76%) diff --git a/translated/tech/RHCSA/RHCSA Series--Part 14--Setting Up LDAP-based Authentication in RHEL 7.md b/published/RHCSA Series/RHCSA Series--Part 14--Setting Up LDAP-based Authentication in RHEL 7.md similarity index 76% rename from translated/tech/RHCSA/RHCSA Series--Part 14--Setting Up LDAP-based Authentication in RHEL 7.md rename to published/RHCSA Series/RHCSA Series--Part 14--Setting Up LDAP-based Authentication in RHEL 7.md index 9aba04d2cb..a071f4dc33 100644 --- a/translated/tech/RHCSA/RHCSA Series--Part 14--Setting Up LDAP-based Authentication in RHEL 7.md +++ b/published/RHCSA Series/RHCSA Series--Part 14--Setting Up LDAP-based Authentication in RHEL 7.md @@ -1,43 +1,43 @@ -RHCSA 系列: 在 RHEL 7 中设置基于 LDAP 的认证 – Part 14 +RHCSA 系列(十四): 在 RHEL 7 中设置基于 LDAP 的认证 ================================================================================ -在这篇文章中,我们将首先罗列一些 LDAP 的基础知识(它是什么,它被用于何处以及为什么会被这样使用),然后向你展示如何使用 RHEL 7 系统来设置一个 LDAP 服务器以及配置一个客户端来使用它达到认证的目的。 +在这篇文章中,我们将首先罗列一些 LDAP 的基础知识(它是什么,它被用于何处以及为什么会被这样使用),然后向你展示如何使用 RHEL 7 系统来设置一个 LDAP 服务器以及配置一个客户端来使用它达到认证的目的。 ![设置 LDAP 服务器及客户端认证](http://www.tecmint.com/wp-content/uploads/2015/06/setup-ldap-server-and-configure-client-authentication.png) -RHCSA 系列:设置 LDAP 服务器及客户端认证 – Part 14 +*RHCSA 系列:设置 LDAP 服务器及客户端认证 – Part 14* 正如你将看到的那样,关于认证,还存在其他可能的应用场景,但在这篇指南中,我们将只关注基于 LDAP 的认证。另外,请记住,由于这个话题的广泛性,在这里我们将只涵盖它的基础知识,但你可以参考位于总结部分中列出的文档,以此来了解更加深入的细节。 -基于相同的原因,你将注意到:为了简洁起见,我已经决定省略了几个位于 man 页中 LDAP 工具的参考,但相应命令的解释是近在咫尺的(例如,输入 man ldapadd)。 +基于相同的原因,你将注意到:为了简洁起见,我已经决定省略了几个位于 man 页中 LDAP 工具的参考,但相应命令的解释是近在咫尺的(例如,输入 man ldapadd)。 那还是让我们开始吧。 **我们的测试环境** -我们的测试环境包含两台 RHEL 7 机子: +我们的测试环境包含两台 RHEL 7机器: Server: 192.168.0.18. FQDN: rhel7.mydomain.com Client: 192.168.0.20. FQDN: ldapclient.mydomain.com -如若你想,你可以使用在 [Part 12: RHEL 7 的自动化安装][1] 中使用 Kickstart 安装的机子来作为客户端。 +如若你想,你可以使用在 [RHCSA 系列(十二): 使用 Kickstart 完成 RHEL 7 的自动化安装][1] 中使用 Kickstart 安装的机子来作为客户端。 #### LDAP 是什么? #### -LDAP 代表轻量级目录访问协议(Lightweight Directory Access Protocol),并包含在一系列协议之中,这些协议允许一个客户端通过网络去获取集中存储的信息(例如登陆 shell 的目录,家目录的绝对路径,或者其他典型的系统用户信息),而这些信息可以从不同的地方访问到或被很多终端用户获取到(另一个例子是含有某个公司所有雇员的家庭地址和电话号码的目录)。 +LDAP 代表轻量级目录访问协议(Lightweight Directory Access Protocol),并包含在一系列协议之中,这些协议允许一个客户端通过网络去获取集中存储的信息(例如所登录的 shell 的路径,家目录的绝对路径,或者其他典型的系统用户信息),而这些信息可以从不同的地方访问到或被很多终端用户获取到(另一个例子是含有某个公司所有雇员的家庭地址和电话号码的目录)。 对于那些被赋予了权限可以使用这些信息的人来说,将这些信息进行集中管理意味着可以更容易地维护和获取。 -下面的图表提供了一个简化了的关于 LDAP 的示意图,且在下面将会进行更多的描述: +下面的图表提供了一个简化了的关于 LDAP 的示意图,在下面将会进行更多的描述: ![LDAP 示意图](http://www.tecmint.com/wp-content/uploads/2015/06/LDAP-Diagram.png) -LDAP 示意图 +*LDAP 示意图* 下面是对上面示意图的一个详细解释。 -- 在一个 LDAP 目录中,一个条目代表一个独立单元或信息,被所谓的 Distinguished Name 唯一识别。 -- 一个属性是一些与某个条目相关的信息(例如地址,有效的联系电话号码和邮箱地址)。 -- 每个属性被分配有一个或多个值,这些值被包含在一个以空格为分隔符的列表中。每个条目中那个唯一的值被称为一个 Relative Distinguished Name。 +- 在一个 LDAP 目录中,一个条目(entry)代表一个独立单元或信息,被所谓的 Distinguished Name(DN,区别名) 唯一识别。 +- 一个属性(attribute)是一些与某个条目相关的信息(例如地址,有效的联系电话号码和邮箱地址)。 +- 每个属性被分配有一个或多个值(value),这些值被包含在一个以空格为分隔符的列表中。每个条目中那个唯一的值被称为一个 Relative Distinguished Name(RDN,相对区别名)。 接下来,就让我们进入到有关服务器和客户端安装的内容。 @@ -67,7 +67,7 @@ LDAP 示意图 # systemctl restart slapd.service # systemctl stop slapd.service -**3. 由于 slapd 服务是由 ldap 用户来运行的(你可以使用 `ps -e -o pid,uname,comm | grep slapd` 来验证),为了使得服务器能够更改由管理工具创建的条目,这个用户应该有目录 `/var/lib/ldap` 的所有权,而这些管理工具仅可以由 root 用户来运行(紧接着有更多这方面的内容)。** +**3. 由于 slapd 服务是由 ldap 用户来运行的(你可以使用 `ps -e -o pid,uname,comm | grep slapd` 来验证),为了使得服务器能够更改由管理工具创建的条目,该用户应该有目录 `/var/lib/ldap` 的所有权,而这些管理工具仅可以由 root 用户来运行(紧接着有更多这方面的内容)。** 在递归地更改这个目录的所有权之前,将 slapd 的示例数据库配置文件复制进这个目录: @@ -78,11 +78,11 @@ LDAP 示意图 # slappasswd -正如下一福图所展示的那样: +正如下一幅图所展示的那样: ![设置 LDAP 管理密码](http://www.tecmint.com/wp-content/uploads/2015/06/Set-LDAP-Admin-Password.png) -设置 LDAP 管理密码 +*设置 LDAP 管理密码* 然后以下面的内容创建一个 LDIF 文件(`ldaprootpasswd.ldif`): @@ -97,9 +97,9 @@ LDAP 示意图 - cn=config 指的是全局配置选项。 - olcDatabase 指的是一个特定的数据库实例的名称,并且通常可以在 `/etc/openldap/slapd.d/cn=config` 目录中发现。 -根据上面提供的理论背景,`ldaprootpasswd.ldif` 文件将添加一个条目到 LDAP 目录中。在那个条目中,每一行代表一个属性键值对(其中 dn,changetype,add 和 olcRootPW 为属性,每个冒号右边的字符串为相应的键值)。 +根据上面提供的理论背景,`ldaprootpasswd.ldif` 文件将添加一个条目到 LDAP 目录中。在那个条目中,每一行代表一个属性键值对(其中 dn,changetype,add 和 olcRootPW 为属性,每个冒号右边的字符串为相应的键值)。 -随着我们的进一步深入,请记住上面的这些,并注意到在这篇文章的余下部分,我们使用相同的 Common Names `(cn=)`,而这些余下的步骤中的每一步都将与其上一步相关。 +随着我们的进一步深入,请记住上面的这些,并注意到在这篇文章的余下部分,我们使用相同的 Common Names(通用名) `(cn=)`,而这些余下的步骤中的每一步都将与其上一步相关。 **5. 现在,通过特别指定相对于 ldap 服务的 URI ,添加相应的 LDAP 条目,其中只有 protocol/host/port 这几个域被允许使用。** @@ -109,7 +109,7 @@ LDAP 示意图 ![LDAP 配置](http://www.tecmint.com/wp-content/uploads/2015/06/LDAP-Configuration.png) -LDAP 配置 +*LDAP 配置* 接着从 `/etc/openldap/schema` 目录导入一个基本的 LDAP 定义: @@ -117,11 +117,11 @@ LDAP 配置 ![LDAP 定义](http://www.tecmint.com/wp-content/uploads/2015/06/LDAP-Definitions.png) -LDAP 定义 +*LDAP 定义* **6. 让 LDAP 在它的数据库中使用你的域名。** -以下面的内容创建另一个 LDIF 文件,我们称之为 `ldapdomain.ldif`, 然后酌情替换这个文件中的域名(在域名分量 dc=) 和密码: +以下面的内容创建另一个 LDIF 文件,我们称之为 `ldapdomain.ldif`, 然后酌情替换这个文件中的域名(在域名部分(Domain Component) dc=) 和密码: dn: olcDatabase={1}monitor,cn=config changetype: modify @@ -158,7 +158,7 @@ LDAP 定义 ![LDAP 域名配置](http://www.tecmint.com/wp-content/uploads/2015/06/LDAP-Domain-Configuration.png) -LDAP 域名配置 +*LDAP 域名配置* **7. 现在,该是添加一些条目到我们的 LDAP 目录的时候了。在下面的文件中,属性和键值由一个冒号`(:)` 所分隔,这个文件我们将命名为 `baseldapdomain.ldif`:** @@ -188,7 +188,7 @@ LDAP 域名配置 ![添加 LDAP 域名,属性和键值](http://www.tecmint.com/wp-content/uploads/2015/06/Add-LDAP-Domain-Configuration.png) -添加 LDAP 域名,属性和键值 +*添加 LDAP 域名,属性和键值* **8. 创建一个名为 ldapuser 的 LDAP 用户(`adduser ldapuser`),然后在`ldapgroup.ldif` 中为一个 LDAP 组创建定义。** @@ -206,7 +206,7 @@ LDAP 域名配置 # ldapadd -x -W -D "cn=Manager,dc=mydomain,dc=com" -f ldapgroup.ldif -**9. 为用户 ldapuser 添加一个带有定义的 LDIF 文件(`ldapuser.ldif`):** +**9. 为用户 ldapuser 添加一个带有定义的 LDIF 文件(`ldapuser.ldif`):** dn: uid=ldapuser,ou=People,dc=mydomain,dc=com objectClass: top @@ -231,7 +231,7 @@ LDAP 域名配置 ![LDAP 用户配置](http://www.tecmint.com/wp-content/uploads/2015/06/LDAP-User-Configuration.png) -LDAP 用户配置 +*LDAP 用户配置* 相似地,你可以删除你刚刚创建的用户条目: @@ -243,7 +243,7 @@ LDAP 用户配置 **11. 最后,但并非最不重要的是使用 LDAP 开启客户端的认证。** -为了在最后一步中对我们有所帮助,我们将使用 authconfig 工具(一个配置系统认证资源的界面)。 +为了在最后一步中对我们有所帮助,我们将使用 authconfig 工具(一个配置系统认证资源的界面)。 使用下面的命令,在通过 LDAP 服务器认证成功后,假如请求的用户的家目录不存在,则将会被创建: @@ -251,7 +251,7 @@ LDAP 用户配置 ![LDAP 客户端认证](http://www.tecmint.com/wp-content/uploads/2015/06/LDAP-Client-Configuration.png) -LDAP 客户端认证 +*LDAP 客户端认证* ### 总结 ### @@ -265,11 +265,11 @@ via: http://www.tecmint.com/setup-ldap-server-and-configure-client-authenticatio 作者:[Gabriel Cánepa][a] 译者:[FSSlc](https://github.com/FSSlc) -校对:[校对者ID](https://github.com/校对者ID) +校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](https://linux.cn/) 荣誉推出 [a]:http://www.tecmint.com/author/gacanepa/ -[1]:http://www.tecmint.com/automatic-rhel-installations-using-kickstart/ +[1]:https://linux.cn/article-6335-1.html [2]:http://www.tecmint.com/manage-services-using-systemd-and-systemctl-in-linux/ [3]:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/ch-Directory_Servers.html