为 389 目录服务器安装配置 LDAP 客户端

举报
Tiamo_T 发表于 2022/10/17 08:34:45 2022/10/17
【摘要】 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

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。