您好,命令行专家,我创建了一个这样的 ftp 用户:
ftpasswd --passwd --name webftp --uid 33 --home /var/www --shell /bin/false
我喜欢使用选项创建具有预设密码的相同用户--stdin
。如果我使用:
echo < passwd > | ftpasswd --stdin --passwd --name webftp --uid 33 --home /var/www --shell /bin/false
我收到一条消息,告诉我密码尚未设置。
有人看到错误了吗?
谢谢你!
答案1
我建议你使用:
passwd="your_password"
echo $passwd | ftpasswd --stdin --passwd --name webftp --uid 33 --home /var/www --shell /bin/false
或者
ftpasswd --stdin --passwd --name webftp --uid 33 --home /var/www --shell /bin/false < passwd.txt
哪里passwd.txt
是包含密码的文件。
这是因为:
[...] 该
--stdin
选项确实不是允许在命令行上将密码传递给脚本,但在 stdin 上。这是作为一项安全措施完成的:标准 Unixps
命令可用于显示系统上运行的所有进程,包括它们的命令行参数。这意味着任何用户都可以用来ps
查看提供给 的密码ftpasswd
,如果这些密码是通过命令行传递的。
更多关于: