1 <?xml version="1.0" encoding="UTF-8"?>
3 Copyright (c) 1991 - 1993, Julianne Frances Haugh
4 Copyright (c) 1991 - 1993, Chip Rosenthal
5 Copyright (c) 2007 - 2009, Nicolas François
8 Redistribution and use in source and binary forms, with or without
9 modification, are permitted provided that the following conditions
11 1. Redistributions of source code must retain the above copyright
12 notice, this list of conditions and the following disclaimer.
13 2. Redistributions in binary form must reproduce the above copyright
14 notice, this list of conditions and the following disclaimer in the
15 documentation and/or other materials provided with the distribution.
16 3. The name of the copyright holders or contributors may not be used to
17 endorse or promote products derived from this software without
18 specific prior written permission.
20 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
23 PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24 HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.5//EN"
33 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
34 <!ENTITY CHFN_AUTH SYSTEM "login.defs.d/CHFN_AUTH.xml">
35 <!ENTITY CHFN_RESTRICT SYSTEM "login.defs.d/CHFN_RESTRICT.xml">
36 <!ENTITY CHSH_AUTH SYSTEM "login.defs.d/CHSH_AUTH.xml">
37 <!ENTITY CONSOLE SYSTEM "login.defs.d/CONSOLE.xml">
38 <!ENTITY CONSOLE_GROUPS SYSTEM "login.defs.d/CONSOLE_GROUPS.xml">
39 <!ENTITY CREATE_HOME SYSTEM "login.defs.d/CREATE_HOME.xml">
40 <!ENTITY DEFAULT_HOME SYSTEM "login.defs.d/DEFAULT_HOME.xml">
41 <!ENTITY ENCRYPT_METHOD SYSTEM "login.defs.d/ENCRYPT_METHOD.xml">
42 <!ENTITY ENV_HZ SYSTEM "login.defs.d/ENV_HZ.xml">
43 <!ENTITY ENV_PATH SYSTEM "login.defs.d/ENV_PATH.xml">
44 <!ENTITY ENV_SUPATH SYSTEM "login.defs.d/ENV_SUPATH.xml">
45 <!ENTITY ENV_TZ SYSTEM "login.defs.d/ENV_TZ.xml">
46 <!ENTITY ENVIRON_FILE SYSTEM "login.defs.d/ENVIRON_FILE.xml">
47 <!ENTITY ERASECHAR SYSTEM "login.defs.d/ERASECHAR.xml">
48 <!ENTITY FAIL_DELAY SYSTEM "login.defs.d/FAIL_DELAY.xml">
49 <!ENTITY FAILLOG_ENAB SYSTEM "login.defs.d/FAILLOG_ENAB.xml">
50 <!ENTITY FAKE_SHELL SYSTEM "login.defs.d/FAKE_SHELL.xml">
51 <!ENTITY FTMP_FILE SYSTEM "login.defs.d/FTMP_FILE.xml">
52 <!ENTITY GID_MAX SYSTEM "login.defs.d/GID_MAX.xml">
53 <!ENTITY HUSHLOGIN_FILE SYSTEM "login.defs.d/HUSHLOGIN_FILE.xml">
54 <!ENTITY ISSUE_FILE SYSTEM "login.defs.d/ISSUE_FILE.xml">
55 <!ENTITY KILLCHAR SYSTEM "login.defs.d/KILLCHAR.xml">
56 <!ENTITY LASTLOG_ENAB SYSTEM "login.defs.d/LASTLOG_ENAB.xml">
57 <!ENTITY LOG_OK_LOGINS SYSTEM "login.defs.d/LOG_OK_LOGINS.xml">
58 <!ENTITY LOG_UNKFAIL_ENAB SYSTEM "login.defs.d/LOG_UNKFAIL_ENAB.xml">
59 <!ENTITY LOGIN_RETRIES SYSTEM "login.defs.d/LOGIN_RETRIES.xml">
60 <!ENTITY LOGIN_STRING SYSTEM "login.defs.d/LOGIN_STRING.xml">
61 <!ENTITY LOGIN_TIMEOUT SYSTEM "login.defs.d/LOGIN_TIMEOUT.xml">
62 <!ENTITY MAIL_CHECK_ENAB SYSTEM "login.defs.d/MAIL_CHECK_ENAB.xml">
63 <!ENTITY MAIL_DIR SYSTEM "login.defs.d/MAIL_DIR.xml">
64 <!ENTITY MAX_MEMBERS_PER_GROUP SYSTEM "login.defs.d/MAX_MEMBERS_PER_GROUP.xml">
65 <!ENTITY MD5_CRYPT_ENAB SYSTEM "login.defs.d/MD5_CRYPT_ENAB.xml">
66 <!ENTITY MOTD_FILE SYSTEM "login.defs.d/MOTD_FILE.xml">
67 <!ENTITY NOLOGINS_FILE SYSTEM "login.defs.d/NOLOGINS_FILE.xml">
68 <!ENTITY OBSCURE_CHECKS_ENAB SYSTEM "login.defs.d/OBSCURE_CHECKS_ENAB.xml">
69 <!ENTITY PASS_ALWAYS_WARN SYSTEM "login.defs.d/PASS_ALWAYS_WARN.xml">
70 <!ENTITY PASS_CHANGE_TRIES SYSTEM "login.defs.d/PASS_CHANGE_TRIES.xml">
71 <!ENTITY PASS_MAX_LEN SYSTEM "login.defs.d/PASS_MAX_LEN.xml">
72 <!ENTITY PASS_MAX_DAYS SYSTEM "login.defs.d/PASS_MAX_DAYS.xml">
73 <!ENTITY PASS_MIN_DAYS SYSTEM "login.defs.d/PASS_MIN_DAYS.xml">
74 <!ENTITY PASS_WARN_AGE SYSTEM "login.defs.d/PASS_WARN_AGE.xml">
75 <!ENTITY PORTTIME_CHECKS_ENAB SYSTEM "login.defs.d/PORTTIME_CHECKS_ENAB.xml">
76 <!ENTITY QUOTAS_ENAB SYSTEM "login.defs.d/QUOTAS_ENAB.xml">
77 <!ENTITY SHA_CRYPT_MIN_ROUNDS SYSTEM "login.defs.d/SHA_CRYPT_MIN_ROUNDS.xml">
78 <!ENTITY SULOG_FILE SYSTEM "login.defs.d/SULOG_FILE.xml">
79 <!ENTITY SU_NAME SYSTEM "login.defs.d/SU_NAME.xml">
80 <!ENTITY SU_WHEEL_ONLY SYSTEM "login.defs.d/SU_WHEEL_ONLY.xml">
81 <!ENTITY SYS_GID_MAX SYSTEM "login.defs.d/SYS_GID_MAX.xml">
82 <!ENTITY SYSLOG_SG_ENAB SYSTEM "login.defs.d/SYSLOG_SG_ENAB.xml">
83 <!ENTITY SYSLOG_SU_ENAB SYSTEM "login.defs.d/SYSLOG_SU_ENAB.xml">
84 <!ENTITY SYS_UID_MAX SYSTEM "login.defs.d/SYS_UID_MAX.xml">
85 <!ENTITY TCB_AUTH_GROUP SYSTEM "login.defs.d/TCB_AUTH_GROUP.xml">
86 <!ENTITY TCB_SYMLINKS SYSTEM "login.defs.d/TCB_SYMLINKS.xml">
87 <!ENTITY TTYGROUP SYSTEM "login.defs.d/TTYGROUP.xml">
88 <!ENTITY TTYTYPE_FILE SYSTEM "login.defs.d/TTYTYPE_FILE.xml">
89 <!ENTITY UID_MAX SYSTEM "login.defs.d/UID_MAX.xml">
90 <!ENTITY ULIMIT SYSTEM "login.defs.d/ULIMIT.xml">
91 <!ENTITY UMASK SYSTEM "login.defs.d/UMASK.xml">
92 <!ENTITY USERDEL_CMD SYSTEM "login.defs.d/USERDEL_CMD.xml">
93 <!ENTITY USERGROUPS_ENAB SYSTEM "login.defs.d/USERGROUPS_ENAB.xml">
94 <!ENTITY USE_TCB SYSTEM "login.defs.d/USE_TCB.xml">
95 <!-- SHADOW-CONFIG-HERE -->
98 <refentry id='login.defs.5'>
101 <refentrytitle>login.defs</refentrytitle>
102 <manvolnum>5</manvolnum>
103 <refmiscinfo class="sectdesc">File Formats and Conversions</refmiscinfo>
104 <refmiscinfo class="source">shadow-utils</refmiscinfo>
105 <refmiscinfo class="version">&SHADOW_UTILS_VERSION;</refmiscinfo>
107 <refnamediv id='name'>
108 <refname>login.defs</refname>
109 <refpurpose>shadow password suite configuration</refpurpose>
112 <refsect1 id='description'>
113 <title>DESCRIPTION</title>
115 The <filename>/etc/login.defs</filename> file defines the
116 site-specific configuration for the shadow password suite. This file
117 is required. Absence of this file will not prevent system operation,
118 but will probably result in undesirable operation.
122 This file is a readable text file, each line of the file describing
123 one configuration parameter. The lines consist of a configuration name
124 and value, separated by whitespace. Blank lines and comment lines are
125 ignored. Comments are introduced with a "#" pound sign and the pound
126 sign must be the first non-white character of the line.
130 Parameter values may be of four types: strings, booleans, numbers, and
131 long numbers. A string is comprised of any printable characters. A
132 boolean should be either the value <replaceable>yes</replaceable> or
133 <replaceable>no</replaceable>. An undefined boolean
134 parameter or one with a value other than these will be given a
135 <replaceable>no</replaceable>
136 value. Numbers (both regular and long) may be either decimal values,
137 octal values (precede the value with <replaceable>0</replaceable>) or
139 (precede the value with <replaceable>0x</replaceable>).
140 The maximum value of the regular and
141 long numeric parameters is machine-dependent.
144 <para>The following configuration items are provided:</para>
146 <variablelist remap='IP'>
165 &GID_MAX; <!-- documents also GID_MIN -->
177 &MAX_MEMBERS_PER_GROUP;
181 &OBSCURE_CHECKS_ENAB;
188 <option>PASS_MAX_DAYS</option>, <option>PASS_MIN_DAYS</option> and
189 <option>PASS_WARN_AGE</option> are only used at the
190 time of account creation. Any changes to these settings won't affect
193 &PASS_MAX_LEN; <!-- documents also PASS_MIN_LEN -->
194 &PORTTIME_CHECKS_ENAB;
196 &SHA_CRYPT_MIN_ROUNDS; <!-- documents also SHA_CRYPT_MAX_ROUNDS -->
200 &SYS_GID_MAX; <!-- documents also SYS_GID_MIN -->
201 &SYS_UID_MAX; <!-- documents also SYS_UID_MIN -->
208 &UID_MAX; <!-- documents also UID_MIN -->
217 <refsect1 id='cross_references'>
218 <title>CROSS REFERENCES</title>
220 The following cross references show which programs in the shadow
221 password suite use which parameters.
224 <variablelist remap='IP'>
225 <varlistentry condition="tcb">
235 <phrase condition="no_pam">CHFN_AUTH</phrase>
237 <phrase condition="no_pam">LOGIN_STRING</phrase>
242 <term>chgpasswd</term>
245 ENCRYPT_METHOD MAX_MEMBERS_PER_GROUP MD5_CRYPT_ENAB
246 <phrase condition="sha_crypt">SHA_CRYPT_MAX_ROUNDS
247 SHA_CRYPT_MIN_ROUNDS</phrase>
252 <term>chpasswd</term>
255 <phrase condition="no_pam">ENCRYPT_METHOD
256 MD5_CRYPT_ENAB </phrase>
257 <phrase condition="sha_crypt">SHA_CRYPT_MAX_ROUNDS
258 SHA_CRYPT_MIN_ROUNDS</phrase>
262 <varlistentry condition="no_pam">
266 CHSH_AUTH LOGIN_STRING
270 <!-- expiry: no variables (CONSOLE_GROUPS linked, but not used) -->
271 <!-- faillog: no variables -->
276 ENCRYPT_METHOD MAX_MEMBERS_PER_GROUP MD5_CRYPT_ENAB
277 <phrase condition="sha_crypt">SHA_CRYPT_MAX_ROUNDS
278 SHA_CRYPT_MIN_ROUNDS</phrase>
283 <term>groupadd</term>
286 GID_MAX GID_MIN MAX_MEMBERS_PER_GROUP
287 SYS_GID_MAX SYS_GID_MIN
292 <term>groupdel</term>
294 <para>MAX_MEMBERS_PER_GROUP</para>
298 <term>groupmems</term>
300 <para>MAX_MEMBERS_PER_GROUP</para>
304 <term>groupmod</term>
306 <para>MAX_MEMBERS_PER_GROUP</para>
309 <!-- groups: no variables -->
313 <para>MAX_MEMBERS_PER_GROUP</para>
319 <para>MAX_MEMBERS_PER_GROUP</para>
323 <term>grpunconv</term>
325 <para>MAX_MEMBERS_PER_GROUP</para>
328 <!-- id: no variables -->
329 <!-- lastlog: no variables -->
334 <phrase condition="no_pam">CONSOLE</phrase>
335 CONSOLE_GROUPS DEFAULT_HOME
336 <phrase condition="no_pam">ENV_HZ ENV_PATH ENV_SUPATH
337 ENV_TZ ENVIRON_FILE</phrase>
339 <phrase condition="no_pam">FAILLOG_ENAB</phrase>
341 <phrase condition="no_pam">FTMP_FILE</phrase>
343 <phrase condition="no_pam">ISSUE_FILE</phrase>
345 <phrase condition="no_pam">LASTLOG_ENAB</phrase>
347 <phrase condition="no_pam">LOGIN_STRING</phrase>
348 LOGIN_TIMEOUT LOG_OK_LOGINS LOG_UNKFAIL_ENAB
349 <phrase condition="no_pam">MAIL_CHECK_ENAB MAIL_DIR MAIL_FILE
350 MOTD_FILE NOLOGINS_FILE PORTTIME_CHECKS_ENAB
352 TTYGROUP TTYPERM TTYTYPE_FILE
353 <phrase condition="no_pam">ULIMIT UMASK</phrase>
358 <!-- logoutd: no variables -->
360 <term>newgrp / sg</term>
368 <term>newusers</term>
373 MAX_MEMBERS_PER_GROUP MD5_CRYPT_ENAB
374 PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
375 <phrase condition="sha_crypt">SHA_CRYPT_MAX_ROUNDS
376 SHA_CRYPT_MIN_ROUNDS</phrase>
377 SYS_GID_MAX SYS_GID_MIN SYS_UID_MAX SYS_UID_MIN UID_MAX UID_MIN
382 <!-- nologin: no variables -->
383 <varlistentry condition="no_pam">
387 ENCRYPT_METHOD MD5_CRYPT_ENAB OBSCURE_CHECKS_ENAB
388 PASS_ALWAYS_WARN PASS_CHANGE_TRIES PASS_MAX_LEN PASS_MIN_LEN
389 <phrase condition="sha_crypt">SHA_CRYPT_MAX_ROUNDS
390 SHA_CRYPT_MIN_ROUNDS</phrase>
398 PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
399 <phrase condition="tcb">TCB_AUTH_GROUP TCB_SYMLINKS USE_TCB</phrase>
407 PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
408 <phrase condition="tcb">USE_TCB</phrase>
412 <varlistentry condition="tcb">
413 <term>pwunconv</term>
416 <phrase condition="tcb">USE_TCB</phrase>
424 <phrase condition="no_pam">CONSOLE</phrase>
425 CONSOLE_GROUPS DEFAULT_HOME
426 <phrase condition="no_pam">ENV_HZ ENVIRON_FILE</phrase>
428 <phrase condition="no_pam">ENV_TZ LOGIN_STRING MAIL_CHECK_ENAB
429 MAIL_DIR MAIL_FILE QUOTAS_ENAB</phrase>
431 <phrase condition="no_pam">SU_WHEEL_ONLY</phrase>
433 <phrase condition="no_pam">USERGROUPS_ENAB</phrase>
442 <phrase condition="no_pam">ENV_TZ</phrase>
452 MAIL_DIR MAX_MEMBERS_PER_GROUP
453 PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
454 SYS_GID_MAX SYS_GID_MIN SYS_UID_MAX SYS_UID_MIN UID_MAX UID_MIN
456 <phrase condition="tcb">TCB_AUTH_GROUP TCB_SYMLINK USE_TCB</phrase>
464 MAIL_DIR MAIL_FILE MAX_MEMBERS_PER_GROUP USERDEL_CMD
466 <phrase condition="tcb">TCB_SYMLINKS USE_TCB</phrase>
474 MAIL_DIR MAIL_FILE MAX_MEMBERS_PER_GROUP
475 <phrase condition="tcb">TCB_SYMLINKS USE_TCB</phrase>
479 <varlistentry condition="tcb">
483 <phrase condition="tcb">USE_TCB</phrase>
490 <refsect1 id='bugs' condition="pam">
493 Much of the functionality that used to be provided by the shadow
494 password suite is now handled by PAM. Thus,
495 <filename>/etc/login.defs</filename> is no longer used by <citerefentry>
496 <refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum>
497 </citerefentry>, or less used by <citerefentry>
498 <refentrytitle>login</refentrytitle><manvolnum>1</manvolnum>
499 </citerefentry>, and <citerefentry>
500 <refentrytitle>su</refentrytitle><manvolnum>1</manvolnum>
501 </citerefentry>. Please refer to the corresponding PAM configuration
506 <refsect1 id='see_also'>
507 <title>SEE ALSO</title>
510 <refentrytitle>login</refentrytitle><manvolnum>1</manvolnum>
513 <refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum>
516 <refentrytitle>su</refentrytitle><manvolnum>1</manvolnum>
519 <refentrytitle>passwd</refentrytitle><manvolnum>5</manvolnum>
522 <refentrytitle>shadow</refentrytitle><manvolnum>5</manvolnum>
525 <refentrytitle>pam</refentrytitle><manvolnum>8</manvolnum>