OpenLDAP 自助修改密码系统
一、创建docker-compose文件
root@xx:~# mkdir self-service-password
root@xx:~# cd self-service-password
root@xx:~/self-service-password# vim docker-compose.yml
version: '2'
services:
ssp-app:
image: tiredofit/self-service-password:latest #建议修改为指定的版本的镜像
container_name: ssp-app
volumes: # 挂载数据目录以及日志
- ./data/:/www/ssp
- ./logs/:/www/logs
ports:
- 80:80
environment:
- LDAP_SERVER=ldap://172.16.1.113:389 # ldap服务: ldap://ip:port
- LDAP_STARTTLS=false
- LDAP_BINDDN=cn=admin,dc=lixy,dc=com # 绑定的dn. 具体根据自己的实际修改(管理员dn)
- LDAP_BINDPASS=Root@123 # 上述cn=admin的密码
- LDAP_BASE_SEARCH=ou=Group,dc=lixy,dc=com
- LDAP_LOGIN_ATTRIBUTE=uid
- LDAP_FULLNAME_ATTRIBUTE=cn
# Active Directory mode
# true: use unicodePwd as password field
# false: LDAPv3 standard behavior
- ADMODE=false
# Force account unlock when password is changed
- AD_OPT_FORCE_UNLOCK=false
# Force user change password at next login
- AD_OPT_FORCE_PWD_CHANGE=false
# Allow user with expired password to change password
- AD_OPT_CHANGE_EXPIRED_PASSWORD=false
# Samba mode
# true: update sambaNTpassword and sambaPwdLastSet attributes too
# false: just update the password
- SAMBA_MODE=false
# Shadow options - require shadowAccount objectClass
# Update shadowLastChange
- SHADOW_OPT_UPDATE_SHADOWLASTCHANGE=false
# Hash mechanism for password:
# SSHA
# SHA
# SMD5
# MD5
# CRYPT
# clear (the default)
# auto (will check the hash of current password)
# This option is not used with ad_mode = true
- PASSWORD_HASH=MD5 # 密码hash类型
# Local password policy
# This is applied before directory password policy
# Minimal length
- PASSWORD_MIN_LENGTH=12 # 此处定义密码的组合
# Maximal length
- PASSWORD_MAX_LENGTH=30
# Minimal lower characters
- PASSWORD_MIN_LOWERCASE=2
# Minimal upper characters
- PASSWORD_MIN_UPPERCASE=2
# Minimal digit characters
- PASSWORD_MIN_DIGIT=2
# Minimal special characters
- PASSWORD_MIN_SPECIAL=2
# Dont reuse the same password as currently
- PASSWORD_NO_REUSE=true
# Definition of special characters
- PASSWORD_SPECIAL_CHARACTERS=^a-zA-Z0-9 # 定义特殊字符
# Forbidden characters
# Check that password is different than login
- PASSWORD_DIFFERENT_LOGIN=true
# Show policy constraints message:
# always
# never
# onerror
- PASSWORD_SHOW_POLICY=onerror # 何时显示密码策略信息
# Position of password policy constraints message:
# above - the form
# below - the form
- PASSWORD_SHOW_POLICY_POSITION=above
# Who changes the password?
# Also applicable for question/answer save
# user: the user itself
# manager: the above binddn
- WHO_CAN_CHANGE_PASSWORD=user # 指定谁来修改密码
## Questions/answers
# Use questions/answers?
# true (default)
# false
- QUESTIONS_ENABLED=false
## Mail
# LDAP mail attribute
- LDAP_MAIL_ATTRIBUTE=mail
# Who the email should come from
- MAIL_FROM=xxxx@163.com
- MAIL_FROM_NAME=LDAP认证中心
# Notify users anytime their password is changed
- NOTIFY_ON_CHANGE=true
# PHPMailer configuration (see https://github.com/PHPMailer/PHPMailer)
- SMTP_DEBUG=0
- SMTP_HOST=smtp.163.com # 定义邮件信息,用于发送邮件
- SMTP_AUTH_ON=true
- SMTP_USER=xxxx@163.com
- SMTP_PASS=aaaaaaaaaaaa # 这里是邮箱的授权码
- SMTP_PORT=465
- SMTP_SECURE_TYPE=ssl
- SMTP_AUTOTLS=false
## Tokens
# Use tokens?
# true
# false
- USE_TOKENS=true
# Crypt tokens?
# true
# false
- TOKEN_CRYPT=true
# Token lifetime in seconds
- TOKEN_LIFETIME=1800
## SMS
# Use sms (NOT WORKING YET)
- USE_SMS=false
# Reset URL (if behind a reverse proxy)
- IS_BEHIND_PROXY=true
# Display help messages
- SHOW_HELP=true
# Language
- LANG=en
# Debug mode
- DEBUG_MODE=false
# Encryption, decryption keyphrase
- SECRETEKEY=secretkey
## CAPTCHA
# Use Google reCAPTCHA (http://www.google.com/recaptcha)
- USE_RECAPTCHA=false
# Go on the site to get public and private key
- RECAPTCHA_PUB_KEY=akjsdnkajnd
- RECAPTCHA_PRIV_KEY=aksdjnakjdnsa
## Default action
# change
# sendtoken
# sendsms
- DEFAULT_ACTION=change
- BACKGROUND_IMAGE=images/bak.jpg # 自定义背景图片
- LOGO=images/logo.png # 自定义logo图片
root@xx:~/self-service-password# docker-compose up --build -d
二、报错信息处理
1、出现Parse error: syntax error, unexpected '""' (T_CONSTANT_ENCAPSED_STRING) in /www/ssp/conf/config.inc.php on line 103

