你好,命令行专家,我创建了一个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
我收到一条消息,告诉我那里没有设置密码。
有人看到错误了吗?
谢谢!
发布于 2013-09-03 17:06:35
我建议你使用:
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
的密码。
更多关于:
https://askubuntu.com/questions/339623
复制相似问题