这是我编写的用于为新用户创建和分配密码的脚本。
$ssh->exec('useradd web3 -s /bin/false -d /var/www/web1 -g ftp-users');
$ssh->enablePTY();
$ssh->exec('passwd web3');
$ssh->read('Geben Sie ein neues UNIX-Passwort ein:');
$ssh->write("web3\n");
$ssh->read('Geben Sie das neue UNIX-Passwort erneut ein:');
$ssh->write("web3\n");
我尝试了没有enablePTY,所以代替exec有写功能,但它仍然无法工作,用户创建第一个exec行正在工作,但没有更改用户web3的密码
答案 0 :(得分:0)
也许在最后$ssh->read('passwd: password updated successfully')
之后尝试write()
。在我的测试中,似乎在输入密码确认和SSH会话关闭之间需要稍微延迟。如果您在最后exit
之后write
进行{{1}}而无需等待至少一点时间,则密码更改将不会“保存”