为 389 目录服务器安装配置 LDAP 客户端
【摘要】 389 Directory Server 是一款超快的开源企业LDAP Server。
在本教程中,我们将解释如何在 Linux 上安装和配置 LDAP 客户端,它将与您的 389 目录服务器通信。
389 Directory Server 是一款超快的开源企业LDAP Server。
在本教程中,我们将解释如何在 Linux 上安装和配置 LDAP 客户端,它将与您的 389 目录服务器通信。
安装 EPEL
在您的客户端计算机上,确保您已设置 EPEL 存储库,因为我们将从 EPEL 下载 ldap 相关的包。
首先,从 fedora 项目网站下载最新的 EPEL 包:
# wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm
接下来,在您的客户端机器上安装 EPEL rpm。
# rpm -ivh epel-release-7-10.noarch.rpm
验证 /etc/hosts
确保您的主机文件设置正确。
在此示例中,以下是当前的 /etc/hosts 文件设置。在此示例中,我们在部署时安装了 389 目录服务器
# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.101.10 deploy.hgst.com.cn deploy
安装 LDAP 客户端库
对于 LDAP 客户端库,我们需要安装以下软件包:
- openldap – 这包含 LDAP 支持库
- openldap-devel.x86_64 - 这包含 LDAP 开发库和头文件
- nss-pam-ldapd – 这是使用目录服务器的 nsswitch 模块
使用 yum 安装上述软件包,如下所示:
# yum install nss-pam-ldapd.x86_64 openldap.x86_64 openldap-devel.x86_64
除了安装以上三个包外,根据你当前的系统配置,yum 可能还会安装以下依赖包:
- 赛勒斯-sasl
- cyrus-sasl-devel
- nscd
配置 LDAP 客户端身份验证资源
要配置 LDAP 客户端身份验证资源,我们可以使用以下任何一种工具:
- authconfig – 配置身份验证资源的命令行工具
- authconfig-tui – 一个基于 GUI 的工具,用于配置身份验证资源
要启动 GUI 版本,请执行以下命令:
# authconfig-tui
这将调出以下用户界面:
使用箭头键并选择“使用 LDAP 身份验证”复选框,如下所示。要选择复选框,请按空格键。
在下一个屏幕中,相应地设置您的 LDAP 服务器和基本 DN。这些值应该与您安装的 389 目录服务器相对应。请参阅我们的 389 目录服务器安装教程以获取更多详细信息。
为 LDAP 客户端启动名称服务相关服务
首先确保 nslcd 命名服务 LDAP 客户端守护程序已启动并正在运行。如果这没有启动,请相应地启动它。
# systemctl start nslcd
# systemctl status nslcd
? nslcd.service - Naming services LDAP client daemon.
Loaded: loaded (/usr/lib/systemd/system/nslcd.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2017-10-08 15:15:58 UTC; 7min ago
Process: 2624 ExecStart=/usr/sbin/nslcd (code=exited, status=0/SUCCESS)
Main PID: 2625 (nslcd)
CGroup: /system.slice/nslcd.service
+-2625 /usr/sbin/nslcd
Oct 08 15:15:58 192.168.101.10 systemd[1]: Starting Naming services LDAP client daemon....
Oct 08 15:15:58 192.168.101.10 systemd[1]: PID file /var/run/nslcd/nslcd.pid not readable (yet?) after start.
Oct 08 15:15:58 192.168.101.10 nslcd[2625]: version 0.8.13 starting
Oct 08 15:15:58 192.168.101.10 nslcd[2625]: accepting connections
Oct 08 15:15:58 192.168.101.10 systemd[1]: Started Naming services LDAP client daemon..
接下来,使用 systemctl 命令启动 nscd 名称服务缓存守护进程,如下所示。
# systemctl start nscd
# systemctl status nscd
? nscd.service - Name Service Cache Daemon
Loaded: loaded (/usr/lib/systemd/system/nscd.service; disabled; vendor preset: disabled)
Active: active (running) since Sun 2017-10-08 15:27:23 UTC; 3s ago
Process: 2693 ExecStart=/usr/sbin/nscd $NSCD_OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 2694 (nscd)
CGroup: /system.slice/nscd.service
+-2694 /usr/sbin/nscd
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 monitoring file `/etc/hosts` (4)
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 monitoring directory `/etc` (2)
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 monitoring file `/etc/resolv.conf` (5)
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 monitoring directory `/etc` (2)
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 monitoring file `/etc/services` (6)
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 monitoring directory `/etc` (2)
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 disabled inotify-based monitoring for file `/etc/netgroup': No such file or directory
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 stat failed for file `/etc/netgroup'; will try again later: No such file or directory
Oct 08 15:27:23 192.168.101.10 nscd[2694]: 2694 Access Vector Cache (AVC) started
设置 SSSD 和 PAM LDAP 配置
执行以下 authconfig 命令来设置 SSSD 身份验证配置,如下所示。这也将确保您为 LDAP 客户端获取相应的用户主目录。
# authconfig --enableldapauth --enablemkhomedir \
--enablesysnetauth --enablelocauthorize \
--ldapserver=ldap://deploy.thegeekstuff.com \
--ldapbasedn="dc=hgst,dc=com" --update
请注意,当满足以下两个条件时,authconfig 将启用并启动 SSSD 服务:
/etc/sssd/sssd.conf 文件存在,或至少已使用隐式 SSSD 支持配置
启用 SSSD 身份验证,这意味着在 PAM 配置中引用了 pam_sss.so 模块
SSSD 为用户身份启用,这意味着 nsswitch.conf 文件引用了 sss
执行以下 authconfig 命令来设置 PAM 配置,如下所示。
# authconfig --enableldap --enableldapauth \
--enablemkhomedir --enablesysnetauth \
--enablelocauthorize \
--ldapserver="deploy.hgst.coms.cn" \
--ldapbasedn="dc=deploy,dc=hgst,dc=com.cn" \
--update
以下是在 authconfig 更改期间将受到影响的一些文件:
- /etc/nscd.conf
- /etc/nslcd.conf
- /etc/openldap/ldap.conf
- /etc/pam.d/system-auth
- /etc/pam.d/password-auth-ac
- /etc/nsswitch.conf
上述 authconfig 命令中使用了以下选项:
- --enableldapauth 将通过 /etc/pam.d/system-auth 配置认证功能
- --enableldap 选项将在 /etc/nsswitch.conf 中配置用户信息服务
- --enablesysnetauth 选项将允许对 uid < 500 的系统帐户进行身份验证。
- --enablelocauthorize 选项将允许绕过检查网络身份验证服务以进行授权
- --update 选项将确保根据指定的命令行选项修改所有配置文件
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)