作者:yaoyao

1.账号登录系统流程讲解

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

2.系统版本及配置文件

  1. /etc/nsswitch.conf 用于验证用户身份所读取本地文件或是远程验证服务器的文件
  2. /etc/sysconfig/authconfig 跟着ldap身份验证机制是否正确启动
  3. /etc/pam.d/system-auth 实现用户帐号身份验证
  4. /etc/pam_ldap.conf

    与openldap服务器进行交互,获取用户条目信息
  5. /etc/openldap/ldap.conf 用于查询openldap服务器所有条目信息

1.安装客户端

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

2.修改/etc/nslcd.conf

vim /etc/nslcd.conf
修改相关内容如下
uri ldap://127.0.0.1/
base dc=liuyao,dc=com
ssl no
tls_cacertdir /etc/openldap/cacerts

3.修改/etc/pam_ldap.conf

vim /etc/pam_ldap.conf
修改相关内容如下
host 127.0.0.1
uri ldap://127.0.0.1/
ssl no
tls_cacertdir /etc/openldap/cacerts
bind_policy soft

4.修改/etc/pam.d/system-auth文件

#vim /etc/pam.d/system-auth

修改相关内容如下
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
#重点内容
auth sufficient pam_ldap.so use_first_pass
account required pam_unix.so
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account required pam_permit.so
#重点内容
account [default=bad success=ok user_unknown=ignore] pam_ldap.so
password requisite pam_cracklib.so try_first_pass retry=3 type=
password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password required pam_deny.so
#重点内容
password sufficient pam_ldap.so use_authtok
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
#重点内容
session optional pam_ldap.so
#重点内容
session optional pam__mkhomedir.so skel=/etc/skel umask=077

5.修改/etc/nsswitch.conf文件

#vim /etc/nsswitch.conf
修改相关内容如下
passwd: files ldap
shadow: files ldap
group: files ldap

6.修改/etc/sysconfig/authconfig

#vim /etc/sysconfig/authconfig
修改相关内容如下
IPADOMAINJOINED=no
USEMKHOMEDIR=no
USEPAMACCESS=no
CACHECREDENTIALS=yes
USESSSDAUTH=no
USESHADOW=yes
USEWINBIND=no
USEDB=no
FORCELEGACY=no
USEFPRINTD=no
FORCESMARTCARD=no
PASSWDALGORITHM=sha512
#重点内容
USELDAPAUTH=yes
USEPASSWDQC=no
IPAV2NONTP=no
#重点内容
USELOCAUTHORIZE=yes
USECRACKLIB=yes
USEIPAV2=no
USEWINBINDAUTH=no
USESMARTCARD=no
#重点内容
USELDAP=yes
USENIS=no
USEKERBEROS=no
USESYSNETAUTH=no
USESSSD=no
USEHESIOD=no

7.修改/etc/openldap/ldap.conf

vim /etc/openldap/ldap.conf
TLS_CACERTDIR /etc/openldap/certs

8.修改/etc/pam.d/sshd

#vim /etc/pam.d/sshd
session required pam_mkhomedir.so

9.启动相关服务器

#/etc/init.d/nslcd restart

10.验证

getent passwd liuyao
#如果有返回代表配置成功

6.openldap客户端安装的更多相关文章

  1. 04-openldap客户端安装

    阅读视图 基础环境准备 关闭sssd及安装nslcd客户端 配置nslcd客户端 启动nslcd进程 客户端验证 ssh登录自动创建家目录 1. 基础环境准备 本文承接openldap服务端安装配置, ...

  2. OpenLDAP编译安装及配置

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

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

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

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

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

  5. Centos 6.5 SNMP客户端安装及配置版本net-snmp-5.7.3

    Centos 6.5 SNMP客户端安装及配置SNMP版本:net-snmp-5.7.3.tar.gz1.下载软件cd /usr/local/srcyum -y install gccwget htt ...

  6. Oracle 客户端安装配置

    电脑上安装了Oracle11G,我远程导出一个10g的数据库数据时,报了错误,猜测可能是我的11G客户端版本的问题.所以下载了10G的客户端 安装. 其实客户端的配置读取的是两个文件监听配置文件lis ...

  7. Oracle客户端安装及配置

    Oracle客户端安装及配置 1.安装orcale客户端(Oracle_client_10 )选择inst...方式安装(不是管理员方式) 2.在安装路径下新建目录network\admin 然后新建 ...

  8. svn服务器及客户端安装使用

    一.服务器安装: 1.yum install subversion   2.输入rpm -ql subversion查看安装位置,如下图:   我们知道svn在bin目录下生成了几个二进制文件. 输入 ...

  9. 开源入侵检测系统OSSEC搭建之二:客户端安装

    上一篇文章中已经将OSSEC服务端的安装以及客户端的Key导出操作做了解说,接下来在另一台虚拟机中安装客户端,与安装服务端类似同样需要安装ossec,步骤如下. 一.下载ossec-hids-2.8. ...

随机推荐

  1. c++—— 函数重载(Overroad)

    5 函数重载(Overroad) 函数重载概念 1 函数重载概念 函数重载(Function Overload) 用同一个函数名定义不同的函数 当函数名和不同的参数搭配时函数的含义不同 2 函数重载的 ...

  2. leetcode589. N-ary Tree Preorder Traversal

    python 版: class Solution(object): def preorder(self, root): ret, q = [], root and [root] while q: no ...

  3. C#中的结构体与类的区别 (转载)

    经常听到有朋友在讨论C#中的结构与类有什么区别.正好这几日闲来无事,自己总结一下,希望大家指点. 1. 首先是语法定义上的区别啦,这个就不用多说了.定义类使用关键字class 定义结构使用关键字str ...

  4. CentOS 安装第三方yum源

    yum install wget #安装下载工具 wget http://www.atomicorp.com/installers/atomic #下载 sh ./atomic #安装 yum che ...

  5. C语言学习记录_2019.02.09

    打印字符串:%s--------printf("%s","abcd"); 打印字符串数组中某一位:%c--------printf("%c" ...

  6. 2017-2018-2 《网络对抗技术》20155322 Exp6 信息搜集与漏洞扫描

    [-= 博客目录 =-] 1-实践目标 1.1-实践介绍 1.2-实践内容 1.3-实践要求 2-实践过程 2.1-Google hacking & ZoomEye 2.2-DNS.IP信息收 ...

  7. Linux下开发python django程序(设置admin后台管理上传文件和前台上传文件保存数据库)

    1.项目创建相关工作参考前面 2.在models.py文件中定义数据库结构 import django.db import modelsclass RegisterUser(models.Model) ...

  8. Keil 中的Code,RO-data,RW-data,ZI-data

    我们开发项目中,编译.链接完成后,都要看一下RAM和Flash的利用情况,尤其在有bootloader的情况下,确保自己的单片机选型能符合项目的要求.其中ARM程序的组成,是很容易混淆的.此处所说的“ ...

  9. 【HNOI2014】画框

    题面 题解 这又是一种套路啊233 将\(\sum a_i\)和\(\sum b_i\)分别看做\(x\)和\(y\),投射到平面直角坐标系中,于是就是找\(xy\)最小的点 于是可以先找出\(x\) ...

  10. PHP Rabbitmq 报错Broken pipe

    fwrite(): send of 13 bytes failed with errno=32 Broken pipe fwrite(): send of 21 bytes failed with e ...