diff options
Diffstat (limited to 'man/man1/passwd.1')
-rw-r--r-- | man/man1/passwd.1 | 367 |
1 files changed, 367 insertions, 0 deletions
diff --git a/man/man1/passwd.1 b/man/man1/passwd.1 new file mode 100644 index 0000000..cc1a46e --- /dev/null +++ b/man/man1/passwd.1 @@ -0,0 +1,367 @@ +'\" t +.\" Title: passwd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/> +.\" Date: 11/08/2022 +.\" Manual: User Commands +.\" Source: shadow-utils 4.13 +.\" Language: English +.\" +.TH "PASSWD" "1" "11/08/2022" "shadow\-utils 4\&.13" "User Commands" +.\" ----------------------------------------------------------------- +.\" * Define some portability stuff +.\" ----------------------------------------------------------------- +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.\" http://bugs.debian.org/507673 +.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html +.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" ----------------------------------------------------------------- +.\" * set default formatting +.\" ----------------------------------------------------------------- +.\" disable hyphenation +.nh +.\" disable justification (adjust text to left margin only) +.ad l +.\" ----------------------------------------------------------------- +.\" * MAIN CONTENT STARTS HERE * +.\" ----------------------------------------------------------------- +.SH "NAME" +passwd \- change user password +.SH "SYNOPSIS" +.HP \w'\fBpasswd\fR\ 'u +\fBpasswd\fR [\fIoptions\fR] [\fILOGIN\fR] +.SH "DESCRIPTION" +.PP +The +\fBpasswd\fR +command changes passwords for user accounts\&. A normal user may only change the password for their own account, while the superuser may change the password for any account\&. +\fBpasswd\fR +also changes the account or associated password validity period\&. +.SS "Password Changes" +.PP +The user is first prompted for their old password, if one is present\&. This password is then encrypted and compared against the stored password\&. The user has only one chance to enter the correct password\&. The superuser is permitted to bypass this step so that forgotten passwords may be changed\&. +.PP +After the password has been entered, password aging information is checked to see if the user is permitted to change the password at this time\&. If not, +\fBpasswd\fR +refuses to change the password and exits\&. +.PP +The user is then prompted twice for a replacement password\&. The second entry is compared against the first and both are required to match in order for the password to be changed\&. +.PP +Then, the password is tested for complexity\&. As a general guideline, passwords should consist of 6 to 8 characters including one or more characters from each of the following sets: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +lower case alphabetics +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +digits 0 thru 9 +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +punctuation marks +.RE +.PP +Care must be taken not to include the system default erase or kill characters\&. +\fBpasswd\fR +will reject any password which is not suitably complex\&. +.SS "Hints for user passwords" +.PP +The security of a password depends upon the strength of the encryption algorithm and the size of the key space\&. The legacy +\fIUNIX\fR +System encryption method is based on the NBS DES algorithm\&. More recent methods are now recommended (see +\fBENCRYPT_METHOD\fR)\&. The size of the key space depends upon the randomness of the password which is selected\&. +.PP +Compromises in password security normally result from careless password selection or handling\&. For this reason, you should not select a password which appears in a dictionary or which must be written down\&. The password should also not be a proper name, your license number, birth date, or street address\&. Any of these may be used as guesses to violate system security\&. +.PP +You can find advice on how to choose a strong password on http://en\&.wikipedia\&.org/wiki/Password_strength +.SH "OPTIONS" +.PP +The options which apply to the +\fBpasswd\fR +command are: +.PP +\fB\-a\fR, \fB\-\-all\fR +.RS 4 +This option can be used only with +\fB\-S\fR +and causes show status for all users\&. +.RE +.PP +\fB\-d\fR, \fB\-\-delete\fR +.RS 4 +Delete a user\*(Aqs password (make it empty)\&. This is a quick way to disable a password for an account\&. It will set the named account passwordless\&. +.RE +.PP +\fB\-e\fR, \fB\-\-expire\fR +.RS 4 +Immediately expire an account\*(Aqs password\&. This in effect can force a user to change their password at the user\*(Aqs next login\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Display help message and exit\&. +.RE +.PP +\fB\-i\fR, \fB\-\-inactive\fR\ \&\fIINACTIVE\fR +.RS 4 +This option is used to disable an account after the password has been expired for a number of days\&. After a user account has had an expired password for +\fIINACTIVE\fR +days, the user may no longer sign on to the account\&. +.RE +.PP +\fB\-k\fR, \fB\-\-keep\-tokens\fR +.RS 4 +Indicate password change should be performed only for expired authentication tokens (passwords)\&. The user wishes to keep their non\-expired tokens as before\&. +.RE +.PP +\fB\-l\fR, \fB\-\-lock\fR +.RS 4 +Lock the password of the named account\&. This option disables a password by changing it to a value which matches no possible encrypted value (it adds a \(aa!\(aa at the beginning of the password)\&. +.sp +Note that this does not disable the account\&. The user may still be able to login using another authentication token (e\&.g\&. an SSH key)\&. To disable the account, administrators should use +\fBusermod \-\-expiredate 1\fR +(this set the account\*(Aqs expire date to Jan 2, 1970)\&. +.sp +Users with a locked password are not allowed to change their password\&. +.RE +.PP +\fB\-n\fR, \fB\-\-mindays\fR\ \&\fIMIN_DAYS\fR +.RS 4 +Set the minimum number of days between password changes to +\fIMIN_DAYS\fR\&. A value of zero for this field indicates that the user may change their password at any time\&. +.RE +.PP +\fB\-q\fR, \fB\-\-quiet\fR +.RS 4 +Quiet mode\&. +.RE +.PP +\fB\-r\fR, \fB\-\-repository\fR\ \&\fIREPOSITORY\fR +.RS 4 +change password in +\fIREPOSITORY\fR +repository +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. Only absolute paths are supported\&. +.RE +.PP +\fB\-S\fR, \fB\-\-status\fR +.RS 4 +Display account status information\&. The status information consists of 7 fields\&. The first field is the user\*(Aqs login name\&. The second field indicates if the user account has a locked password (L), has no password (NP), or has a usable password (P)\&. The third field gives the date of the last password change\&. The next four fields are the minimum age, maximum age, warning period, and inactivity period for the password\&. These ages are expressed in days\&. +.RE +.PP +\fB\-u\fR, \fB\-\-unlock\fR +.RS 4 +Unlock the password of the named account\&. This option re\-enables a password by changing the password back to its previous value (to the value before using the +\fB\-l\fR +option)\&. +.RE +.PP +\fB\-w\fR, \fB\-\-warndays\fR\ \&\fIWARN_DAYS\fR +.RS 4 +Set the number of days of warning before a password change is required\&. The +\fIWARN_DAYS\fR +option is the number of days prior to the password expiring that a user will be warned that their password is about to expire\&. +.RE +.PP +\fB\-x\fR, \fB\-\-maxdays\fR\ \&\fIMAX_DAYS\fR +.RS 4 +Set the maximum number of days a password remains valid\&. After +\fIMAX_DAYS\fR, the password is required to be changed\&. +.sp +Passing the number +\fI\-1\fR +as +\fIMAX_DAYS\fR +will remove checking a password\*(Aqs validity\&. +.RE +.SH "CAVEATS" +.PP +Password complexity checking may vary from site to site\&. The user is urged to select a password as complex as he or she feels comfortable with\&. +.PP +Users may not be able to change their password on a system if NIS is enabled and they are not logged into the NIS server\&. +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBENCRYPT_METHOD\fR (string) +.RS 4 +This defines the system default encryption algorithm for encrypting passwords (if no algorithm are specified on the command line)\&. +.sp +It can take one of these values: +\fIDES\fR +(default), +\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&. MD5 and DES should not be used for new hashes, see +crypt(5) +for recommendations\&. +.sp +Note: this parameter overrides the +\fBMD5_CRYPT_ENAB\fR +variable\&. +.RE +.PP +\fBMD5_CRYPT_ENAB\fR (boolean) +.RS 4 +Indicate if passwords must be encrypted using the MD5\-based algorithm\&. If set to +\fIyes\fR, new passwords will be encrypted using the MD5\-based algorithm compatible with the one used by recent releases of FreeBSD\&. It supports passwords of unlimited length and longer salt strings\&. Set to +\fIno\fR +if you need to copy encrypted passwords to other systems which don\*(Aqt understand the new algorithm\&. Default is +\fIno\fR\&. +.sp +This variable is superseded by the +\fBENCRYPT_METHOD\fR +variable or by any command line option used to configure the encryption algorithm\&. +.sp +This variable is deprecated\&. You should use +\fBENCRYPT_METHOD\fR\&. +.RE +.PP +\fBOBSCURE_CHECKS_ENAB\fR (boolean) +.RS 4 +Enable additional checks upon password changes\&. +.RE +.PP +\fBPASS_ALWAYS_WARN\fR (boolean) +.RS 4 +Warn about weak passwords (but still allow them) if you are root\&. +.RE +.PP +\fBPASS_CHANGE_TRIES\fR (number) +.RS 4 +Maximum number of attempts to change password if rejected (too easy)\&. +.RE +.PP +\fBPASS_MAX_LEN\fR (number), \fBPASS_MIN_LEN\fR (number) +.RS 4 +Number of significant characters in the password for crypt()\&. +\fBPASS_MAX_LEN\fR +is 8 by default\&. Don\*(Aqt change unless your crypt() is better\&. This is ignored if +\fBMD5_CRYPT_ENAB\fR +set to +\fIyes\fR\&. +.RE +.PP +\fBSHA_CRYPT_MIN_ROUNDS\fR (number), \fBSHA_CRYPT_MAX_ROUNDS\fR (number) +.RS 4 +When +\fBENCRYPT_METHOD\fR +is set to +\fISHA256\fR +or +\fISHA512\fR, this defines the number of SHA rounds used by the encryption algorithm by default (when the number of rounds is not specified on the command line)\&. +.sp +With a lot of rounds, it is more difficult to brute forcing the password\&. But note also that more CPU resources will be needed to authenticate users\&. +.sp +If not specified, the libc will choose the default number of rounds (5000), which is orders of magnitude too low for modern hardware\&. +.sp +The values must be inside the 1000\-999,999,999 range\&. +.sp +If only one of the +\fBSHA_CRYPT_MIN_ROUNDS\fR +or +\fBSHA_CRYPT_MAX_ROUNDS\fR +values is set, then this value will be used\&. +.sp +If +\fBSHA_CRYPT_MIN_ROUNDS\fR +> +\fBSHA_CRYPT_MAX_ROUNDS\fR, the highest value will be used\&. +.RE +.SH "FILES" +.PP +/etc/passwd +.RS 4 +User account information\&. +.RE +.PP +/etc/shadow +.RS 4 +Secure user account information\&. +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow password suite configuration\&. +.RE +.SH "EXIT VALUES" +.PP +The +\fBpasswd\fR +command exits with the following values: +.PP +\fI0\fR +.RS 4 +success +.RE +.PP +\fI1\fR +.RS 4 +permission denied +.RE +.PP +\fI2\fR +.RS 4 +invalid combination of options +.RE +.PP +\fI3\fR +.RS 4 +unexpected failure, nothing done +.RE +.PP +\fI4\fR +.RS 4 +unexpected failure, +passwd +file missing +.RE +.PP +\fI5\fR +.RS 4 +passwd +file busy, try again +.RE +.PP +\fI6\fR +.RS 4 +invalid argument to option +.RE +.SH "SEE ALSO" +.PP +\fBchpasswd\fR(8), +\fBpasswd\fR(5), +\fBshadow\fR(5), +\fBlogin.defs\fR(5), +\fBusermod\fR(8)\&. |