阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

OpenLDAP 客户端安装部署

232次阅读
没有评论

共计 6953 个字符,预计需要花费 18 分钟才能阅读完成。

          有关服务端的安装请点击

一、账号登录系统流程讲解

    当在客户端输入账号登录系统时,系统根据 /etc/nsswitch.conf 配置文件获取账号查找顺序,然后再根据 PAM 配置文件调用相关模块,对账号 (/etc/passwd) 及密码 (/etc/shadow) 进行查找并进行匹配。当本地匹配不成功时,会通过后端认证服务器 (OpenLDAP 服务器) 进行验证。

二、配置文件功能介绍

    下面介绍几个配置文件再后面我们会进行修改,我这里简单介绍一下。

  • /etc/nsswitch.conf 该文件主要用于名称转换服务,用于系统验证用户身份所读取本地文件或是远程验证服务器文件。

  • /etc/sysconfig/authconfig 主要用于提供身份验证之 LDAP 功能,该配置文件用来跟踪 LDAP 身份认证机制是否正确启用。

  • /etc/pam.d/system-auth 主要用于实现用户账户身份验证。

  • /etc/pam_ldap.conf 实现客户端与服务端的交互。

  • /etc/openldap/ldap.conf 主要用于查询 OpenLDAP 服务器所有条目信息。

三、三种部署方式介绍

1、图形化部署

    一般通过 setup、authconfig-gui 命令调用图形界面实现配置。通过图形方式将客户端加入到 OpenLDAP 服务端配置非常简单,只需要根据提示并正确选择菜单以及正确输入 Server 和 Base DN 对应的值即可。

    当完成配置后,系统会根据你所定义的参数对涉及的配置文件进行修改,完成客户端的部署。

2、配置文档部署

    当图形界面部署无法满足当前需求时,此时通过会选择修改配置文件方式实现 OpenLDAP 客户端的部署,例如,当对配置文件额外参数进行调整时。

3、命令行部署

    一般通过 anthconfig 实现命令行的部署。命令行的部署是三种配置方式中最难的一种,比较难的是因为你事先需要定义相关选项及参数进行了解。

四、图形化部署 OpenLDAP 客户端

1、下载 setup 工具

1
yum install setuptool -y

2、域名解析,时间同步

3、配置文件备份

1
2
cp /etc/nsswitch.conf /etc/nsswitch.conf.bak
cp /etc/pam.d/system-auth-ac /etc/pam.d/system-auth-ac.bak

4、操作步骤

    直接运行 setup 命令。

OpenLDAP 客户端安装部署

 

OpenLDAP 客户端安装部署

 

OpenLDAP 客户端安装部署

    发现我一个软件没有安装,没事,我们安装就是了。

OpenLDAP 客户端安装部署

5、查看修改的文件

    目前查看一下,到底他修改了哪些文件。

1
[root@test01 ~]# vimdiff /etc/nsswitch.conf /etc/nsswitch.conf.bak

    我们可以看到增加了 ldap,说明用户验证首先查看本地文件,没有的话再通过 ldap 验证。

OpenLDAP 客户端安装部署

1
[root@test01 ~]# vimdiff /etc/pam.d/system-auth /etc/pam.d/system-auth.bak

    主要添加一些 pam 支持 ldap 的认证。

OpenLDAP 客户端安装部署

Liferay Portal 配置使用 Oracle 和 OpenLDAP http://www.linuxidc.com/Linux/2012-07/66928.htm

在 CentOS 6.5 上安装 OpenLDAP 并配置 LDAP 方式用户登录  http://www.linuxidc.com/Linux/2015-04/116536.htm

RHEL7 中 OpenLDAP 的安装与配置  http://www.linuxidc.com/Linux/2015-03/115524.htm

Ubuntu 下 OpenLDAP 服务器的部署步骤  http://www.linuxidc.com/Linux/2014-12/110775.htm 

Axigen+OpenLDAP+BerkeleyDB+ejabberd 多域 +JWchat 详细配置 http://www.linuxidc.com/Linux/2012-06/61598.htm

CentOS 部署 OpenLDAP 认证 http://www.linuxidc.com/Linux/2012-04/57932.htm

CentOS Linux 安装 OpenLDAP 服务器  http://www.linuxidc.com/Linux/2014-03/98087.htm

Ubuntu 安装 OpenLDAP 之配置 LDAP  http://www.linuxidc.com/Linux/2016-05/130998.htm

1
[root@test01 ~]# tail -5 /etc/nslcd.conf

OpenLDAP 客户端安装部署

1
[root@test01 ~]# tail -5 /etc/pam_ldap.conf

OpenLDAP 客户端安装部署

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2016-08/134228p2.htm

六、OpenLDAP 客户端验证

1、配置 /etc/openldap/ldap.conf

    默认客户端不允许查询 OpenLDAP 条目信息,如果需要让客户端查询条目,需要添加 OpenLDAP 服务端的 URI 以及 BASE 条目,命令如下:

1
2
3
4
5
6
7
8
9
10
[root@test01 ~]# ldapsearch -x -LLL
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
  
[root@test01 ~]# cat >> /etc/openldap/ldap.conf << EOF
URI   ldap://192.168.2.10/
BASE  dc=wzlinux,dc=com
EOF
  
[root@test01 ~]# ldapsearch -x -LLL|wc -l
45

2、客户端验证

    用户的信息添加我已经在上篇博文里面介绍过了,这次我们验证一下添加的这个 test1 用户。如果没有获取成功,请查看以上提到的配置文件。

1
2
3
4
5
6
7
8
9
10
11
# 查询在我们的客户端机器上面是否有 test1 用户,查询是没有的
[root@test01 ~]# cat /etc/passwd |grep test1
# 直接查看 test1 的 ID,可以查询到,说明他通过了 OpenLDAP 进行的验证
[root@test01 ~]# id test1
uid=24422(test1) gid=0(root) groups=0(root),10673(DBA)
# 以下信息都说明通过的 OpenLDAP
[root@test01 ~]# getent passwd test1
test1:x:24422:0:test1:/home/test1:/bin/bash
  
[root@test01 ~]# getent shadow test1
test1:{SHA}tESsBmE/yNY3lb6a0L6vVQEZNqw=:12011:0:99999:0:99999:99999:0

3、客户端登录验证

    此时使用 OpenLDAP 用户验证是否正常登录客户端。从截图我们可以看到已经登录成功了,但是发现他没有自己的主目录,此时通过创建用户家目录即可解决。

OpenLDAP 客户端安装部署

    一般可以通过配置服务端和客户端两种方式解决,一种是 autofs+nfs,另一种是修改 /etc/pam.d/system-auth 添加 pam 模块(pam_mkhomedir.so)实现 OpenLDAP 用户家目录的创建,我们这里选择添加 pam 模块进行演示,这也是比较推荐的方法。

1
2
3
[root@test01 ~]# cat >> /etc/pam.d/sshd << EOF
session    required     pam_mkhomedir.so skel=/etc/skel/ umask=0022
EOF

OpenLDAP 客户端安装部署

   客户端再次登录验证。

OpenLDAP 客户端安装部署

七、配置文件部署 OpenLDAP 客户端

    nslcd 进程由 nss-pam-ldapd 软件包提供,并根据 nslcd.conf 配置信息,与后端的认证服务器进行交互。例如,用户、主机名称服务信息、组织、其他数据历史存储、NIS 等。

1、安装 OpenLDAP 客户端软件包

1
yum install openldap-clients nss-pam-ldapd

2、修改 /etc/nslcd.conf 配置文件

    修改文件最后面如下内容。

1
2
3
4
uri ldap://192.168.2.10/
base dc=wzlinux,dc=com
ssl no
tls_cacertdir /etc/openldap/cacerts

3、修改 pam_ldap.conf 配置文件

    在文件最后面添加如下内容,注意删除里面的 base 和 host 有效的那一行。

 

1
2
3
4
5
uri ldap://192.168.2.10/
base dc=wzlinux,dc=com
ssl no
tls_cacertdir /etc/openldap/cacerts
pam_password md5

4、修改 system-auth 认证文件

   在文件内添加如下内容,��体位置请查看上面的图片。

1
2
3
4
auth       sufficient     pam_ldap.so    use_first_pass
account    [default=bad success=ok user_unknown=ignore]    pam_ldap.so
password     sufficient     pam_ldap.so    use_authtok
session      optional     pam_ldap.so

5、修改 nsswitch.conf 配置文件

    在 passwd、shadow、group 后面的 files 后面添加 ldap。

6、修改 /etc/sysconfig/authconfig 认证文件

1
2
3
4
USESHADOW=yes               # 启用密码验证
USELDAPAUTH=yes             # 启用 OpenLDAP 验证
USELOCAUTHORIZE=yes         # 启用本地验证
USELDAP=yes                 # 启用 LDAP 认证协议

7、加载 nslce 进程

1
service nslcd restart

    以上我简单略过的大家可以参照图形化安装修改的一些文件内容来修改,相对来说图形化安装比较方便,但是如果遇到大批量安装,使用命令行部署还是比较简便的。

八、命令行部署 OpenLDAP 客户端

1、authconfig 命令介绍

    通过 authconfig -h 查看其帮助信息。

2、安装客户端软件包

1
yum install openldap-clients nss-pam-ldapd -y

3、命令行部署

    运行一下命令,可以根据帮助文档进行个性化定制。

1
2
3
4
5
6
7
8
9
authconfig --enablemkhomedir \
--disableldaptls \
--enablemd5 \
--enableldap \
--enableldapauth \
--ldapserver=ldap://192.168.2.10 \
--ldapbasedn="dc=wzlinux,dc=com" \
--enableshadow \
--update

OpenLDAP 客户端安装部署

    可以看到正常登录,创建家目录。之前我们是在 /etc/pam.d/sshd 里面添加的创建家目录认证,我们使用命令部署之后,我看它加在了 /etc/pam.d/system-auth 里面,之前我手动修改配置文件的时候不行,图形化安装也不行,大家可以试试看看是否 OK,具体如下:

