你好命令行大师,我已经创建了一个这样的 ftp 用户:
ftpasswd --passwd --name webftp --uid 33 --home /var/www --shell /bin/false
Run Code Online (Sandbox Code Playgroud)
我喜欢做的是使用该--stdin
选项创建具有预设密码的相同用户。如果我使用:
echo < passwd > | ftpasswd --stdin --passwd --name webftp --uid 33 --home /var/www --shell /bin/false
Run Code Online (Sandbox Code Playgroud)
我收到一条消息,告诉我那里没有设置密码。
有没有人看到错误?
谢谢!
我建议你使用:
passwd="your_password"
echo $passwd | ftpasswd --stdin --passwd --name webftp --uid 33 --home /var/www --shell /bin/false
Run Code Online (Sandbox Code Playgroud)
或者
ftpasswd --stdin --passwd --name webftp --uid 33 --home /var/www --shell /bin/false < passwd.txt
Run Code Online (Sandbox Code Playgroud)
其中passwd.txt
是包含密码的文件。
这些是因为:
[...]的
--stdin
选项并没有让密码传递到命令行脚本,但在标准输入。这是作为一种安全措施完成的:标准 Unixps
命令可用于显示系统上运行的所有进程,包括它们的命令行参数。这意味着任何用户都可以ps
用来监视提供给的密码ftpasswd
,如果这些密码要在命令行上传递的话。
更多关于: