热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

红帽linux加入ldap,Redhat6下构建LDAP服务

下周RHCE考试,由于有几道题涉及LDAP服务,中心有现成LDAP服务器,但家练习的话就悲剧了,所以和LDAP斗争了几天&#

下周RHCE考试,由于有几道题涉及LDAP服务,中心有现成LDAP服务器,但家练习的话就悲剧了,所以和LDAP斗争了几天,参考了中心老师和网上的文档配置方法和思路,最终测试完毕。

现归纳成文档,有兴趣的朋友可以作为参考,如有遗漏,还请回复指出。

实验环境:

REDHAT6.3

LDAP server:172.24.30.20

LDAP clent: 172.24.30.25

准备工作:

配置前先关闭iptables和SELINUX,避免配置过程中报错。

# service iptables stop

# setenforce 0

# vi /etc/sysconfig/selinux

---------------

SELINUX=disabled

---------------

1.LDAP server端配置:

安装LDAP服务(使用YUM本地光盘安装)

# yum install openldap-* -y

提示安装以下4个包

openldap-devel-2.4.23-26.el6.x86_64

openldap-clients-2.4.23-26.el6.x86_64

openldap-2.4.23-26.el6.x86_64

openldap-servers-2.4.23-26.el6.x86_64

拷贝LDAP配置文件到LDAP目录(redhat6.3):

# cd /etc/openldap/

# cp /usr/share/openldap-servers/slapd.conf.obsolete slapd.conf

redhat6.0或6.1版本配置文件在主目录有备份:

# cd /etc/openldap/

# cp slapd.conf.bak slapd.conf

创建LDAP管理员密码:

# slappasswd

这里我输入的密码是redhat,输入完密码后,返回一串密文,先保存到剪贴板

{SSHA}pfAJm+JJa4ec2y8GjTc8uMEJpoR5YKLy

编译配置文件

# vi /etc/openldap/slapd.conf

找到115行,默认如图:

ae0646c1712b7cf121a57d2a15f95710.png

修改为:

3adec946064e99f7aec212c0b66db8d2.png

高亮部分为刚才生成的密码(加密后的)。

配置文件最后几行的权限部分我们也要做相应的更改:

原内容:

9634ecee314f58a06169c4242eca3883.png

更改为:

0eddb80240e6fd57a73205a3d6e8e3f3.png

保存退出。

拷贝DB_CONFIG文件到指定目录

# cp /usr/share/openldap-servers/DB_CONFIG.example  /var/lib/ldap/DB_CONFIG

删除默认/etc/openldap/slapd.d下面的所有内容,否则后面在使用ldapadd的时候会报错:

# rm -rf /etc/openldap/slapd.d/*

启动LDAP的slapd服务,并设置自启动:

# service slapd restart

# chkconfig slapd on

赋予配置目录相应权限:

# chown -R ldap:ldap /var/lib/ldap

# chown -R ldap:ldap /etc/openldap/

测试并生成配置文件:

slaptest  -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d

返回config file testing succeeded,则配置成功。

赋予生成的配置文件予权限并重启:

# chown -R ldap:ldap /etc/openldap/slapd.d

# service slapd restart

创建一个账号,以备客户端测试登陆

# useradd ldapuser1

# passwd ldapuser1

至此,这些用户仅仅是系统上存在的用户(存储在/etc/passwd和/etc/shadow上),并没有在LDAP数据库里,所以要把这些用户导入到LDAP里面去。但LDAP只能识别特定格式的文件 即后缀为ldif的文件(也是文本文件),所以不能直接使用/etc/passwd和/etc/shadow。 需要migrationtools这个工具把这两个文件转变成LDAP能识别的文件。

安装配置migrationtools

# yum install migrationtools -y

进入migrationtool配置目录

# cd /usr/share/migrationtools/

首先编辑migrate_common.ph

# vi  migrate_common.ph

找到如下内容(大概在70行):

eae30219d1d5a2ac91197f527f1a69d6.png

修改为:

20d1981fa4493aeef1caa7dede1811d8.png

