阅读视图

  1. 基础环境准备
  2. 关闭sssd及安装nslcd客户端
  3. 配置nslcd客户端
  4. 启动nslcd进程
  5. 客户端验证
  6. ssh登录自动创建家目录

1. 基础环境准备

本文承接openldap服务端安装配置,基础环境请参考openldap服务端安装配置

2. 关闭sssd及安装nslcd客户端

  1. 关闭sssd进程,由于我这最小化安装,并没有sssd进程

    [root@mldap01 ~]# service sssd stop && chkconfig sssd off
    sssd: unrecognized service
  2. 安装OpenLDAP客户端软件包

    [root@test01 ~]# yum -y install openldap-clients nss-pam-ldapd

3. 配置nslcd客户端

  1. 修改nslcd.conf配置文件,该文件是由nss-pam-ldapd包提供

    [root@test01 ~]# vim /etc/nslcd.conf
    uri ldap://mldap01.gdy.com
    base dc=gdy,dc=com
    ssl no
    tls_cacertdir /etc/openldap/certs
    [root@test01 ~]# rpm -qf /etc/nslcd.conf
    nss-pam-ldapd-0.7.5-32.el6.x86_64
  2. 修改pam_ldap.conf配置文件,由pam_ldap包提供,pam_ldap

    [root@test01 ~]# vim /etc/pam_ldap.conf
    base dc=gdy,dc=com
    uri ldap://mldap01.gdy.com
    ssl no
    tls_cacertdir /etc/openldap/certs
    bind_policy soft
    [root@test01 ~]# rpm -qf /etc/pam_ldap.conf
    pam_ldap-185-11.el6.x86_64
  3. 修改system-auth认证文件

    由pam包提供(系统自带包)

    [root@test01 ~]# rpm -qf /etc/pam.d/system-auth
    pam-1.1.1-24.el6.x86_64
  4. 修改nsswitch.conf配置文件

  5. 修改authconfig文件

    [root@test01 ~]# rpm -qf /etc/sysconfig/authconfig
    authconfig-6.1.12-23.el6.x86_64
    [root@test01 ~]# vim /etc/sysconfig/authconfig
    USESHADOW=yes
    USELDAPAUTH=yes
    USELOCAUTHORIZE=yes
    USELDAP=yes

    选项解释如下

    USESHADOW=yes   //启用密码验证
    USELDAPAUTH=yes //启用OpenLDAP验证
    USELOCAUTHORIZE=yes //启用本地验证
    USELDAP=yes //启用LDAP认证协议

4. 启动nslcd进程

```shell
[root@test01 ~]# /etc/init.d/nslcd restart
Stopping nslcd: [FAILED]
Starting nslcd: [ OK ]
[root@test01 ~]# chkconfig nslcd on
[root@test01 ~]# chkconfig --list nslcd
nslcd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
```

5. 客户端验证

  1. 使用id命令或getent命令验证

    [root@test01 ~]# getent passwd user1
    user1:x:501:501:user1:/home/user1:/bin/bash
    [root@test01 ~]# id user1
    uid=501(user1) gid=501(user1) groups=501(user1)
    [root@test01 ~]# cat /etc/passwd | grep user1
  2. 使用ssh登录验证

    [root@test01 ~]# ssh user1@127.0.0.1
    The authenticity of host '127.0.0.1 (127.0.0.1)' can't be established.
    RSA key fingerprint is 1a:8a:57:12:ee:68:91:a4:bd:c5:48:f1:03:a9:5f:9c.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added '127.0.0.1' (RSA) to the list of known hosts.
    user1@127.0.0.1's password:
    Could not chdir to home directory /home/user1: No such file or directory
    -bash-4.1$

6. ssh登录自动创建家目录

  1. 把/etc/ssh/sshd_config中的UsePAM设置成yes

  2. 在/etc/pam.d/sshd添加最后一行,加入这行的目的是ssh首次登录服务器时创建home目录

    此时ssh登录就会发现会自动创建home目录,并且权限为0700。

  3. 修改/etc/pam.d/password-auth

    这个还是需要加上,虽然不知道什么意思。如果不加上,openldap 密码策略时那一块总是通过ssh登录不上去。

  4. 重启sshd进程。最后不要忘记重启sshd进程。

7. su到该用户下自动创建家目录

修改system-auth认证文件,添加如下行。就搞定了。此时su - $user就会自动创建了。

