搭建过程是按大佬Self Service Password部署_打攻人的博客-优快云博客的操作手册来的。大佬的搭建过程写的也很详细,但是在搭建中也遇到了几个问题,记录下来:
1.按大佬的手册部署完成后,浏览器打开地址报错500,看了日志后发现,PHP Warning: require_once(/usr/share/php/Smarty/Smarty.class.php): failed to open stream: No such file or directory in /usr/share/self-service-password/htdocs/index.php on line 179,打开目录发现没有Smarty这个文件这是由于缺少php-smarty插件引起的,yum install php-smarty 安装完成,报错消失。
2.解决上面错误后发现新的错误PHP Fatal error: Uncaught --> Smarty: unable to write file /var/cache/self-service-password/templates_c/wrt6463f2007b7dc3_77173179 <-- \n thrown in /usr/share/php/Smarty/sysplugins/smarty_internal_runtime_writefile.php on line 60 这是由于templates-c这个文件夹没有权限引起,权限改成777,问题解决。
3.上述两个问题解决后就能成功进入密码修改界面,但是当我点击修改密码后,发现还是有报错
PHP Warning: ldap_bind(): Unable to bind to server: Can't contact LDAP server in /usr/share/self-service-password/htdocs/change.php on line 82,
这个问题应该时无法与ad域认证引起的,查了很多资料,使用工具ldapadmin测试输入的信息是正确的,使用opensl测试ca证书也是正确的,后来发现selinux没有关闭,关闭selinux后可以正常的修改密码。
4.修改密码没问题后,发现通过邮箱修改密码还是报错,PHP Warning: session_start(): open(/var/lib/php/session/sess_65d9a31df83f1daa4f29d59a9af151a3, O_RDWR) failed: Permission denied (13) in /usr/share/self-s报错原因是session文件夹没有权限,调整权限777,问题解决可以通过邮件重置密码。
因为不懂php所以这些问题处理的比较累人,记录一下。