处理方法:进入容器,查看配置文档103行信息
root@xx:~/self-service-password# docker exec -it ssp-app /bin/bash
[tiredofit/self-service-password:5.3.1 06:16:34 /] $ vim /www/ssp/conf/config.inc.php

出现两个双引号,临时解决方法就是直接在容器中修改配置文件,删除一对双引号,永久解决方案,在docker-comppse.yml文件中删除双引号

然后重新加载docker-compse文件
root@xx:~/self-service-password# docker-compose up --build -d

2、出现Notice: Undefined index: HTTP_X_FORWARDED_PROTO in /www/ssp/conf/config.inc.php on line 244
处理方法:进入容器,查看配置文档244行信息
root@xx:~/self-service-password# docker exec -it ssp-app /bin/bash
[tiredofit/self-service-password:5.3.1 06:22:13 /] $ vim /www/ssp/conf/config.inc.php
注释:244行
OpenLDAP 自助修改密码系统的更多相关文章
- 搭建ldap自助修改密码系统--Self Service Password
系统版本:centos6 Self Service Password版本:1.1 服务安装: 安装依赖:yum install php70-ldap.x86_64 -y (版本尽量大于5.3,否则会提 ...
- 在Linux上实现SVN用户密码自助修改
1.首先本文是在一篇百度经验的基础上修改而成,将网址记录上,以示尊重. https://jingyan.baidu.com/article/48b37f8dd4bbb31a646488c2.html ...
- DJANGO里让用户自助修改邮箱地址
因为在部署过程中会涉及用户邮件发送,如果有的同事不愿意收到太多邮件,则可以自己定义为不存在的邮箱. 我们在注册的时候,也不会写用户邮箱地址,那么他们也可以在这里自己更改. changeemail.ht ...
- DJANGO里让用户自助修改密码
参考了网上的实现,最终实现的各代码如下: changepwd.html模板文件: {% extends "Prism/index.html" %} {% load staticfi ...
- OpenLDAP + phpLDAPadmin
一.基础设置 1.1 环境说明 Centos 7.5 openldap 1.2 关闭防火墙和selinux setenforce sed -i 's/SELINUX=enforcing/SELINUX ...
- OpenLDAP配置信息记录
随着各种研发工具使用越来越多,单独为每个工具维护一个账号系统的开销越来越大,而且作为用户多个账号密码使用也越来越不方便.所以需要做一个统一账号登陆. 查询了多个方法,又因为之前用过LDAP,所以选择了 ...
- OpenLDAP 搭建入门
系统环境:CentOS 7 slapd版本:2.4.44 简介 OpenLDAP是一款轻量级目录访问协议,基于X.500标准的,支持TCP/IP协议,用于实现账号集中管理的开源软件,提供一整套安全的账 ...
- Freeradius+Cisco2500AC+OpenLdap认证
为了将公司内部认证统一化,启用了802.1x认证,认证流程如下: UserClient->AC控制器->Freeradius->OpenLdap 其中: Freeradius做认证使 ...
- Centos6 yum安装openldap+phpldapadmin+TLS+双主配置
原文地址:http://54im.com/openldap/centos-6-yum-install-openldap-phpldapadmin-tls-%E5%8F%8C%E4%B8%BB%E9%8 ...
- [系统集成] OpenLDAP使用AD密码
关于OpenLDAP和AD帐号的整合,网上有大量的文档,绝大多数都不符合我们的需求,下面的方案是我经过调研.测试.修改.最终采用的. . 需求概述 公司网络中有两种帐号:OpenLDAP帐号和AD帐号 ...
随机推荐
- 文心一言 VS 讯飞星火 VS chatgpt (26)-- 算法导论5.1 1题
一.证明:假设在过程 HIRE-ASSISTANT 的第 4 行中,我们总能决定哪一个应聘者最佳.则意味着我们知道应聘者排名的全部次序. 文心一言: 证明: 假设在过程 HIRE-ASSISTANT ...
- 小技巧 | 使用 mv 重命名文件无需两次键入文件名称
使用过 Bash 的童鞋都知道 mv 是一个可以用于文件改名的命令,而且使用这个命令修改文件名时我们需要输入两次文件名(旧名字和新名字). 如果有一种情况是只需要你改动文件名中的一个字母,而文件名又特 ...
- 24 式加速你的 Python
一,分析代码运行时间 第1式,测算代码运行时间 平凡方法 快捷方法(jupyter环境) 第2式,测算代码多次运行平均时间 平凡方法 快捷方法(jupyter环境) 第3式,按调用函数分析代码运行时间 ...
- 编码器 | 基于 Transformers 的编码器-解码器模型
基于 transformer 的编码器-解码器模型是 表征学习 和 模型架构 这两个领域多年研究成果的结晶.本文简要介绍了神经编码器-解码器模型的历史,更多背景知识,建议读者阅读由 Sebastion ...
- P1585 魔法阵 题解
题意: 题目传送门 可以看做一个人手中有一些宝石,并将宝石分成两组,一组的编号为 1 至 n×m/2,二组为 n×m/2+1 至 n×m+1.当两组两个宝石编号相差为 n×m/2 为一对.现在要遍历一 ...
- 不同大小的缓冲区对 MD5 计算速度的影响
最*需要在计算大文件的 MD5 值时显示进度,于是我写了如下的代码: public long Length {get; private set; } public long Position { ge ...
- 一张图快速了解 Istio 的 EnvoyFilter
EnvoyFilter简介 EnvoyFilter 提供了一种机制来定制 Istio Pilot 生成的 Envoy 配置.使用 EnvoyFilter 修改某些字段的值,添加特定的过滤器,甚至添加全 ...
- 实时光线追踪(3)Ray Casting
目录 硬件光追(Hardware Ray Tracing) 加速结构(Acceleration Structure,AS) AS 策略 Ray Tracing Pipeline Ray Generat ...
- spark连接mysql数据库
1.安装启动检查Mysql服务.netstat -tunlp (3306) 2.spark 连接mysql驱动程序. –cp /usr/local/hive/lib/mysql-connector-j ...
- GPT3的应用领域:机器翻译、文本生成、文本摘要
目录 1. 引言 2. 技术原理及概念 3. 实现步骤与流程 3.1 准备工作:环境配置与依赖安装 3.2 核心模块实现 3.3 集成与测试 4. 应用示例与代码实现讲解 4.1 机器翻译 4.2 文 ...