04-openldap客户端安装的更多相关文章

  1. 6.openldap客户端安装

    作者:yaoyao 1.账号登录系统流程讲解 当在客户端输入账号登录系统时.系统根据/etc/nsswitch.conf配置文件获取账号查找顺序,然后在根据pam配置文件调用相关模块,对账号/etc/ ...

  2. Ubuntu 16.04非编译安装Zabbix 3.2----服务端和客户端win的配置

    控服务器 - 什么是Zabbix Zabbix是企业级开源分布式监控服务器解决方案. 该软件监控网络的不同参数和服务器的完整性,还允许为任何事件配置基于电子邮件的警报. Zabbix根据存储在数据库( ...

  3. ubuntu14.04 64位 安装H3C iNode客户端

    环境: OS: ubuntu14.04LTS 64位 iNode:  iNode2.40-R0162 for linux(iNode只有32位的,而且是很久以前的版本) 安装方法: 第一种: 主要参考 ...

  4. OpenLDAP编译安装及配置

    原文发表于cu:2016-06-20 参考文档: 原理:http://seanlook.com/2015/01/15/openldap_introduction/ 官方文档: http://www.o ...

  5. ubuntu14.04下编译安装ambari-2.4.2.0

    ubuntu14.04下编译安装ambari-2.4.2.0 编译前的准备工作 准备工作有: 系统参数 系统依赖(编译环境) 离线安装包 java环境 maven环境 Nodejs环境 git环境 a ...

  6. MySQL学习笔记(一)Ubuntu16.04中MySQL安装配置(5.6优化、错误日志、DNS解决)

    目录 第一部分.5.6安装.配置.自动备份 第二部分.5.7源码安装.配置.自动备份 第一部分.5.6安装 1.安装mysql sudo apt-get install mysql-server su ...

  7. CentOS 7下OpenLDAP编译安装及配置

    一.环境 Server:基于CentOS-7-x86_64-1511 Server IP: 172.18.12.203 二.软件获取 OpenLDAP OpenLDAP官网下载地址:http://ww ...

  8. open-ldap服务安装(1)

    LDAP简介 LDAP 代表 轻量级目录访问协议.在我的理解中ldap就是一个数据库. 在LDAP中,目录条目以分层树状结构排序. 传统上,这种结构反映了地理和组织边界,表示国家/地区的条目显示在树的 ...

  9. 【Ubuntu 16.04.2_64】安装配置SVN

    [Ubuntu 16.04.2_64]安装配置SVN 转载:https://www.cnblogs.com/yangchongxing/p/10190549.html 检查是否已安装svn # svn ...

随机推荐

  1. 【xsy2479】counting 生成函数+多项式快速幂

    题目大意:在字符集大小为$m$的情况下,有多少种构造长度为$n$的字符串$s$的方案,使得$C(s)=k$.其中$C(s)$表示字符串$s$中出现次数最多的字符的出现次数. 对$998244353$取 ...

  2. ThreadLocal父子线程传递实现方案

    介绍InheritableThreadLocal之前,假设对 ThreadLocal 已经有了一定的理解,比如基本概念,原理,如果没有,可以参考:ThreadLocal源码分析解密.在讲解之前我们先列 ...

  3. pycharm 安装第三方库报错:AttributeError: 'module' object has no attribute 'main'

    pip升级到 10.0.1 之后 老版的pycharm 使用pip安装第三方库的时候会报错,报错如上图所示: 其主要原因是 新版的 pip 更改了 部分api 将其中 pip.main() 改为 pi ...

  4. PHP-CPP开发扩展(六)

    PHP-CPP是一个用于开发PHP扩展的C++库.本节讲解在C++中PHP异常.变量.常量的实现相关知识. 异常 PHP和C++都支持异常,而PHP-CPP库这两种语言之间的异常处理是完全透明的.你在 ...

  5. 高可用Hadoop平台-Oozie工作流

    1.概述 在开发Hadoop的相关应用使用,在业务不复杂,任务不多的情况下,我们可以直接使用Crontab去完成相关应用的调度.今天给大家介绍的是统一管理各种调度任务的系统,下面为今天分享的内容目录: ...

  6. Django集成OpenLDAP认证

    本文详细介绍了django-auth-ldap的使用方法,参数含义,并提供了示例代码 版本说明 Django==2.2 django-auth-ldap==1.7.0 集成过程 Django集成LDA ...

  7. 如何在framegroup各个frame和window之间共享数据

    可以尝试使用execScript,在指定window或者frame中执行脚本,对于frameGroup里面的frame也有效,若name和frameName都未指定,则在当前window中执行脚本,具 ...

  8. 【多线程】Task

    介绍 Task是.NET推出数据任务处理的工作类.位于System.Threading.Tasks命名空间下,通过命名空间也可以看出是个多线程类. 创建Task: Task有很多构造函数,无参有参都有 ...

  9. Java框架之Struts2(二)

    一.Action 配置说明 //请求的直接转发 <package name="packageUser" namespace="" extends=&quo ...

  10. jQuery合并同一列中相同文本的相邻单元格

    一.效果图 二.在html的head中引入jQuery <script language="javascript" src="${pageContext.reque ...