## NAME

mkpasswd - generate new password, optionally apply it to a user

## SYNOPSIS

mkpasswd [ args ] [ user ]

## INTRODUCTION

mkpasswd generates passwords and can apply them automatically to users. mkpasswd is based on the code from Chapter 23 of the O'Reilly book "Exploring Expect".

## USAGE

With no arguments, mkpasswd returns a new password.

mkpasswd

With a user name, mkpasswd assigns a new password to the user.

mkpasswd don

The passwords are randomly generated according to the flags below.

## FLAGS

The -l flag defines the length of the password. The default is 9. The following example creates a 20 character password.

mkpasswd -l 20

The -d flag defines the minimum number of digits that must be in the password. The default is 2. The following example creates a password with at least 3 digits.

mkpasswd -d 3

The -c flag defines the minimum number of lowercase alphabetic characters that must be in the password. The default is 2.

The -C flag defines the minimum number of uppercase alphabetic characters that must be in the password. The default is 2.

The -s flag defines the minimum number of special characters that must be in the password. The default is 1.

The -p flag names a program to set the password. By default, /etc/yppasswd is used if present, otherwise /bin/passwd is used.

The -2 flag causes characters to be chosen so that they alternate between right and left hands (qwerty-style), making it harder for anyone watching passwords being entered. This can also make it easier for a password-guessing program.

The -v flag causes the password-setting interaction to be visible. By default, it is suppressed.

## EXAMPLE

The following example creates a 15-character password that contains at least 3 digits and 5 uppercase characters.

mkpasswd -l 15 -d 3 -C 5

## SEE ALSO

"Exploring Expect: A Tcl-Based Toolkit for Automating Interactive Programs" by Don Libes, O'Reilly and Associates, January 1995.

## AUTHOR

Don Libes, National Institute of Standards and Technology

mkpasswd is in the public domain. NIST and I would appreciate credit if this program or parts of it are used.