我有一台 Linux 服务器(Fedora 18,Linux 内核 3.6.10),上面运行着 VSFTP 和 Apache,我的 friend 有时会用它来托管文件。我正在尝试制作一个 PHP 表单,他们可以使用该表单更改密码,而无需使用 SSH 或其他方式登录到实际服务器。
我有一个表单要求您输入用户名、当前密码、新密码并重新输入新密码,但我不知道要调用什么来验证用户名/密码组合或实际更改密码.
我最近开始熟悉 Linux,但以前没有使用过 shell_exec。环顾互联网,听起来我需要解析/etc/shadow 来验证密码,这并不难,但我不确定在输入密码上使用什么加密来将其与影子相匹配。
提前致谢。
最佳答案
创建一个 shell 脚本来处理密码验证和更改,然后使用 PHP 调用该 shell 脚本。
密码以 md5sum 形式存储在/etc/shadow 中。您必须对条目进行 md5sum 并将其与/etc/shadow 中的相应条目进行比较以进行验证。
可以找到示例实现 here .
关于php - 使用 Web 表单 (PHP) 重置 Linux 密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17435286/