OpenLDAP 客户端安装部署

4、用户密码设置

    默认情况下用户是不可以修改密码的,因为我服务端开通了修改密码的权限,所以我这里用户可以个性化修改自己的密码,添加的服务端代码如下,具体操作请查看我的服务端部署文档。

OpenLDAP 客户端安装部署

    密码修改演示如下。

OpenLDAP 客户端安装部署

OpenLDAP 的详细介绍:请点这里
OpenLDAP 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-08/134228.htm

          有关服务端的安装请点击

一、账号登录系统流程讲解

    当在客户端输入账号登录系统时,系统根据 /etc/nsswitch.conf 配置文件获取账号查找顺序,然后再根据 PAM 配置文件调用相关模块,对账号 (/etc/passwd) 及密码 (/etc/shadow) 进行查找并进行匹配。当本地匹配不成功时,会通过后端认证服务器 (OpenLDAP 服务器) 进行验证。

二、配置文件功能介绍

    下面介绍几个配置文件再后面我们会进行修改,我这里简单介绍一下。

  • /etc/nsswitch.conf 该文件主要用于名称转换服务,用于系统验证用户身份所读取本地文件或是远程验证服务器文件。

  • /etc/sysconfig/authconfig 主要用于提供身份验证之 LDAP 功能,该配置文件用来跟踪 LDAP 身份认证机制是否正确启用。

  • /etc/pam.d/system-auth 主要用于实现用户账户身份验证。

  • /etc/pam_ldap.conf 实现客户端与服务端的交互。

  • /etc/openldap/ldap.conf 主要用于查询 OpenLDAP 服务器所有条目信息。

三、三种部署方式介绍

1、图形化部署

    一般通过 setup、authconfig-gui 命令调用图形界面实现配置。通过图形方式将客户端加入到 OpenLDAP 服务端配置非常简单,只需要根据提示并正确选择菜单以及正确输入 Server 和 Base DN 对应的值即可。

    当完成配置后,系统会根据你所定义的参数对涉及的配置文件进行修改,完成客户端的部署。

2、配置文档部署

    当图形界面部署无法满足当前需求时,此时通过会选择修改配置文件方式实现 OpenLDAP 客户端的部署,例如,当对配置文件额外参数进行调整时。

3、命令行部署

    一般通过 anthconfig 实现命令行的部署。命令行的部署是三种配置方式中最难的一种,比较难的是因为你事先需要定义相关选项及参数进行了解。

四、图形化部署 OpenLDAP 客户端

1、下载 setup 工具

1
yum install setuptool -y

2、域名解析,时间同步

3、配置文件备份

1
2
cp /etc/nsswitch.conf /etc/nsswitch.conf.bak
cp /etc/pam.d/system-auth-ac /etc/pam.d/system-auth-ac.bak

4、操作步骤

    直接运行 setup 命令。

OpenLDAP 客户端安装部署

 

OpenLDAP 客户端安装部署

 

OpenLDAP 客户端安装部署

    发现我一个软件没有安装,没事,我们安装就是了。

OpenLDAP 客户端安装部署

5、查看修改的文件

    目前查看一下,到底他修改了哪些文件。

1
[root@test01 ~]# vimdiff /etc/nsswitch.conf /etc/nsswitch.conf.bak

    我们可以看到增加了 ldap,说明用户验证首先查看本地文件,没有的话再通过 ldap 验证。

OpenLDAP 客户端安装部署

1
[root@test01 ~]# vimdiff /etc/pam.d/system-auth /etc/pam.d/system-auth.bak

    主要添加一些 pam 支持 ldap 的认证。

OpenLDAP 客户端安装部署

Liferay Portal 配置使用 Oracle 和 OpenLDAP http://www.linuxidc.com/Linux/2012-07/66928.htm

在 CentOS 6.5 上安装 OpenLDAP 并配置 LDAP 方式用户登录  http://www.linuxidc.com/Linux/2015-04/116536.htm

RHEL7 中 OpenLDAP 的安装与配置  http://www.linuxidc.com/Linux/2015-03/115524.htm

Ubuntu 下 OpenLDAP 服务器的部署步骤  http://www.linuxidc.com/Linux/2014-12/110775.htm 

Axigen+OpenLDAP+BerkeleyDB+ejabberd 多域 +JWchat 详细配置 http://www.linuxidc.com/Linux/2012-06/61598.htm

CentOS 部署 OpenLDAP 认证 http://www.linuxidc.com/Linux/2012-04/57932.htm

CentOS Linux 安装 OpenLDAP 服务器  http://www.linuxidc.com/Linux/2014-03/98087.htm

Ubuntu 安装 OpenLDAP 之配置 LDAP  http://www.linuxidc.com/Linux/2016-05/130998.htm

1
[root@test01 ~]# tail -5 /etc/nslcd.conf

OpenLDAP 客户端安装部署

1
[root@test01 ~]# tail -5 /etc/pam_ldap.conf

OpenLDAP 客户端安装部署

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2016-08/134228p2.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计6953字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中