阅读视图

  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. shell编程中的循环语句

    while循环直接从文件中读取 while read line do command done < filename until循环 until 条件 do command done for循环 ...

  2. MLlib之NaiveBayes算法源码学习

    package org.apache.spark.mllib.classification import breeze.linalg.{DenseMatrix => BDM, DenseVect ...

  3. (剑指Offer)面试题45:圆圈中最后剩下的数字

    题目: 0,1,...n-1这n个数字排成一个圆圈,从数字0开始每次从这个圆圈里删除第m个数字,求出这个圆圈里剩下的最后一个数字. 思路: 1.环形链表模拟圆圈 创建一个n个节点的环形链表,然后每次在 ...

  4. 关于const用法的学习

    被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性.所以很多C++程序设计书籍建议:“Use const whenever you need”.1.const作函数参数 例如 ...

  5. Vue.js的复用组件开发流程

    本文由蔡述雄发表 接下来我们会详细分析下如何完成由多个组件组成一个复用组件的开发流程. 下面先看看我们的需求 列表组件quiList.vue 本节我们主要要完成这样一个列表功能,每一行的列表是一个组件 ...

  6. netty源码解解析(4.0)-8 ChannelPipeline的设计

    io.netty.channel.ChannelPipeline   设计原理 上图中,为了更直观地展示事件处理顺序, 故意有规律地放置两种handler的顺序,实际上ChannelInboundHa ...

  7. 从零搭建生产环境的ghost2.0博客

    当前安装过程是在ghost cli 1.9.2上的,由于ghost更新特别快,我安装我个人博客cmlanche.com的时候还是1.9.1,当时没碰到啥问题,到1.9.2就有一点点不一样了,所以要注意 ...

  8. 利用shell显示wordcount功能

      Shell脚本编程是Linux系统最为核心的技术之一,它能够利用简单的命令来实现一些复杂的功能,同时,由于Linux提供了很多文本处理命令,如grep(grep family), tr, sed, ...

  9. (5)Jquery1.8.3快速入门_层次选择器

    一.Jquery的选择器: 层级选择器: 1.空格                div    span              div中的包含的所有span后代元素 2. >        ...

  10. 站在DevOps肩膀上的TestOps(二)

    一十一 发表于 2018-03-14 16:40:22 TestOps   摘要: TestOps模型旨在将整个团队的注意力集中在质量上,因此TestOps确实需要无缝且可靠. 一个简单的例子是任何测 ...