下面利用pl脚本将/etc/passwd 和/etc/shadow生成LDAP能读懂的文件格式,保存在/tmp/下

# ./migrate_base.pl > /tmp/base.ldif

# ./migrate_passwd.pl  /etc/passwd > /tmp/passwd.ldif

# ./migrate_group.pl  /etc/group > /tmp/group.ldif

下面就要把这三个文件导入到LDAP,这样LDAP的数据库里就有了我们想要的用户

# ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f /tmp/base.ldif

# ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f /tmp/passwd.ldif

# ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f /tmp/group.ldif

过程若无报错,则LDAP服务端配置完毕

重启slapd完成配置

# service slapd restart

现安装NFS,并把ldapuser1的家目录做NFS共享.

默认REDHAT已安装

# yum install nfs* -y

配置NFS共享:

# vi /etc/exports

--------------

/home/ldapuser1         *(rw,no_root_squash)

--------------

重启nfs服务:

# service rpcbind restart

# service nfs restart

2.LDAP 客户端配置

打开客户端图形化界面命令行

输入system-config-authentication,按照如图配置:

d206365ee31b6f55b5d907f95fc87624.png

配置结束点Apply保存退出,系统会自动重启sssd服务

配置autofs,实现ldapuser1登录成功后,能够访问本地家目录/home/ldapuser1,该目录挂载于网内LDAP服务器172.24.30.20:/home/ldapuser1下

# vi /etc/auto.master

添加一行:

--------------

/home   /etc/auto.misc

--------------

# vi /etc/auto.master

添加一行:

--------------

*               -fstype=nfs                     172.24.30.20:/home/&

--------------

重启autofs服务:

# service autofs reload

登陆ldapuser1账户:

若未返回系统未找到ldapuser1家目录报错信息,则LDAP客户端配置成功。

注:这里若仍无法登陆,请进入setup模式配置LDAP登陆

# id ldapuser1

uid=500(ldapuser1) gid=500(ldapuser1) groups=500(ldapuser1)

# su - ldapuser1

# pwd

/home/ldapuser1

至此大功告成。。。

注:LDAP服务需要服务器和客户端的时间保持大致一致,否则在登陆ldapuser1账户时可能会报错,这里NTP服务搭建省略,可以手工修改两台服务器的时间保持一致。



推荐阅读
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 本文介绍了将mysql从5.6.15升级到5.7.15的详细步骤,包括关闭访问、备份旧库、备份权限、配置文件备份、关闭旧数据库、安装二进制、替换配置文件以及启动新数据库等操作。 ... [详细]
  • Python脚本编写创建输出数据库并添加模型和场数据的方法
    本文介绍了使用Python脚本编写创建输出数据库并添加模型数据和场数据的方法。首先导入相应模块,然后创建输出数据库并添加材料属性、截面、部件实例、分析步和帧、节点和单元等对象。接着向输出数据库中添加场数据和历程数据,本例中只添加了节点位移。最后保存数据库文件并关闭文件。文章还提供了部分代码和Abaqus操作步骤。另外,作者还建立了关于Abaqus的学习交流群,欢迎加入并提问。 ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • linux 禁止指定ip访问
    linux中如何禁止指定的ip访问呢?比如被别人暴力破解,被别人使用不同的密码尝试登录:所以我想直接禁用这些ip的访问.怎么办呢?解决方案:修改配置文件etchosts.deny把 ... [详细]
  • 在单位的一台4cpu的服务器上部署了esxserver,挂载了6个虚拟机,目前运行正常。在安装部署过程中,得到了cnvz.net论坛精华区 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 移动端常用单位——rem的使用方法和注意事项
    本文介绍了移动端常用的单位rem的使用方法和注意事项,包括px、%、em、vw、vh等其他常用单位的比较。同时还介绍了如何通过JS获取视口宽度并动态调整rem的值,以适应不同设备的屏幕大小。此外,还提到了rem目前在移动端的主流地位。 ... [详细]
author-avatar
mobiledu2502933045
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有