Eu sugiro que você use:
passwd="your_password"
echo $passwd | ftpasswd --stdin --passwd --name webftp --uid 33 --home /var/www --shell /bin/false
ou
ftpasswd --stdin --passwd --name webftp --uid 33 --home /var/www --shell /bin/false < passwd.txt
em que passwd.txt é um arquivo que contém a senha.
Isso porque:
[...] a opção
--stdinnão permite que as senhas sejam passadas para o script na linha de comando, mas no stdin. Isso é feito como uma medida de segurança: o comando padrão Unixpspode ser usado para mostrar todos os processos em execução em um sistema, incluindo seus parâmetros de linha de comando. Isso significa que qualquer usuário poderia usarpspara observar as senhas fornecidas aftpasswd, se essas senhas fossem passadas na linha de comando .
Mais sobre:
- link
- link