一、创建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 自助修改密码系统的更多相关文章

  1. 搭建ldap自助修改密码系统--Self Service Password

    系统版本:centos6 Self Service Password版本:1.1 服务安装: 安装依赖:yum install php70-ldap.x86_64 -y (版本尽量大于5.3,否则会提 ...

  2. 在Linux上实现SVN用户密码自助修改

    1.首先本文是在一篇百度经验的基础上修改而成,将网址记录上,以示尊重. https://jingyan.baidu.com/article/48b37f8dd4bbb31a646488c2.html ...

  3. DJANGO里让用户自助修改邮箱地址

    因为在部署过程中会涉及用户邮件发送,如果有的同事不愿意收到太多邮件,则可以自己定义为不存在的邮箱. 我们在注册的时候,也不会写用户邮箱地址,那么他们也可以在这里自己更改. changeemail.ht ...

  4. DJANGO里让用户自助修改密码

    参考了网上的实现,最终实现的各代码如下: changepwd.html模板文件: {% extends "Prism/index.html" %} {% load staticfi ...

  5. OpenLDAP + phpLDAPadmin

    一.基础设置 1.1 环境说明 Centos 7.5 openldap 1.2 关闭防火墙和selinux setenforce sed -i 's/SELINUX=enforcing/SELINUX ...

  6. OpenLDAP配置信息记录

    随着各种研发工具使用越来越多,单独为每个工具维护一个账号系统的开销越来越大,而且作为用户多个账号密码使用也越来越不方便.所以需要做一个统一账号登陆. 查询了多个方法,又因为之前用过LDAP,所以选择了 ...

  7. OpenLDAP 搭建入门

    系统环境:CentOS 7 slapd版本:2.4.44 简介 OpenLDAP是一款轻量级目录访问协议,基于X.500标准的,支持TCP/IP协议,用于实现账号集中管理的开源软件,提供一整套安全的账 ...

  8. Freeradius+Cisco2500AC+OpenLdap认证

    为了将公司内部认证统一化,启用了802.1x认证,认证流程如下: UserClient->AC控制器->Freeradius->OpenLdap 其中: Freeradius做认证使 ...

  9. Centos6 yum安装openldap+phpldapadmin+TLS+双主配置

    原文地址:http://54im.com/openldap/centos-6-yum-install-openldap-phpldapadmin-tls-%E5%8F%8C%E4%B8%BB%E9%8 ...

  10. [系统集成] OpenLDAP使用AD密码

    关于OpenLDAP和AD帐号的整合,网上有大量的文档,绝大多数都不符合我们的需求,下面的方案是我经过调研.测试.修改.最终采用的. . 需求概述 公司网络中有两种帐号:OpenLDAP帐号和AD帐号 ...

随机推荐

  1. 【GiraKoo】Visual Studio开启Asan提示“LINK : fatal error LNK1104: cannot open file 'LIBVCASAN.lib'”

    [解决]Visual Studio开启Asan提示"LINK fatal error LNK1104 cannot open file 'LIBVCASAN.lib'" 环境 Vi ...

  2. Velocity 不用愁!Velocity 系统的前端工程化之路

    Velocity是一个基于Java的Web页面模版引擎.十多年前,Velocity将Java代码从Web页面中分离出来,使得开发者能够并行网页开发和Java开发.随着十年前后端分离的浪潮涌动,回首再面 ...

  3. Python socket记录

    目录 网络编程 1.基本概念 Python中的网络编程 网络编程 1.基本概念 1.什么是客户端/服务器架构? 服务器就是一系列硬件或软件,为一个或多个客户端(服务的用户)提供所需的"服务& ...

  4. 【python基础】循环语句-break关键字

    1.break关键字 break关键字,其作用是在循环中的代码块遇到此关键字,立刻跳出整个循环,执行循环外的下一条语句. 其在while和for循环中的作用示意图如下: 1.1break在while循 ...

  5. 【python基础】input函数

    1.初识input函数 大多数程序都旨在解决最终用户的问题,为此通常需要从用户那里获取一些信息.例如假设有人要判断自己是否到了投票的年龄,要编写回答这个问题的程序,就需要知道用户的年龄,这样才能给出答 ...

  6. k8s+log-pilot日志收集

    github 地址:https://github.com/AliyunContainerService/log-pilot 介绍 log-pilot是一个很棒的 docker 日志工具.可以从dock ...

  7. Windows11右键菜单修改为Win10模式的方法

    Windows11右键菜单修改为Win10模式的方法 自述: 更新win11后看着鼠标右键的菜单有些不太舒服,索性就改回了win10的右键菜单的样式 , 下面开始进行操作 第一步 首先以管理员方式打开 ...

  8. 5 大数据实战-hive实战分析

    1 内部表 Show databses; Use hive_data; 1.1 创建内部表 CREATE TABLE SOGOUQ2(DT STRING,WEBSESSION STRING,WORD ...

  9. SpringBoot对接阿里云OSS上传文件以及回调(有坑)

    前言 今天在对接阿里云OSS对象存储, 把这过程记录下来 链接 阿里云的内容很多,文档是真的难找又难懂 本文主要是用的PostObject API 加上 Callback参数 PostObject - ...

  10. centos系统给centos-root硬盘扩容

    此服务器为虚拟机,通过lsblk命令查看当前虚拟机硬盘: 其中一块硬盘大小为100G,已作为系统盘使用,但是只分配了15G的空间使用,需要对剩余空间进行分区,并扩容到对应centos卷组的root目录 ...