docker下快速部署openldap与self-service-password
Posted 水中加点糖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker下快速部署openldap与self-service-password相关的知识,希望对你有一定的参考价值。
通过上一篇《docker下快速部署openldap与PHPLdapAdmin》的操作,完成了OpenLDAP和管理控制台的搭建。
接下来便可以让其用起来了。
admin登录并新增测试用户
首先是使用phpLdapAdmin完成对用户的添加。
使用admin登录系统后,主要通过以下3个步骤完成用户的添加:
- 选中最顶级节点,添加一个OU(Organisational Unit)。–>engineer
- 选中添加好的OU,添加一个PG(Posix Group)。–>java
- 选中添加好的PG,添加一个UA(User Account)。–>puhaiyang
如上图所示,最终便完成了一个用户全流程的创建。
其中包括了很多系统接入时最重要的3个信息(用户名、密码、昵称),其对应关系如下:
- 用户名 ------- [User Name]
- 密 码 ------- [Password]
- 显示名称 ------- [cn]
需要注意的事,默认在添加用户时,如果需要Email、Telephone Number、displayName等信息,需要在添加完用户后,点击Add new attribute进行添加
其中以上面的例子为例,所创建的用户的DN(Distinguished Name)则为:
cn=蒲海洋,cn=java,ou=engineer,dc=haiyang,dc=com
测试用户登录并修改密码
在用户添加完成后,就直接用PHPLdapAdmin测试一下用户的登录与密码修改功能。
打开PHPLdapAdmin的登录界面,在Login DN中输入用户所对应的DN。
并输入密码,之后点击认证。如果密码认证成功,则会进入此用户的信息页面。
从界面里可以看到,由于登录的DN是用户级别的,它所可以看到的信息也就只能看到自己的信息了。
再来试下修改密码。点击用户的CN,在弹出的属性中修改密码,点击提交即可。
退出后,再用原密码登录试一下:
再次登录就会提示认证失败了。
Error: Invalid credentials (49) for user
Failed to Authenticate to server
Invalid Username or Password.
self server password部署
通过上面的操作,咱们学会了如何使用phpLDAPadmin创建用户及个人信息的维护。
但在操作过程中是否跟我有一样的感觉,就上去修改个密码,那操作感觉还是有点麻烦的。
如果不是专业人士,可能还操作不来,搞不说还要被骂。
所以为了简化操作,最好还是部署一个专门修改密码的程序。
为了解决这一问题,强大的self server password便横空出世了。
其界面整洁简单,可以通过配置还可实现邮件/短信通知等功能,YYDS。
其源码地址为:https://github.com/ltb-project/self-service-password
如此强大,咱们也必须跟着部署一个!
根据当前官方的文档(https://self-service-password.readthedocs.io/en/latest/),可以看出,其提供了多种安装方式。
我们这里仍然选择docker方式来进行部署,并使用其当前最新版的docker镜像。
ltbproject/self-service-password:1.5
在docker宿主机上先创建一个配置文件.
mkdir -p /opt/ssp
cd /opt/ssp
vim ssp.conf.php
在ssp.conf.php其中输入如下配置选项:
<?php // My SSP configuration
$keyphrase = "mysecret";
$debug = false;
$use_captcha = true;
$ldap_url = "ldap://192.168.1.7:389";
$ldap_binddn = "CN=admin,DC=haiyang,DC=com";
$ldap_bindpw = "123456";
$ldap_base = "ou=engineer,dc=haiyang,dc=com";
?>
之后在当前目录运行docker命令启动self service password
docker run -p 9080:80 \\
--restart=always \\
--name selfServicePassword \\
-v $PWD/ssp.conf.php:/var/www/conf/config.inc.local.php \\
-itd docker.io/ltbproject/self-service-password:1.5
之后访问docker映射出来的链接:
http://ip:9080/
在本测试例中,这里的链接则为:http://192.168.1.7:9080/
试一下,完美~
修改成功nice~
如果觉得界面想再DIY一下,强大的self service password项目也是支持的。
更多配置细节可直接参考其官方的文档。
https://self-service-password.readthedocs.io/en/latest/
以上是关于docker下快速部署openldap与self-service-password的主要内容,如果未能解决你的问题,请参考以下文章
docker下快速部署openldap与self-service-password
docker下快速部署openldap与PHPLdapAdmin
docker下快速部署openldap与PHPLdapAdmin