Document the try_first_pass option in the pam_winbind manpage.
[kai/samba.git] / docs-xml / manpages-3 / pam_winbind.7.xml
1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <!DOCTYPE refentry PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
3 <refentry id="pam_winbind.7">
4
5 <refmeta>
6         <refentrytitle>pam_winbind</refentrytitle>
7         <manvolnum>7</manvolnum>
8         <refmiscinfo class="source">Samba</refmiscinfo>
9         <refmiscinfo class="manual">7</refmiscinfo>
10         <refmiscinfo class="version">3.5</refmiscinfo>
11 </refmeta>
12
13
14 <refnamediv>
15         <refname>pam_winbind</refname>
16         <refpurpose>PAM module for Winbind</refpurpose>
17 </refnamediv>
18
19 <refsect1>
20         <title>DESCRIPTION</title>
21
22         <para>This tool is part of the <citerefentry><refentrytitle>samba</refentrytitle>
23         <manvolnum>7</manvolnum></citerefentry> suite.</para>
24
25         <para>
26         pam_winbind is a PAM module that can authenticate users against the local domain by talking to the Winbind daemon.
27         </para>
28
29 </refsect1>
30
31 <refsect1>
32         <title>SYNOPSIS</title>
33
34         <para>
35                 Edit the PAM system config /etc/pam.d/service and modify it as the following example shows:
36                 <programlisting>
37                             ...
38                             auth      required        pam_env.so
39                             auth      sufficient      pam_unix2.so
40                         +++ auth      required        pam_winbind.so  use_first_pass
41                             account   requisite       pam_unix2.so
42                         +++ account   required        pam_winbind.so  use_first_pass
43                         +++ password  sufficient      pam_winbind.so
44                             password  requisite       pam_pwcheck.so  cracklib
45                             password  required        pam_unix2.so    use_authtok
46                             session   required        pam_unix2.so
47                         +++ session   required        pam_winbind.so
48                             ...
49                 </programlisting>
50
51                 Make sure that pam_winbind is one of the first modules in the session part. It may retrieve
52                 kerberos tickets which are needed by other modules.
53         </para>
54 </refsect1>
55
56 <refsect1>
57         <title>OPTIONS</title>
58         <para>
59         
60                 pam_winbind supports several options which can either be set in
61                 the PAM configuration files or in the pam_winbind configuration
62                 file situated at
63                 <filename>/etc/security/pam_winbind.conf</filename>. Options
64                 from the PAM configuration file take precedence to those from
65                 the configuration file.
66
67                 <variablelist>
68
69                 <varlistentry>
70                 <term>debug</term>
71                 <listitem><para>Gives debugging output to syslog.</para></listitem>
72                 </varlistentry>
73
74                 <varlistentry>
75                 <term>debug_state</term>
76                 <listitem><para>Gives detailed PAM state debugging output to syslog.</para></listitem>
77                 </varlistentry>
78
79                 <varlistentry>
80                 <term>require_membership_of=[SID or NAME]</term>
81                 <listitem><para>
82                 If this option is set, pam_winbind will only succeed if the user is a member of the given SID or NAME. A SID
83                 can be either a group-SID, an alias-SID or even an user-SID. It is also possible to give a NAME instead of the
84                 SID. That name must have the form: <parameter>MYDOMAIN\\mygroup</parameter> or
85                 <parameter>MYDOMAIN\\myuser</parameter>.  pam_winbind will, in that case, lookup the SID internally. Note that
86                 NAME may not contain any spaces. It is thus recommended to only use SIDs. You can verify the list of SIDs a
87                 user is a member of with <command>wbinfo --user-sids=SID</command>.
88                 </para></listitem>
89                 </varlistentry>
90
91                 <varlistentry>
92                 <term>use_first_pass</term>
93                 <listitem><para>
94                 By default, pam_winbind tries to get the authentication token from a previous module. If no token is available
95                 it asks the user for the old password. With this option, pam_winbind aborts with an error if no authentication
96                 token from a previous module is available.
97                 </para></listitem>
98                 </varlistentry>
99
100                 <varlistentry>
101                 <term>try_first_pass</term>
102                 <listitem><para>
103                                 Same as the use_first_pass option (previous item), except that if the primary password is not
104                                 valid, PAM will prompt for a password.
105                 </para></listitem>
106                 </varlistentry>
107
108                 <varlistentry>
109                 <term>use_authtok</term>
110                 <listitem><para>
111                 Set the new password to the one provided by the previously stacked password module. If this option is not set 
112                 pam_winbind will ask the user for the new password.
113                 </para></listitem>
114                 </varlistentry>
115
116                 <varlistentry>
117                 <term>krb5_auth</term>
118                 <listitem><para>
119
120                 pam_winbind can authenticate using Kerberos when winbindd is
121                 talking to an Active Directory domain controller. Kerberos
122                 authentication must be enabled with this parameter. When
123                 Kerberos authentication can not succeed (e.g. due to clock
124                 skew), winbindd will fallback to samlogon authentication over
125                 MSRPC. When this parameter is used in conjunction with
126                 <parameter>winbind refresh tickets</parameter>, winbind will
127                 keep your Ticket Granting Ticket (TGT) uptodate by refreshing
128                 it whenever necessary.
129
130                 </para></listitem>
131                 </varlistentry>
132
133                 <varlistentry>
134                 <term>krb5_ccache_type=[type]</term>
135                 <listitem><para>
136                 
137                 When pam_winbind is configured to try kerberos authentication
138                 by enabling the <parameter>krb5_auth</parameter> option, it can
139                 store the retrieved Ticket Granting Ticket (TGT) in a
140                 credential cache. The type of credential cache can be set with
141                 this option. Currently the only supported value is:
142                 <parameter>FILE</parameter>. In that case a credential cache in
143                 the form of /tmp/krb5cc_UID will be created, where UID is
144                 replaced with the numeric user id.  Leave empty to just do
145                 kerberos authentication without having a ticket cache after the
146                 logon has succeeded.
147
148                 </para></listitem>
149                 </varlistentry>
150         
151                 <varlistentry>
152                 <term>cached_login</term>
153                 <listitem><para>
154                 Winbind allows to logon using cached credentials when <parameter>winbind offline logon</parameter> is enabled. To use this feature from the PAM module this option must be set.
155                 </para></listitem>
156                 </varlistentry>
157
158                 <varlistentry>
159                 <term>silent</term>
160                 <listitem><para>
161                 Do not emit any messages.
162                 </para></listitem>
163                 </varlistentry>
164
165                 <varlistentry>
166                 <term>mkhomedir</term>
167                 <listitem><para>
168                 Create homedirectory for a user on-the-fly, option is valid in
169                 PAM session block.
170                 </para></listitem>
171                 </varlistentry>
172
173                 <varlistentry>
174                 <term>warn_pwd_expire</term>
175                 <listitem><para>
176                 Defines number of days before pam_winbind starts to warn about passwords that are
177                 going to expire. Defaults to 14 days.
178                 </para></listitem>
179                 </varlistentry>
180
181                 </variablelist>
182
183         </para>
184
185 </refsect1>
186
187 <refsect1>
188         <title>SEE ALSO</title>
189         <para><citerefentry>
190         <refentrytitle>wbinfo</refentrytitle>
191         <manvolnum>1</manvolnum></citerefentry>, <citerefentry>
192         <refentrytitle>winbindd</refentrytitle>
193         <manvolnum>8</manvolnum></citerefentry>, <citerefentry>
194         <refentrytitle>smb.conf</refentrytitle>
195         <manvolnum>5</manvolnum></citerefentry></para>
196 </refsect1>
197
198 <refsect1>
199         <title>VERSION</title>
200
201         <para>This man page is correct for version 3 of Samba.</para>
202 </refsect1>
203
204 <refsect1>
205         <title>AUTHOR</title>
206         
207         <para>
208         The original Samba software and related utilities were created by Andrew Tridgell. Samba is now developed by
209         the Samba Team as an Open Source project similar to the way the Linux kernel is developed.
210         </para>
211         
212         <para>This manpage was written by Jelmer Vernooij and Guenther Deschner.</para>
213
214 </refsect1>
215
216 </refentry>