ldap安装部署

二龙3年前技术文章1375

一、关闭selinux和防火墙

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config 
setenforce 0
systemctl stop firewalld
systemctl disable firewalld

二、yum安装ldap

部署安装包

yum -y install openldap compat-openldap openldap-clients \
openldap-servers openldap-servers-sql openldap-devel migrationtools

查看版本OpenLdap版本

slapd -VV

图片1.png

修改配置文件

配置管理员密码,将密码设置为Admin258258,执行加密后将密码保存下来,放在配置文件olcDatabase={2}hdb.ldif的olcRootPW值中(该值需要添加),修改对应的olcSuffix、olcRootDN。

slappasswd -s  Admin258258
vi /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif

图片2.png

修改olcDatabase={1}monitor.ldif文件中的olcAccess值

vi "/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif"

图片3.png

验证配置文件是否正确,出现succeed表明文件正确。

slaptest -u

checksum error可忽略

图片4.png

启动查看服务

systemctl enable slapd
systemctl start slapd
systemctl status slapd

查看监听端口

netstat -anpl|grep 389

配置OpenLDAP数据库

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap:ldap -R /var/lib/ldap
chmod 700 -R /var/lib/ldap
ll /var/lib/ldap/

导入基本Schema

ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif

配置openldap基础的数据库

vim base.ldif

添加如下内容后导入

dn: dc=HADOOP,dc=NBGTEST,dc=LOCAL
o: HADOOP NBGTEST LOCAL
dc: HADOOP
objectClass: top
objectClass: dcObject
objectclass: organization

dn: cn=Manager,dc=HADOOP,dc=NBGTEST,dc=LOCAL
cn: Manager
objectClass: organizationalRole
description: Directory Manager

dn: ou=People,dc=HADOOP,dc=NBGTEST,dc=LOCAL
ou: People
objectClass: top
objectClass: organizationalUnit

dn: ou=Group,dc=HADOOP,dc=NBGTEST,dc=LOCAL
ou: Group
objectClass: top
objectClass: organizationalUnit
ldapadd -x -w "Admin258258" -D "cn=Manager,dc=HADOOP,dc=NBGTEST,dc=LOCAL"  -f /etc/openldap/base.ldif

开启OpenLDAP日志访问功能

默认情况下OpenLDAP是没有启用日志记录功能的,但是在实际使用过程中,我们为了定位问题需要使用到OpenLDAP日志。
新建日志配置ldif文件loglevel.ldif,如下:

vim loglevel.ldif
dn: cn=config
changetype: modify
replace: olcLogLevel
olcLogLevel: -1

导入到OpenLDAP中,如下:

ldapmodify -Y EXTERNAL -H ldapi:/// -f /root/loglevel.ldif

重启OpenLDAP服务

systemctl restart slapd

修改rsyslog配置文件/etc/rsyslog.conf,末尾添加

local4.* /var/log/slapd.log

重启rsyslog服务

systemctl restart rsyslog

安装和配置LDAP管理工具PHPldapadmin

yum -y install httpd php php-ldap php-gd php-mbstring php-pear php-bcmath php-xml
yum -y install epel-release
yum --enablerepo=epel -y install phpldapadmin

修改配置文件

vim /etc/phpldapadmin/config.php
#397行取消注释,398行添加注释
$servers->setValue('login','attr','dn');
// $servers->setValue('login','attr','uid');
vi /etc/httpd/conf.d/phpldapadmin.conf
#
#  Web-based tool for managing LDAP servers
#

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs

<Directory /usr/share/phpldapadmin/htdocs>
  <IfModule mod_authz_core.c>
    # Apache 2.4
    #Require local
    Require all granted
  </IfModule>
  <IfModule !mod_authz_core.c>
    # Apache 2.2
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    Allow from ::1
  </IfModule>
</Directory>

设置开机自启并启动httpd,如果之前有启动过,进行restart重启。

systemctl enable httpd
systemctl start httpd

登录web页面

http://10.188.0.2/phpldapadmin/cmd.php

账号:cn=Manager,dc=HADOOP,dc=NBGTEST,dc=LOCAL

密码:Admin258258

图片5.png


相关文章

使用helm在k8s集群部署rancher

使用helm在k8s集群部署rancher由于我们的k8s版本是1.22,所以我们直接安装latest版本的rancher。不同版本的rancher helm仓库可以看下面链接https://docs...

oracle adg容灾切换需要注意的参数

1.DG角色在线转换1.1 角色(主备)和DG有关的角色:primary database 主库,在线服务应用physical standby database 备库,物理备库,在线备份主库数据与主库...

Apache trino的ldap认证开启

Apache trino的ldap认证开启

1、背景由于trino 默认没有开启用户认证体系,需要ldap用户进行认证。开启tls和ldap用户认证。提高安全性2、配置前置条件。trino 集群已经部署完成ldap 服务openjdk 版本大于...

MySQL 数据迁移中 lower_case_table_names 参数影响

MySQL 数据迁移中 lower_case_table_names 参数影响

记一次 SQLServer 迁移至 MySQL 遇到的一个关于 lower_case_table_names 参数的问题。前言   将 SQLServer 数据库迁移至 MySQL 迁移过后,驼峰命名...

Elasticsearch数据规划

1.1 为什么数据规划很重要任何系统都有一套更为适用的规则或者其系统规格,前期的详细设计能为我们后期维护优化节约大量的精力。在我们实际的经验中,发现大部分问题(分片严重超规格,单个分片超大,索引map...

Kafka 手动调整分区副本存储

Kafka 手动调整分区副本存储

              在生产环境中,每台服务器的配置和性能不一致,但是Kafka只会根据自己的代码规则创建对应的分区副本,就会导致个别服务器存储压力较大。所有需要手动调整分区副本的存储。测试:创...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。