栏目头部广告

LDAP认证服务器容器化部署

一、LDAP介绍

OpenLDAP是轻量型目录访问协议(Lightweight Directory Access Protocol,缩写:LDAP)的一个开源实现。LDAP服务器本质上是一个为只读访问而优化的非关系型数据库。主要用做地址簿查询(如Email客户端)或对各种服务访问做后台认证以及用户数据权限管控。

二、LDAP容器化部署

2.1 运行OpenLDAP容器

[root@10-27-0-224 ~]# docker run -p 389:389 -p 636:636 /
--name stargao_ldap /
--network bridge /
--hostname stargao-openldap /
--env LDAP_ORGANISATION="ldap.starcto" /
--env LDAP_DOMAIN="ldap.starcto.com" /
--env LDAP_ADMIN_PASSWORD="123456" /
--detach osixia/openldap

-p 389:389                                                  # TCP/IP访问端口
-p 636:636                                                  # SSL连接端口
-- name stargao_ldap                                 # 容器名称为stargao_ldap
-- network bridge                                       # 连接默认的bridge网络(docker0)
-- hostname stargao-openldap                    # 设置容器主机名称为 stargao-openldap
-- env LDAP_ORGANISATION=""         # 配置LDAP组织名称
-- env LDAP_DOMAIN=""                      # 配置LDAP域名
-- env LDAP_ADMIN_PASSWORD=""  # 配置LDAP密码
默认登录用户名:admin

2.2 可视化的LDAP管理工具

[root@10-27-0-224 ~]# docker run -d --privileged -p 8080:80 /
--name stargao_phpldapadmin /
--env PHPLDAPADMIN_HTTPS=false /
--env PHPLDAPADMIN_LDAP_HOSTS=10.27.0.224 /
--detach osixia/phpldapadmin

-- privileged                                                                        # 特权模式启动(使用该参数,container内的root才拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限)
-- env PHPLDAPADMIN_HTTPS=false                          # 禁用HTTPS
-- env PHPLDAPADMIN_LDAP_HOSTS =10.27.0.224 # 配置openLDAP的IP或者域名,我的openLDAP是在本地10.27.0.224启动

2.3 docker-compose部署

openLDAP官方文档:https://github.com/osixia/docker-openldap/blob/stable/example/docker-compose.yml

k8s部署:https://github.com/osixia/docker-openldap

三、LDAP可视化配置

3.1 登录验证

http://10.27.0.224:8080/

LDAP认证服务器容器化部署(图1)

用户名:cn=admin,dc=ldap,dc=starcto,dc=com 密码:123456

LDAP认证服务器容器化部署(图2)

LDAP认证服务器容器化部署(图3)

3.2 新建组与用户

(1)创建新的条目

LDAP认证服务器容器化部署(图4)

LDAP认证服务器容器化部署(图5)

(2)创建一个组织单元,比如:创建一个技术部support

LDAP认证服务器容器化部署(图6)

LDAP认证服务器容器化部署(图7)

LDAP认证服务器容器化部署(图8)

(3)然后在support部门中创建组,或者直接创建用户。同样点击刚创建好的support部门的条目,点击create a child entry,选择Posix Group,创建一个IT组。

LDAP认证服务器容器化部署(图9)

LDAP认证服务器容器化部署(图10)

LDAP认证服务器容器化部署(图11)

LDAP认证服务器容器化部署(图12)

(4)在新建的组下添加用户,选中IT条目,创建子条目,选择User Account或Account,推荐使用User Account,因为User Account中包含了Account,还增加了更多的属性。

LDAP认证服务器容器化部署(图13)

LDAP认证服务器容器化部署(图14)

LDAP认证服务器容器化部署(图15)

LDAP认证服务器容器化部署(图16)

此时用户的 (DN)Distinguished Name: cn=star gao,cn=IT,ou=support,dc=ldap,dc=starcto,dc=com如果想使用uid来识别用户可以在界面中rename修改用户的dn。

(5)修改UID为ustar

LDAP认证服务器容器化部署(图17)

LDAP认证服务器容器化部署(图18)

LDAP认证服务器容器化部署(图19)

3.3 LDAP使用memberOf属性

(1)在一些组件的继承中需要用到memberOf属性去同步用户的一些角色信息,但是posixGroup组并没有提供这个属性,所以我们需要新建一个拥有groupOfUniqueNames的用户组条目。我们在support部门条目下创建一个拥有groupOfUniqueNames的用户组条目,第一步先选择创建子条目,第二部选择默认模板。

LDAP认证服务器容器化部署(图20)

LDAP认证服务器容器化部署(图20)

LDAP认证服务器容器化部署(图21)

LDAP认证服务器容器化部署(图22)

(2)rdn选择ou或者cn都可以(rdn:一般指dn逗号最左边的部分,如cn=ustar,cn=IT,ou=support,dc=starcto,dc=com中rdn为cn=ustar。它与RootDN不同,RootDN通常与RootPW同时出现,特指管理LDAP中信息的最高权限用户。)然后选择此组内包含的成员,点击这个搜索按钮,选择对应的人员,我们选择uid=ustar的用户。

LDAP认证服务器容器化部署(图23)

LDAP认证服务器容器化部署(图25)

LDAP认证服务器容器化部署(图26)

作者:UStarGao
链接:https://www.starcto.com/application_of_operational/238.html
来源:STARCTO
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处

UCloud云平台推荐


UCloud新用户专属注册连接

UCloud CDN超值特惠专场

UCloud全球云主机(UHost/VPS)大促页面

UCloud快杰云主机大促页面

文章页广告

随便看看

栏目底部广告
`