Windows Active Directory + self-service-password(SSP)域控密码自助修改方案
环境准备
- CentOS7.8(优化过Selinux和Firewalld)
- php-7.3.33-14.el7.remi.x86_64
- self-service-password-1.5.4
yum install -y epel-release yum-utils
yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum-config-manager --enable remi-php73 #安装self-service-password的php版本要求>=7.3
yum install -y php
php -v #版本 7.3.33 (cli)
安装 self-service-password
SSP版本列表:https://ltb-project.org/rpm/7Server/noarch/
cat>/etc/yum.repos.d/ltb-project.repo <<EOF
[ltb-project-noarch]
name=LTB project packages (noarch)
baseurl=https://ltb-project.org/rpm/7Server/noarch
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-LTB-project
EOF
rpm --import https://ltb-project.org/documentation/_static/RPM-GPG-KEY-LTB-project
yum install self-service-password-1.5.4 #低版本SSP适配低版本php
systemctl enable httpd
修改SSP配置
rpm -ql self-service-password|grep conf #查看配置文件
cd /usr/share/self-service-password/conf
cp config.inc.php config.inc.php-bak
修改 config.inc.php
$ldap_url = "ldaps://dc01.xxxyyyzzz.com";
$ldap_binddn = "manager@xxxyyyzzz.com";
$ldap_bindpw = 'XXXXXXXXXXXXXXXXX';
$ldap_base = "dc=xxxyyyzzz,dc=com";
$ldap_filter = "(&(objectClass=user)($ldap_login_attribute={login})(!(userAccountControl:1.2.840.113556.1.4.803:=2)))";
$ad_options['change_expired_password'] = true;
$who_change_password = "manager";
$keyphrase = "abcdefg1234567";
$ad_mode = true;
$ldap_login_attribute = "sAMAccountName";
注意:manager账号用来执行密码修改操作,需要有对应权限

从AD域控服务器导出根证书
- 添加管理单元
win+R输入 mmc ,打开证书控制台。


- 导出CA证书
在【受信任的根证书颁发机构】中的【证书】文件夹中,找到站点域名相应的CA证书
右键>>>所有任务>>>导出(格式选择Base64编码格式)

将根证书上传到SSP服务器
假设导出CA证书文件名:AD_root_ca.cer
- 【推荐】方法1:
mv AD_root_ca.cer /etc/pki/ca-trust/source/anchors/
update-ca-trust extract
- 方法2:
mv AD_root_ca.cer /etc/openldap/certs/AD_root_ca.cer
修改/etc/openldap/ldap.conf
TLS_CACERT /etc/openldap/certs/AD_root_ca.cer
测试验证结果
浏览器打开 http://SSP服务器IP/
输入您的旧密码并设置新密码:

附:命令行验证工具
验证CA证书:
openssl x509 -in /etc/openldap/certs/AD_root_ca.cer -text -noout
验证用户密码:
yum install openldap-clients
ldapsearch -x -H ldap://dc01.xxxyyyzzz.com:389 -D "cn=manager,dc=xxxyyyzzz,dc=com" -b "dc=xxxyyyzzz,dc=com" -W "CN=aaa"
================# 水平有限 欢迎指正 #=================

浙公网安备 33010602011771号