NAME
ftpasswd - manipulates ProFTPD authentication files
SYNOPSIS
ftpasswd --help|-h|--version
ftpasswd --hash [ --des|--md5 ] [ --stdin ] [ --use-cracklib[=path] ]
ftpasswd --passwd [ -F|--force ] [ --file=filename ] [--gecos=string ]
[ --gid=gid ] [ --des | --md5 ] [ --not-system-password ]
[ --stdin ] [ --use-cracklib[=path] ] --home=path
ftpasswd --group [ -F|--force ] [ --enable-group-passwd ]
[ --file=filename ] [ -m|--member ] [ --des|--md5 ]
[ --stdin ] [ --use-cracklib[=path] ] --gid=gid
ftpasswd --passwd --change-password --name=username
DESCRIPTION
ftpasswd is a Perl script which can be used to manipulate the password
and group files suitable for use with ProFTPD AuthUserFile and
AuthGroupFile configuration directives. The idea is somewhat similar
to Apache’s htpasswd program.
Required options are --passwd, --group, or --hash. These specify
whether ftpasswd is to operate on a passwd(5) format file, on a
group(5) format file, or simply to generate a password hash,
respectively.
If used with --passwd, ftpasswd creates a file in the passwd(5) format,
suitable for use with proftpd’s AuthUserFile configuration directive.
You will be prompted for the password to use of the user, which will be
encrypted, and written out as the encrypted string. By default, using
--passwd will write output to "./ftpd.passwd",
If used with --hash, ftpasswd generates a hash of a password, as would
appear in an AuthUserFile. The hash is written to standard out. This
hash is suitable for use with proftpd’s UserPassword directive.
If used with --group, ftpasswd creates a file in the group(5) format,
suitable for use with proftpd’s AuthGroupFile configuration directive.
By default, using --group will write output to "./ftpd.group".
OPTIONS
-F, --force
If the password or group file be used already exists, delete it
and write a new one.
--file=filename
Write output to specified file (password or group files), rather
than default one.
--gecos=string
Descriptive string for the given user (usually the user’s full
name).
--gid=gid
Set primary group ID for this user (optional, will default to
given --uid value if absent) when --passwd is specified.
--uid=uid
numerical group ID.
-h, --help, --version
Show usage and version of the program.
--home=path
Set the home directory for the user (required).
--des, --md5
Use the DES or MD5 algorithm for encrypting passwords. The
latter is the default.
--name=username, --name=groupname
Name of the user account or group (required). If the name does
not exist in the specified output-file, an entry will be created
for it. Otherwise, the given fields will be updated.
--shell=path
Shell for the user (required). Recommended: /bin/false
--change-password
Update only the password field for a user. This option requires
that the --name option be used, but no others. This also
double-checks the given password against the user’s current
password in the existing passwd file, and requests that a new
password be given if the entered password is the same as the
current password.
--not-system-password
Double-checks the given password against the system password for
the user, and requests that a new password be given if the
entered password is the same as the system password. This helps
to enforce different passwords for different types of access.
--stdin
Read the password directly from standard in rather than
prompting for it. This is useful for writing scripts that
automate use of ftpasswd.
--use-cracklib[=path]
Causes ftpasswd to use Alec Muffet’s cracklib routines in order
to determine and prevent the use of bad or weak passwords. The
optional path to this option specifies the path to the
dictionary files to use -- default path is
/usr/lib/cracklib_dict. This requires the Perl Crypt::Cracklib
module to be installed on your system.
--enable-group-passwd
Prompt for a group password. This is disabled by default, as
group passwords are not usually a good idea at all.
-m username, --member=username
user to be a member of the group. This argument may be used
This argument may be used multiple times to specify the full
list of users to be members of this group.
BUGS
No known bugs at this time. If you discover any bugs, please contact
the author.
AUTHOR
This program has been written by TJ Saunders <tj@castaglia.org> as a
contributed software for ProFTPD.
SEE ALSO
proftpd(8), passwd(5), group(5), ftpusers(8), ftpstats(8),
proftpd.conf(5)
CREDITS
This manual page was written by Francesco Paolo Lovergine
<frankie@debian.org> for the Debian GNU/Linux system (but may be used
by others).