summaryrefslogtreecommitdiff
path: root/docs/htmldocs/Samba-HOWTO-Collection.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/htmldocs/Samba-HOWTO-Collection.html')
-rw-r--r--docs/htmldocs/Samba-HOWTO-Collection.html1005
1 files changed, 870 insertions, 135 deletions
diff --git a/docs/htmldocs/Samba-HOWTO-Collection.html b/docs/htmldocs/Samba-HOWTO-Collection.html
index db3c6598df..870b0ec6e8 100644
--- a/docs/htmldocs/Samba-HOWTO-Collection.html
+++ b/docs/htmldocs/Samba-HOWTO-Collection.html
@@ -668,101 +668,155 @@ HREF="#AEN1602"
></DD
><DT
>9. <A
-HREF="#WINBIND"
->Unified Logons between Windows NT and UNIX using Winbind</A
+HREF="#SAMBA-LDAP-HOWTO"
+>Storing Samba's User/Machine Account information in an LDAP Directory</A
></DT
><DD
><DL
><DT
>9.1. <A
-HREF="#AEN1652"
->Abstract</A
+HREF="#AEN1638"
+>Purpose</A
></DT
><DT
>9.2. <A
-HREF="#AEN1656"
+HREF="#AEN1652"
>Introduction</A
></DT
><DT
>9.3. <A
-HREF="#AEN1669"
+HREF="#AEN1677"
+>Supported LDAP Servers</A
+></DT
+><DT
+>9.4. <A
+HREF="#AEN1682"
+>Schema and Relationship to the RFC 2307 posixAccount</A
+></DT
+><DT
+>9.5. <A
+HREF="#AEN1706"
+>smb.conf LDAP parameters</A
+></DT
+><DT
+>9.6. <A
+HREF="#AEN1734"
+>Security and sambaAccount</A
+></DT
+><DT
+>9.7. <A
+HREF="#AEN1753"
+></A
+></DT
+><DT
+>9.8. <A
+HREF="#AEN1773"
+>Example LDIF Entries for a sambaAccount</A
+></DT
+><DT
+>9.9. <A
+HREF="#AEN1781"
+>Comments</A
+></DT
+></DL
+></DD
+><DT
+>10. <A
+HREF="#WINBIND"
+>Unified Logons between Windows NT and UNIX using Winbind</A
+></DT
+><DD
+><DL
+><DT
+>10.1. <A
+HREF="#AEN1810"
+>Abstract</A
+></DT
+><DT
+>10.2. <A
+HREF="#AEN1814"
+>Introduction</A
+></DT
+><DT
+>10.3. <A
+HREF="#AEN1827"
>What Winbind Provides</A
></DT
><DD
><DL
><DT
->9.3.1. <A
-HREF="#AEN1676"
+>10.3.1. <A
+HREF="#AEN1834"
>Target Uses</A
></DT
></DL
></DD
><DT
->9.4. <A
-HREF="#AEN1680"
+>10.4. <A
+HREF="#AEN1838"
>How Winbind Works</A
></DT
><DD
><DL
><DT
->9.4.1. <A
-HREF="#AEN1685"
+>10.4.1. <A
+HREF="#AEN1843"
>Microsoft Remote Procedure Calls</A
></DT
><DT
->9.4.2. <A
-HREF="#AEN1689"
+>10.4.2. <A
+HREF="#AEN1847"
>Name Service Switch</A
></DT
><DT
->9.4.3. <A
-HREF="#AEN1705"
+>10.4.3. <A
+HREF="#AEN1863"
>Pluggable Authentication Modules</A
></DT
><DT
->9.4.4. <A
-HREF="#AEN1713"
+>10.4.4. <A
+HREF="#AEN1871"
>User and Group ID Allocation</A
></DT
><DT
->9.4.5. <A
-HREF="#AEN1717"
+>10.4.5. <A
+HREF="#AEN1875"
>Result Caching</A
></DT
></DL
></DD
><DT
->9.5. <A
-HREF="#AEN1720"
+>10.5. <A
+HREF="#AEN1878"
>Installation and Configuration</A
></DT
><DD
><DL
><DT
->9.5.1. <A
-HREF="#AEN1725"
+>10.5.1. <A
+HREF="#AEN1883"
>Introduction</A
></DT
><DT
->9.5.2. <A
-HREF="#AEN1738"
+>10.5.2. <A
+HREF="#AEN1896"
>Requirements</A
></DT
><DT
->9.5.3. <A
-HREF="#AEN1752"
+>10.5.3. <A
+HREF="#AEN1910"
>Testing Things Out</A
></DT
><DD
><DL
><DT
->9.5.3.1. <A
-HREF="#AEN1763"
+>10.5.3.1. <A
+HREF="#AEN1921"
>Configure and compile SAMBA</A
></DT
><DT
->9.5.3.2. <A
-HREF="#AEN1782"
+>10.5.3.2. <A
+HREF="#AEN1940"
>Configure <TT
CLASS="FILENAME"
>nsswitch.conf</TT
@@ -770,31 +824,31 @@ CLASS="FILENAME"
winbind libraries</A
></DT
><DT
->9.5.3.3. <A
-HREF="#AEN1807"
+>10.5.3.3. <A
+HREF="#AEN1965"
>Configure smb.conf</A
></DT
><DT
->9.5.3.4. <A
-HREF="#AEN1823"
+>10.5.3.4. <A
+HREF="#AEN1981"
>Join the SAMBA server to the PDC domain</A
></DT
><DT
->9.5.3.5. <A
-HREF="#AEN1834"
+>10.5.3.5. <A
+HREF="#AEN1992"
>Start up the winbindd daemon and test it!</A
></DT
><DT
->9.5.3.6. <A
-HREF="#AEN1870"
+>10.5.3.6. <A
+HREF="#AEN2028"
>Fix the <TT
CLASS="FILENAME"
>/etc/rc.d/init.d/smb</TT
> startup files</A
></DT
><DT
->9.5.3.7. <A
-HREF="#AEN1892"
+>10.5.3.7. <A
+HREF="#AEN2050"
>Configure Winbind and PAM</A
></DT
></DL
@@ -802,52 +856,52 @@ HREF="#AEN1892"
></DL
></DD
><DT
->9.6. <A
-HREF="#AEN1939"
+>10.6. <A
+HREF="#AEN2097"
>Limitations</A
></DT
><DT
->9.7. <A
-HREF="#AEN1949"
+>10.7. <A
+HREF="#AEN2107"
>Conclusion</A
></DT
></DL
></DD
><DT
->10. <A
+>11. <A
HREF="#OS2"
>OS2 Client HOWTO</A
></DT
><DD
><DL
><DT
->10.1. <A
-HREF="#AEN1963"
+>11.1. <A
+HREF="#AEN2121"
>FAQs</A
></DT
><DD
><DL
><DT
->10.1.1. <A
-HREF="#AEN1965"
+>11.1.1. <A
+HREF="#AEN2123"
>How can I configure OS/2 Warp Connect or
OS/2 Warp 4 as a client for Samba?</A
></DT
><DT
->10.1.2. <A
-HREF="#AEN1980"
+>11.1.2. <A
+HREF="#AEN2138"
>How can I configure OS/2 Warp 3 (not Connect),
OS/2 1.2, 1.3 or 2.x for Samba?</A
></DT
><DT
->10.1.3. <A
-HREF="#AEN1989"
+>11.1.3. <A
+HREF="#AEN2147"
>Are there any other issues when OS/2 (any version)
is used as a client?</A
></DT
><DT
->10.1.4. <A
-HREF="#AEN1993"
+>11.1.4. <A
+HREF="#AEN2151"
>How do I get printer driver download working
for OS/2 clients?</A
></DT
@@ -856,32 +910,32 @@ HREF="#AEN1993"
></DL
></DD
><DT
->11. <A
+>12. <A
HREF="#CVS-ACCESS"
>HOWTO Access Samba source code via CVS</A
></DT
><DD
><DL
><DT
->11.1. <A
-HREF="#AEN2009"
+>12.1. <A
+HREF="#AEN2167"
>Introduction</A
></DT
><DT
->11.2. <A
-HREF="#AEN2014"
+>12.2. <A
+HREF="#AEN2172"
>CVS Access to samba.org</A
></DT
><DD
><DL
><DT
->11.2.1. <A
-HREF="#AEN2017"
+>12.2.1. <A
+HREF="#AEN2175"
>Access via CVSweb</A
></DT
><DT
->11.2.2. <A
-HREF="#AEN2022"
+>12.2.2. <A
+HREF="#AEN2180"
>Access via cvs</A
></DT
></DL
@@ -890,7 +944,7 @@ HREF="#AEN2022"
></DD
><DT
><A
-HREF="#AEN2050"
+HREF="#AEN2208"
>Index</A
></DT
></DL
@@ -7833,16 +7887,697 @@ within its registry.</P
CLASS="CHAPTER"
><HR><H1
><A
-NAME="WINBIND"
->Chapter 9. Unified Logons between Windows NT and UNIX using Winbind</A
+NAME="SAMBA-LDAP-HOWTO"
+>Chapter 9. Storing Samba's User/Machine Account information in an LDAP Directory</A
></H1
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
+NAME="AEN1638"
+>9.1. Purpose</A
+></H1
+><P
+>This document describes how to use an LDAP directory for storing Samba user
+account information normally stored in the smbpasswd(5) file. It is
+assumed that the reader already has a basic understanding of LDAP concepts
+and has a working directory server already installed. For more information
+on LDAP architectures and Directories, please refer to the following sites.</P
+><P
+></P
+><UL
+><LI
+><P
+>OpenLDAP - <A
+HREF="http://www.openldap.org/"
+TARGET="_top"
+>http://www.openldap.org/</A
+></P
+></LI
+><LI
+><P
+>iPlanet Directory Server - <A
+HREF="http://iplanet.netscape.com/directory"
+TARGET="_top"
+>http://iplanet.netscape.com/directory</A
+></P
+></LI
+></UL
+><P
+>Note that <A
+HREF="http://www.ora.com/"
+TARGET="_top"
+>O'Reilly Publishing</A
+> is working on
+a guide to LDAP for System Administrators which has a planned release date of
+early summer, 2002.</P
+><P
+>It may also be helpful to supplement the reading of the HOWTO with
+the <A
+HREF="http://www.unav.es/cti/ldap-smb/ldap-smb-2_2-howto.html"
+TARGET="_top"
+>Samba-PDC-LDAP-HOWTO</A
+>
+maintained by Ignacio Coupeau.</P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H1
+CLASS="SECT1"
+><A
NAME="AEN1652"
->9.1. Abstract</A
+>9.2. Introduction</A
+></H1
+><P
+>Traditionally, when configuring <A
+HREF="smb.conf.5.html#ENCRYPTPASSWORDS"
+TARGET="_top"
+>"encrypt
+passwords = yes"</A
+> in Samba's <TT
+CLASS="FILENAME"
+>smb.conf</TT
+> file, user account
+information such as username, LM/NT password hashes, password change times, and account
+flags have been stored in the <TT
+CLASS="FILENAME"
+>smbpasswd(5)</TT
+> file. There are several
+disadvantages to this approach for sites with very large numbers of users (counted
+in the thousands).</P
+><P
+>The first is that all lookups must be performed sequentially. Given that
+there are approximately two lookups per domain logon (one for a normal
+session connection such as when mapping a network drive or printer), this
+is non-optimal. What is needed is an indexed approach such as is used in
+databases.</P
+><P
+>The second problem is that administrators who desired to replicate a
+smbpasswd file to more than one Samba server were left to use external
+tools such as <B
+CLASS="COMMAND"
+>rsync(1)</B
+> and <B
+CLASS="COMMAND"
+>ssh(1)</B
+>
+and wrote custom, in-house scripts.</P
+><P
+>And finally, the amount of information which is stored in an
+smbpasswd entry leaves no room for additional attributes such as
+a home directory, password expiration time, or even a Relative
+Identified (RID).</P
+><P
+>As a result of these defeciencies, a more robust means of storing user attributes
+used by smbd was developed. The API which defines access to user accounts
+is referred to as the samdb interface (previously this was called the passdb
+API, and is still so named in the CVS trees). In Samba 2.2.3, enabling support
+for a samdb backend (e.g. <TT
+CLASS="PARAMETER"
+><I
+>--with-ldapsam</I
+></TT
+> or
+<TT
+CLASS="PARAMETER"
+><I
+>--with-tdbsam</I
+></TT
+>) requires compile time support.</P
+><P
+>When compiling Samba to include the <TT
+CLASS="PARAMETER"
+><I
+>--with-ldapsam</I
+></TT
+> autoconf
+option, smbd (and associated tools) will store and lookup user accounts in
+an LDAP directory. In reality, this is very easy to understand. If you are
+comfortable with using an smbpasswd file, simply replace "smbpasswd" with
+"LDAP directory" in all the documentation.</P
+><P
+>There are a few points to stress about what the <TT
+CLASS="PARAMETER"
+><I
+>--with-ldapsam</I
+></TT
+>
+does not provide. The LDAP support referred to in the this documentation does not
+include:</P
+><P
+></P
+><UL
+><LI
+><P
+>A means of retrieving user account information from
+ an Windows 2000 Active Directory server.</P
+></LI
+><LI
+><P
+>A means of replacing /etc/passwd.</P
+></LI
+></UL
+><P
+>The second item can be accomplished by using LDAP NSS and PAM modules. LGPL
+versions of these libraries can be obtained from PADL Software
+(<A
+HREF="http://www.padl.com/"
+TARGET="_top"
+>http://www.padl.com/</A
+>). However,
+the details of configuring these packages are beyond the scope of this document.</P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H1
+CLASS="SECT1"
+><A
+NAME="AEN1677"
+>9.3. Supported LDAP Servers</A
+></H1
+><P
+>The LDAP samdb code in 2.2.3 has been developed and tested using the OpenLDAP
+2.0 server and client libraries. The same code should be able to work with
+Netscape's Directory Server and client SDK. However, due to lack of testing
+so far, there are bound to be compile errors and bugs. These should not be
+hard to fix. If you are so inclined, please be sure to forward all patches to
+<A
+HREF="samba-patches@samba.org"
+TARGET="_top"
+>samba-patches@samba.org</A
+> and
+<A
+HREF="jerry@samba.org"
+TARGET="_top"
+>jerry@samba.org</A
+>.</P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H1
+CLASS="SECT1"
+><A
+NAME="AEN1682"
+>9.4. Schema and Relationship to the RFC 2307 posixAccount</A
+></H1
+><P
+>Samba 2.2.3 includes the necessary schema file for OpenLDAP 2.0 in
+<TT
+CLASS="FILENAME"
+>examples/LDAP/samba.schema</TT
+>. (Note that this schema
+file has been modified since the experimental support initially included
+in 2.2.2). The sambaAccount objectclass is given here:</P
+><P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>objectclass ( 1.3.1.5.1.4.1.7165.2.2.2 NAME 'sambaAccount' SUP top STRUCTURAL
+ DESC 'Samba Account'
+ MUST ( uid $ rid )
+ MAY ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $
+ logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $
+ displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $
+ description $ userWorkstations $ primaryGroupID ))</PRE
+></TD
+></TR
+></TABLE
+></P
+><P
+>The samba.schema file has been formatted for OpenLDAP 2.0. The OID's are
+owned by the Samba Team and as such is legal to be openly published.
+If you translate the schema to be used with Netscape DS, please
+submit the modified schema file as a patch to <A
+HREF="jerry@samba.org"
+TARGET="_top"
+>jerry@samba.org</A
+></P
+><P
+>Just as the smbpasswd file is mean to store information which supplements a
+user's <TT
+CLASS="FILENAME"
+>/etc/passwd</TT
+> entry, so is the sambaAccount object
+meant to supplement the UNIX user account information. A sambaAccount is a
+<TT
+CLASS="CONSTANT"
+>STRUCTURAL</TT
+> objectclass so it can be stored individually
+in the directory. However, there are several fields (e.g. uid) which overlap
+with the posixAccount objectclass outlined in RFC2307. This is by design.</P
+><P
+>In order to store all user account information (UNIX and Samba) in the directory,
+it is necessary to use the sambaAccount and posixAccount objectclasses in
+combination. However, smbd will still obtain the user's UNIX account
+information via the standard C library calls (e.g. getpwnam(), et. al.).
+This means that the Samba server must also have the LDAP NSS library installed
+and functioning correctly. This division of information makes it possible to
+store all Samba account information in LDAP, but still maintain UNIX account
+information in NIS while the network is transitioning to a full LDAP infrastructure.</P
+><P
+>To include support for the sambaAccount object in an OpenLDAP directory
+server, first copy the samba.schema file to slapd's configuration directory.</P
+><P
+><TT
+CLASS="PROMPT"
+>root# </TT
+><B
+CLASS="COMMAND"
+>cp samba.schema /etc/openldap/schema/</B
+></P
+><P
+>Next, include the <TT
+CLASS="FILENAME"
+>samba.schema</TT
+> file in <TT
+CLASS="FILENAME"
+>slapd.conf</TT
+>.
+The sambaAccount object contains two attributes which depend upon other schema
+files. The 'uid' attribute is defined in <TT
+CLASS="FILENAME"
+>cosine.schema</TT
+> and
+the 'displayName' attribute is defined in the <TT
+CLASS="FILENAME"
+>inetorgperson.schema</TT
+>
+file. Bother of these must be included before the <TT
+CLASS="FILENAME"
+>samba.schema</TT
+> file.</P
+><P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>## /etc/openldap/slapd.conf
+
+## schema files (core.schema is required by default)
+include /etc/openldap/schema/core.schema
+
+## needed for sambaAccount
+include /etc/openldap/schema/cosine.schema
+include /etc/openldap/schema/inetorgperson.schema
+include /etc/openldap/schema/samba.schema
+
+## uncomment this line if you want to support the RFC2307 (NIS) schema
+## include /etc/openldap/schema/nis.schema
+
+....</PRE
+></TD
+></TR
+></TABLE
+></P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H1
+CLASS="SECT1"
+><A
+NAME="AEN1706"
+>9.5. smb.conf LDAP parameters</A
+></H1
+><P
+>The following parameters are available in smb.conf only with <TT
+CLASS="PARAMETER"
+><I
+>--with-ldapsam</I
+></TT
+>
+was included with compiling Samba.</P
+><P
+></P
+><UL
+><LI
+><P
+><A
+HREF="smb.conf.5.html#LDAPSSL"
+TARGET="_top"
+>ldap ssl</A
+></P
+></LI
+><LI
+><P
+><A
+HREF="smb.conf.5.html#LDAPSERVER"
+TARGET="_top"
+>ldap server</A
+></P
+></LI
+><LI
+><P
+><A
+HREF="smb.conf.5.html#LDAPADMINDN"
+TARGET="_top"
+>ldap admin dn</A
+></P
+></LI
+><LI
+><P
+><A
+HREF="smb.conf.5.html#LDAPSUFFIX"
+TARGET="_top"
+>ldap suffix</A
+></P
+></LI
+><LI
+><P
+><A
+HREF="smb.conf.5.html#LDAPFILTER"
+TARGET="_top"
+>ldap filter</A
+></P
+></LI
+><LI
+><P
+><A
+HREF="smb.conf.5.html#LDAPPORT"
+TARGET="_top"
+>ldap port</A
+></P
+></LI
+></UL
+><P
+>These are described in the <A
+HREF="smb.conf.5.html"
+TARGET="_top"
+>smb.conf(5)</A
+> man
+page and so will not be repeated here. However, a sample smb.conf file for
+use with an LDAP directory could appear as</P
+><P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>## /usr/local/samba/lib/smb.conf
+[global]
+ security = user
+ encrypt passwords = yes
+
+ netbios name = TASHTEGO
+ workgroup = NARNIA
+
+ # ldap related parameters
+
+ # define the DN to use when binding to the directory servers
+ # The password for this DN is not stored in smb.conf. Rather it
+ # must be set by using 'smbpasswd -w <TT
+CLASS="REPLACEABLE"
+><I
+>secretpw</I
+></TT
+>' to store the
+ # passphrase in the secrets.tdb file. If the "ldap admin dn" values
+ # changes, this password will need to be reset.
+ ldap admin dn = "cn=Manager,dc=samba,dc=org"
+
+ # specify the LDAP server's hostname (defaults to locahost)
+ ldap server = ahab.samba.org
+
+ # Define the SSL option when connecting to the directory
+ # ('off', 'start tls', or 'on' (default))
+ ldap ssl = start tls
+
+ # define the port to use in the LDAP session (defaults to 636 when
+ # "ldap ssl = on")
+ ldap port = 389
+
+ # specify the base DN to use when searching the directory
+ ldap suffix = "ou=people,dc=samba,dc=org"
+
+ # generally the default ldap search filter is ok
+ # ldap filter = "(&#38;(uid=%u)(objectclass=sambaAccount))"</PRE
+></TD
+></TR
+></TABLE
+></P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H1
+CLASS="SECT1"
+><A
+NAME="AEN1734"
+>9.6. Security and sambaAccount</A
+></H1
+><P
+>There are two important points to remember when discussing the security
+of sambaAccount entries in the directory.</P
+><P
+></P
+><UL
+><LI
+><P
+><EM
+>Never</EM
+> retrieve the lmPassword or
+ ntPassword attribute values over an unencrypted LDAP session.</P
+></LI
+><LI
+><P
+><EM
+>Never</EM
+> allow non-admin users to
+ view the lmPassword or ntPassword attribute values.</P
+></LI
+></UL
+><P
+>These password hashes are clear text equivalents and can be used to impersonate
+the user without deriving the original clear text strings.</P
+><P
+>To remedy the first security issue, the "ldap ssl" smb.conf parameter defaults
+to require an encrypted session (<B
+CLASS="COMMAND"
+>ldap ssl = on</B
+>) using
+the default port of 636
+when contacting the directory server. When using an OpenLDAP 2.0 server, it
+is possible to use the use the StartTLS LDAP extended operation in the place of
+LDAPS. In either case, you are strongly discouraged to disable this security
+(<B
+CLASS="COMMAND"
+>ldap ssl = off</B
+>).</P
+><P
+>The second security precaution is to prevent non-administrative users from
+harvesting password hashes from the directory. This can be done using the
+following ACL in <TT
+CLASS="FILENAME"
+>slapd.conf</TT
+>:</P
+><P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>## allow users to update their own password, but not to browse others
+access to attrs=userPassword,lmPassword,ntPassword
+ by self write
+ by * auth</PRE
+></TD
+></TR
+></TABLE
+></P
+><P
+>You may of course, add in write access to administrative DN's as necessary.</P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H1
+CLASS="SECT1"
+><A
+NAME="AEN1753"
+>9.7. </A
+></H1
+><P
+>There are currently four sambaAccount attributes which map directly onto
+<TT
+CLASS="FILENAME"
+>smb.conf</TT
+> parameters.</P
+><P
+></P
+><UL
+><LI
+><P
+>smbHome -&#62; "logon home"</P
+></LI
+><LI
+><P
+>profilePath -&#62; "logon path"</P
+></LI
+><LI
+><P
+>homeDrive -&#62; "logon drive"</P
+></LI
+><LI
+><P
+>scriptPath -&#62; "logon script"</P
+></LI
+></UL
+><P
+>First of all, these parameters are only used when Samba is acting as a
+PDC or a domain (refer to the <A
+HREF="Samba-PDC-HOWTO.html"
+TARGET="_top"
+>Samba-PDC-HOWTO</A
+>
+for details on how to configure Samba as a Primary Domain Controller).
+Furthermore, these attributes are only stored with the sambaAccount entry if
+the values are non-default values. For example, assume TASHTEGO has now been
+configured as a PDC and that <B
+CLASS="COMMAND"
+>logon home = \\%L\%u</B
+> was defined in
+its <TT
+CLASS="FILENAME"
+>smb.conf</TT
+> file. When a user named "becky" logons to the domain,
+the <TT
+CLASS="PARAMETER"
+><I
+>logon home</I
+></TT
+> string is expanded to \\TASHTEGO\becky.</P
+><P
+>If the smbHome attribute exists in the entry "uid=becky,ou=people,dc=samba,dc=org",
+this value is used. However, if this attribute does not exist, then the value
+of the <TT
+CLASS="PARAMETER"
+><I
+>logon home</I
+></TT
+> parameter is used in its place. Samba
+will only write the attribute value to the directory entry is the value is
+something other than the default (e.g. \\MOBY\becky).</P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H1
+CLASS="SECT1"
+><A
+NAME="AEN1773"
+>9.8. Example LDIF Entries for a sambaAccount</A
+></H1
+><P
+>The following is a working LDIF with the inclusion of the posixAccount objectclass:</P
+><P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>dn: uid=guest2, ou=people,dc=plainjoe,dc=org
+ntPassword: 878D8014606CDA29677A44EFA1353FC7
+pwdMustChange: 2147483647
+primaryGroupID: 1201
+lmPassword: 552902031BEDE9EFAAD3B435B51404EE
+pwdLastSet: 1010179124
+logonTime: 0
+objectClass: sambaAccount
+uid: guest2
+kickoffTime: 2147483647
+acctFlags: [UX ]
+logoffTime: 2147483647
+rid: 19006
+pwdCanChange: 0</PRE
+></TD
+></TR
+></TABLE
+></P
+><P
+>The following is an LDIF entry for using both the sambaAccount and
+posixAccount objectclasses:</P
+><P
+><TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="PROGRAMLISTING"
+>dn: uid=gcarter, ou=people,dc=plainjoe,dc=org
+logonTime: 0
+displayName: Gerald Carter
+lmPassword: 552902031BEDE9EFAAD3B435B51404EE
+primaryGroupID: 1201
+objectClass: posixAccount
+objectClass: sambaAccount
+acctFlags: [UX ]
+userPassword: {crypt}BpM2ej8Rkzogo
+uid: gcarter
+uidNumber: 9000
+cn: Gerald Carter
+loginShell: /bin/bash
+logoffTime: 2147483647
+gidNumber: 100
+kickoffTime: 2147483647
+pwdLastSet: 1010179230
+rid: 19000
+homeDirectory: /home/tashtego/gcarter
+pwdCanChange: 0
+pwdMustChange: 2147483647
+ntPassword: 878D8014606CDA29677A44EFA1353FC7</PRE
+></TD
+></TR
+></TABLE
+></P
+></DIV
+><DIV
+CLASS="SECT1"
+><HR><H1
+CLASS="SECT1"
+><A
+NAME="AEN1781"
+>9.9. Comments</A
+></H1
+><P
+>Please mail all comments regarding this HOWTO to <A
+HREF="mailto:jerry@samba.org"
+TARGET="_top"
+>jerry@samba.org</A
+>. This documents was
+last updated to reflect the Samba 2.2.3 release.&#13;</P
+></DIV
+></DIV
+><DIV
+CLASS="CHAPTER"
+><HR><H1
+><A
+NAME="WINBIND"
+>Chapter 10. Unified Logons between Windows NT and UNIX using Winbind</A
+></H1
+><DIV
+CLASS="SECT1"
+><H1
+CLASS="SECT1"
+><A
+NAME="AEN1810"
+>10.1. Abstract</A
></H1
><P
>Integration of UNIX and Microsoft Windows NT through
@@ -7864,8 +8599,8 @@ CLASS="SECT1"
><HR><H1
CLASS="SECT1"
><A
-NAME="AEN1656"
->9.2. Introduction</A
+NAME="AEN1814"
+>10.2. Introduction</A
></H1
><P
>It is well known that UNIX and Microsoft Windows NT have
@@ -7918,8 +8653,8 @@ CLASS="SECT1"
><HR><H1
CLASS="SECT1"
><A
-NAME="AEN1669"
->9.3. What Winbind Provides</A
+NAME="AEN1827"
+>10.3. What Winbind Provides</A
></H1
><P
>Winbind unifies UNIX and Windows NT account management by
@@ -7960,8 +8695,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1676"
->9.3.1. Target Uses</A
+NAME="AEN1834"
+>10.3.1. Target Uses</A
></H2
><P
>Winbind is targeted at organizations that have an
@@ -7984,8 +8719,8 @@ CLASS="SECT1"
><HR><H1
CLASS="SECT1"
><A
-NAME="AEN1680"
->9.4. How Winbind Works</A
+NAME="AEN1838"
+>10.4. How Winbind Works</A
></H1
><P
>The winbind system is designed around a client/server
@@ -8004,8 +8739,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1685"
->9.4.1. Microsoft Remote Procedure Calls</A
+NAME="AEN1843"
+>10.4.1. Microsoft Remote Procedure Calls</A
></H2
><P
>Over the last two years, efforts have been underway
@@ -8030,8 +8765,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1689"
->9.4.2. Name Service Switch</A
+NAME="AEN1847"
+>10.4.2. Name Service Switch</A
></H2
><P
>The Name Service Switch, or NSS, is a feature that is
@@ -8110,8 +8845,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1705"
->9.4.3. Pluggable Authentication Modules</A
+NAME="AEN1863"
+>10.4.3. Pluggable Authentication Modules</A
></H2
><P
>Pluggable Authentication Modules, also known as PAM,
@@ -8159,8 +8894,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1713"
->9.4.4. User and Group ID Allocation</A
+NAME="AEN1871"
+>10.4.4. User and Group ID Allocation</A
></H2
><P
>When a user or group is created under Windows NT
@@ -8185,8 +8920,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1717"
->9.4.5. Result Caching</A
+NAME="AEN1875"
+>10.4.5. Result Caching</A
></H2
><P
>An active system can generate a lot of user and group
@@ -8208,8 +8943,8 @@ CLASS="SECT1"
><HR><H1
CLASS="SECT1"
><A
-NAME="AEN1720"
->9.5. Installation and Configuration</A
+NAME="AEN1878"
+>10.5. Installation and Configuration</A
></H1
><P
>Many thanks to John Trostel <A
@@ -8227,8 +8962,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1725"
->9.5.1. Introduction</A
+NAME="AEN1883"
+>10.5.1. Introduction</A
></H2
><P
>This HOWTO describes the procedures used to get winbind up and
@@ -8278,8 +9013,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1738"
->9.5.2. Requirements</A
+NAME="AEN1896"
+>10.5.2. Requirements</A
></H2
><P
>If you have a samba configuration file that you are currently
@@ -8336,8 +9071,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1752"
->9.5.3. Testing Things Out</A
+NAME="AEN1910"
+>10.5.3. Testing Things Out</A
></H2
><P
>Before starting, it is probably best to kill off all the SAMBA
@@ -8381,8 +9116,8 @@ CLASS="SECT3"
><HR><H3
CLASS="SECT3"
><A
-NAME="AEN1763"
->9.5.3.1. Configure and compile SAMBA</A
+NAME="AEN1921"
+>10.5.3.1. Configure and compile SAMBA</A
></H3
><P
>The configuration and compilation of SAMBA is pretty straightforward.
@@ -8456,8 +9191,8 @@ CLASS="SECT3"
><HR><H3
CLASS="SECT3"
><A
-NAME="AEN1782"
->9.5.3.2. Configure <TT
+NAME="AEN1940"
+>10.5.3.2. Configure <TT
CLASS="FILENAME"
>nsswitch.conf</TT
> and the
@@ -8546,8 +9281,8 @@ CLASS="SECT3"
><HR><H3
CLASS="SECT3"
><A
-NAME="AEN1807"
->9.5.3.3. Configure smb.conf</A
+NAME="AEN1965"
+>10.5.3.3. Configure smb.conf</A
></H3
><P
>Several parameters are needed in the smb.conf file to control
@@ -8630,8 +9365,8 @@ CLASS="SECT3"
><HR><H3
CLASS="SECT3"
><A
-NAME="AEN1823"
->9.5.3.4. Join the SAMBA server to the PDC domain</A
+NAME="AEN1981"
+>10.5.3.4. Join the SAMBA server to the PDC domain</A
></H3
><P
>Enter the following command to make the SAMBA server join the
@@ -8676,8 +9411,8 @@ CLASS="SECT3"
><HR><H3
CLASS="SECT3"
><A
-NAME="AEN1834"
->9.5.3.5. Start up the winbindd daemon and test it!</A
+NAME="AEN1992"
+>10.5.3.5. Start up the winbindd daemon and test it!</A
></H3
><P
>Eventually, you will want to modify your smb startup script to
@@ -8817,8 +9552,8 @@ CLASS="SECT3"
><HR><H3
CLASS="SECT3"
><A
-NAME="AEN1870"
->9.5.3.6. Fix the <TT
+NAME="AEN2028"
+>10.5.3.6. Fix the <TT
CLASS="FILENAME"
>/etc/rc.d/init.d/smb</TT
> startup files</A
@@ -8947,8 +9682,8 @@ CLASS="SECT3"
><HR><H3
CLASS="SECT3"
><A
-NAME="AEN1892"
->9.5.3.7. Configure Winbind and PAM</A
+NAME="AEN2050"
+>10.5.3.7. Configure Winbind and PAM</A
></H3
><P
>If you have made it this far, you know that winbindd and samba are working
@@ -9169,8 +9904,8 @@ CLASS="SECT1"
><HR><H1
CLASS="SECT1"
><A
-NAME="AEN1939"
->9.6. Limitations</A
+NAME="AEN2097"
+>10.6. Limitations</A
></H1
><P
>Winbind has a number of limitations in its current
@@ -9210,8 +9945,8 @@ CLASS="SECT1"
><HR><H1
CLASS="SECT1"
><A
-NAME="AEN1949"
->9.7. Conclusion</A
+NAME="AEN2107"
+>10.7. Conclusion</A
></H1
><P
>The winbind system, through the use of the Name Service
@@ -9227,23 +9962,23 @@ CLASS="CHAPTER"
><HR><H1
><A
NAME="OS2"
->Chapter 10. OS2 Client HOWTO</A
+>Chapter 11. OS2 Client HOWTO</A
></H1
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
-NAME="AEN1963"
->10.1. FAQs</A
+NAME="AEN2121"
+>11.1. FAQs</A
></H1
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
-NAME="AEN1965"
->10.1.1. How can I configure OS/2 Warp Connect or
+NAME="AEN2123"
+>11.1.1. How can I configure OS/2 Warp Connect or
OS/2 Warp 4 as a client for Samba?</A
></H2
><P
@@ -9301,8 +10036,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1980"
->10.1.2. How can I configure OS/2 Warp 3 (not Connect),
+NAME="AEN2138"
+>11.1.2. How can I configure OS/2 Warp 3 (not Connect),
OS/2 1.2, 1.3 or 2.x for Samba?</A
></H2
><P
@@ -9354,8 +10089,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1989"
->10.1.3. Are there any other issues when OS/2 (any version)
+NAME="AEN2147"
+>11.1.3. Are there any other issues when OS/2 (any version)
is used as a client?</A
></H2
><P
@@ -9376,8 +10111,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN1993"
->10.1.4. How do I get printer driver download working
+NAME="AEN2151"
+>11.1.4. How do I get printer driver download working
for OS/2 clients?</A
></H2
><P
@@ -9425,15 +10160,15 @@ CLASS="CHAPTER"
><HR><H1
><A
NAME="CVS-ACCESS"
->Chapter 11. HOWTO Access Samba source code via CVS</A
+>Chapter 12. HOWTO Access Samba source code via CVS</A
></H1
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
-NAME="AEN2009"
->11.1. Introduction</A
+NAME="AEN2167"
+>12.1. Introduction</A
></H1
><P
>Samba is developed in an open environment. Developers use CVS
@@ -9454,8 +10189,8 @@ CLASS="SECT1"
><HR><H1
CLASS="SECT1"
><A
-NAME="AEN2014"
->11.2. CVS Access to samba.org</A
+NAME="AEN2172"
+>12.2. CVS Access to samba.org</A
></H1
><P
>The machine samba.org runs a publicly accessible CVS
@@ -9467,8 +10202,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN2017"
->11.2.1. Access via CVSweb</A
+NAME="AEN2175"
+>12.2.1. Access via CVSweb</A
></H2
><P
>You can access the source code via your
@@ -9488,8 +10223,8 @@ CLASS="SECT2"
><HR><H2
CLASS="SECT2"
><A
-NAME="AEN2022"
->11.2.2. Access via cvs</A
+NAME="AEN2180"
+>12.2.2. Access via cvs</A
></H2
><P
>You can also access the source code via a
@@ -9594,7 +10329,7 @@ CLASS="COMMAND"
></DIV
><HR><H1
><A
-NAME="AEN2050"
+NAME="AEN2208"
>Index</A
></H1
><DL