我需要能够通过网页(在受控环境中)更改用户的密码。
因此,为此,我使用以下代码:
<?php
$output = shell_exec("sudo -u dummy passwd testUser testUserPassword");
$output2 = shell_exec("dummyPassword");
echo $output;
echo $output2;
echo "done";
?>
我的问题是该脚本没有更改用户“testUser”的密码。
我究竟做错了什么?
Thanks
另一种选择是使用一个 shell 脚本,比如名为 passwd_change.sh 的地方,如下所示:
#!/usr/bin/expect -f
set username [lindex $argv 0]
set password [lindex $argv 1]
spawn passwd $username
expect "(current) UNIX password: "
send "$password\r"
expect "Enter new UNIX password: "
send "$password\r"
expect "Retype new UNIX password: "
send "$password\r"
expect eof
然后在你的 php 代码中执行以下操作:
<?php
shell_exec("sudo -u root /path/to/passwd_change.sh testUser testUserPass");
?>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)