Please enable Javascript to view the contents

LDAP部署手册

 ·  ☕ 3 分钟

重点

  1. DN 是一条LDAP记录项的名字,并作为唯一标识。可以理解成uuid,具体格式像: “cn=admin,dc=service,dc=corp”

1.概念

  1. LDAP:Lightweight Directory Access Protocol,轻量目录访问协议。
  2. LDAP服务是一个为只读(查询、浏览、搜索)访问而优化的非关系型数据库,呈树状结构组织数据。
  3. LDAP主要用做用户信息查询(如邮箱、电话等)或对各种服务访问做后台认证以及用户数据权限管控。

名词解释:

DC: domain component一般为公司名,例如:dc=163,dc=com
OU: organization unit为组织单元,最多可以有四级,每级最长32个字符,可以为中文
CN: common name为用户名或者服务器名,最长可以到80个字符,可以为中文
DN: distinguished name为一条LDAP记录项的名字,有唯一性,例如:dc:“cn=admin,ou=developer,dc=163,dc=com”

图形示例:

image

2.安装

2.1docker 安装

  1. openldap官方镜像-Github
  2. ldap-account-manager Docker-hub
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# 拉取镜像
docker pull osixia/openldap

# 启动容器
docker run \
       -p 389:389 \
       --name openldap \
       --restart=always \
       --env LDAP_ORGANISATION="sotemalltest" \
       --env LDAP_DOMAIN="sotemalltest.com" \
       --env LDAP_ADMIN_PASSWORD="redhat" \
       --detach osixia/openldap

说明:

  • 389端口:默认ldap服务是使用389端口
  • LDAP_ORGANISATION 表示ldap的机构组织
  • LDAP_DOMAIN 配置LDAP域
  • LDAP_ADMIN_PASSWORD 配置LDAP管理员(admin)的密码
  • 默认用登陆用户名admin

如果是Windows用户,建议使用ldapadmin, 这样就省去安装管理ldap的服务,如果使用Ubuntu,建议还是装一个管理服务,毕竟Ubuntu下的管理ldap工具都太原始了,还不如命令来的好用。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# 拉取ldap account manager镜像
docker pull ldapaccountmanager/lam

# 启动容器
docker run -d \
        --restart=always \
        --name ldap-account-manager \
        -p 80:80 \
        --link openldap:ldap-host \
        --env PHPLDAPADMIN_LDAP_HOSTS=ldap-host \
        --env PHPLDAPADMIN_HTTPS=false \
        --detach ldapaccountmanager/lam

说明:

  • --link这里连接到OpenLDAP容器并起了一个别名ldap-host
  • PHPLDAPADMIN_LDAP_HOSTS这里直接通过别名指向OpenLDAP容器,这样不需要写死IP地址
  • PHPLDAPADMIN_HTTPS不使用443协议
  • --restart=always加入此参数是防止系统重启了容器未启动。(docker服务开机启动)

2.2Kubernetes 安装

获取chart:

github地址: https://github.com/helm/charts.git
文件路径: charts-stable-openldap

1
helm install --name=openldap openldap

具体详细配置,参考该chart readme文件。

3.使用

3.1Docker 版使用

访问ldap-account-manager,打开网页访问: http://IP

ldap-deploy-1

点击上图3号位置,配置lam。如下图所示,点击Edit server profiles

ldap-deploy-2

提示输入Lam密码,默认密码lam,可自行修改。登录后如下图做相应修改:

ldap-deploy-3

修改一下默认的管理员帐号:

ldap-deploy-4

接下来是修改默认创建的两个组,这两个会在首次登陆系统时提示创建

ldap-deploy-5

保存后,登陆系统

ldap-deploy-6

提示创建默认的组:

ldap-deploy-7

ldap-group+user

lam详细使用 参考博客ldap account manager 使用

Reference

运维吧-ldap1-openldap部署及管理维护
运维吧-ldap2-SVN集成openldap
运维吧-ldap3-GitLab集成OpenLDAP认证
运维吧-ldap4-Jenkins集成OpenLDAP认证

ldap-jenkins
ldap-grafana
lam 使用说明

分享

Hex
作者
Hex
CloudNative Developer

目录