diff options
author | Gerald W. Carter <jerry@samba.org> | 2008-04-22 10:09:40 -0500 |
---|---|---|
committer | Gerald W. Carter <jerry@samba.org> | 2008-04-23 08:47:48 -0500 |
commit | 8f8a9f01909ba29e2b781310baeeaaddc3f15f0d (patch) | |
tree | 90c6b720ad3a7bc815245c0ef28820424f89d658 /docs-xml/smbdotconf | |
parent | 197238246389c40edc60c6630d18d6913086e630 (diff) | |
download | samba-8f8a9f01909ba29e2b781310baeeaaddc3f15f0d.tar.gz samba-8f8a9f01909ba29e2b781310baeeaaddc3f15f0d.tar.bz2 samba-8f8a9f01909ba29e2b781310baeeaaddc3f15f0d.zip |
Moving docs tree to docs-xml to make room for generated docs in the release tarball.
(This used to be commit 9f672c26d63955f613088489c6efbdc08b5b2d14)
Diffstat (limited to 'docs-xml/smbdotconf')
356 files changed, 9748 insertions, 0 deletions
diff --git a/docs-xml/smbdotconf/base/bindinterfacesonly.xml b/docs-xml/smbdotconf/base/bindinterfacesonly.xml new file mode 100644 index 0000000000..bccac4a0da --- /dev/null +++ b/docs-xml/smbdotconf/base/bindinterfacesonly.xml @@ -0,0 +1,69 @@ +<samba:parameter name="bind interfaces only" + type="boolean" + context="G" + advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This global parameter allows the Samba admin + to limit what interfaces on a machine will serve SMB requests. It + affects file service <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> and name service <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> in a slightly different ways.</para> + + <para> + For name service it causes <command moreinfo="none">nmbd</command> to bind to ports 137 and 138 on the + interfaces listed in the <smbconfoption name="interfaces"/> parameter. <command moreinfo="none">nmbd</command> + also binds to the "all addresses" interface (0.0.0.0) on ports 137 and 138 for the purposes of + reading broadcast messages. If this option is not set then <command moreinfo="none">nmbd</command> will + service name requests on all of these sockets. If <smbconfoption name="bind interfaces only"/> is set then + <command moreinfo="none">nmbd</command> will check the source address of any packets coming in on the + broadcast sockets and discard any that don't match the broadcast addresses of the interfaces in the + <smbconfoption name="interfaces"/> parameter list. As unicast packets are received on the other sockets it + allows <command moreinfo="none">nmbd</command> to refuse to serve names to machines that send packets that + arrive through any interfaces not listed in the <smbconfoption name="interfaces"/> list. IP Source address + spoofing does defeat this simple check, however, so it must not be used seriously as a security feature for + <command moreinfo="none">nmbd</command>. + </para> + + <para> + For file service it causes <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> to bind only to the interface list given in the <smbconfoption + name="interfaces"/> parameter. This restricts the networks that <command moreinfo="none">smbd</command> will + serve to packets coming in those interfaces. Note that you should not use this parameter for machines that + are serving PPP or other intermittent or non-broadcast network interfaces as it will not cope with + non-permanent interfaces. + </para> + + <para> + If <smbconfoption name="bind interfaces only"/> is set then unless the network address + <emphasis>127.0.0.1</emphasis> is added to the <smbconfoption name="interfaces"/> parameter list + <citerefentry><refentrytitle>smbpasswd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> and + <citerefentry><refentrytitle>swat</refentrytitle> <manvolnum>8</manvolnum></citerefentry> may not work as + expected due to the reasons covered below. + </para> + + <para> + To change a users SMB password, the <command moreinfo="none">smbpasswd</command> by default connects to the + <emphasis>localhost - 127.0.0.1</emphasis> address as an SMB client to issue the password change request. If + <smbconfoption name="bind interfaces only"/> is set then unless the network address + <emphasis>127.0.0.1</emphasis> is added to the <smbconfoption name="interfaces"/> parameter list then <command + moreinfo="none"> smbpasswd</command> will fail to connect in it's default mode. <command + moreinfo="none">smbpasswd</command> can be forced to use the primary IP interface of the local host by using + its <citerefentry><refentrytitle>smbpasswd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> <parameter + moreinfo="none">-r <replaceable>remote machine</replaceable></parameter> parameter, with <replaceable>remote + machine</replaceable> set to the IP name of the primary interface of the local host. + </para> + + <para> + The <command moreinfo="none">swat</command> status page tries to connect with <command + moreinfo="none">smbd</command> and <command moreinfo="none">nmbd</command> at the address + <emphasis>127.0.0.1</emphasis> to determine if they are running. Not adding <emphasis>127.0.0.1</emphasis> + will cause <command moreinfo="none"> smbd</command> and <command moreinfo="none">nmbd</command> to always show + "not running" even if they really are. This can prevent <command moreinfo="none"> swat</command> + from starting/stopping/restarting <command moreinfo="none">smbd</command> and <command + moreinfo="none">nmbd</command>. + </para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/comment.xml b/docs-xml/smbdotconf/base/comment.xml new file mode 100644 index 0000000000..ce3b574ddf --- /dev/null +++ b/docs-xml/smbdotconf/base/comment.xml @@ -0,0 +1,18 @@ +<samba:parameter name="comment" + context="S" + type="string" + basic="1" advanced="1" share="1" print="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a text field that is seen next to a share + when a client does a queries the server, either via the network + neighborhood or via <command moreinfo="none">net view</command> to list what shares + are available.</para> + + <para>If you want to set the string that is displayed next to the + machine name then see the <smbconfoption name="server string"/> parameter.</para> + +</description> +<value type="default"><comment>No comment</comment></value> +<value type="example">Fred's Files</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/configbackend.xml b/docs-xml/smbdotconf/base/configbackend.xml new file mode 100644 index 0000000000..f9da134555 --- /dev/null +++ b/docs-xml/smbdotconf/base/configbackend.xml @@ -0,0 +1,26 @@ +<samba:parameter name="config backend" + context="G" + type="enum" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This controls the backend for storing the configuration. + Possible values are <emphasis>file</emphasis> (the default) + and <emphasis>registry</emphasis>. + When <smbconfoption name="config backend">registry</smbconfoption> + is encountered while loading <emphasis>smb.conf</emphasis>, + the configuration read so far is dropped and the global + options are read from registry instead. So this triggers a + registry only configuration. Share definitions are not read + immediately but instead <parameter>registry + shares</parameter> is set to <emphasis>yes</emphasis>. + </para> + <para> + Note: This option can not be set inside the registry + configuration itself. + </para> +</description> +<value type="default">file</value> +<value type="example">registry</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/displaycharset.xml b/docs-xml/smbdotconf/base/displaycharset.xml new file mode 100644 index 0000000000..5bace5b6b0 --- /dev/null +++ b/docs-xml/smbdotconf/base/displaycharset.xml @@ -0,0 +1,17 @@ +<samba:parameter name="display charset" + type="string" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Specifies the charset that samba will use to print messages to stdout and stderr. + The default value is "LOCALE", which means automatically set, depending on the + current locale. The value should generally be the same as the value of the parameter + <smbconfoption name="unix charset"/>. + </para> +</description> + +<value type="default">"LOCALE" or "ASCII" (depending on the system)</value> +<value type="example">UTF8</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/doscharset.xml b/docs-xml/smbdotconf/base/doscharset.xml new file mode 100644 index 0000000000..4b5872ce38 --- /dev/null +++ b/docs-xml/smbdotconf/base/doscharset.xml @@ -0,0 +1,17 @@ +<samba:parameter name="dos charset" + type="string" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>DOS SMB clients assume the server has + the same charset as they do. This option specifies which + charset Samba should talk to DOS clients. + </para> + + <para>The default depends on which charsets you have installed. + Samba tries to use charset 850 but falls back to ASCII in + case it is not available. Run <citerefentry><refentrytitle>testparm</refentrytitle> + <manvolnum>1</manvolnum></citerefentry> to check the default on your system.</para> +</description> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/interfaces.xml b/docs-xml/smbdotconf/base/interfaces.xml new file mode 100644 index 0000000000..2b13200ea6 --- /dev/null +++ b/docs-xml/smbdotconf/base/interfaces.xml @@ -0,0 +1,55 @@ +<samba:parameter name="interfaces" + context="G" + type="list" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option allows you to override the default + network interfaces list that Samba will use for browsing, name + registration and other NBT traffic. By default Samba will query + the kernel for the list of all active interfaces and use any + interfaces except 127.0.0.1 that are broadcast capable.</para> + + <para>The option takes a list of interface strings. Each string + can be in any of the following forms:</para> + + <itemizedlist> + <listitem><para>a network interface name (such as eth0). + This may include shell-like wildcards so eth* will match + any interface starting with the substring "eth"</para></listitem> + + <listitem><para>an IP address. In this case the netmask is + determined from the list of interfaces obtained from the + kernel</para></listitem> + + <listitem><para>an IP/mask pair. </para></listitem> + + <listitem><para>a broadcast/mask pair.</para></listitem> + </itemizedlist> + + <para>The "mask" parameters can either be a bit length (such + as 24 for a C class network) or a full netmask in dotted + decimal form.</para> + + <para>The "IP" parameters above can either be a full dotted + decimal IP address or a hostname which will be looked up via + the OS's normal hostname resolution mechanisms.</para> + + <para> + By default Samba enables all active interfaces that are broadcast capable + except the loopback adaptor (IP address 127.0.0.1). + </para> + + <para> + The example below configures three network interfaces corresponding + to the eth0 device and IP addresses 192.168.2.10 and 192.168.3.10. + The netmasks of the latter two interfaces would be set to 255.255.255.0. + </para> + +</description> +<related>bind interfaces only</related> + +<value type="example">eth0 192.168.2.10/24 192.168.3.10/255.255.255.0</value> + +<value type="default"/> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/netbiosaliases.xml b/docs-xml/smbdotconf/base/netbiosaliases.xml new file mode 100644 index 0000000000..5d58fc2397 --- /dev/null +++ b/docs-xml/smbdotconf/base/netbiosaliases.xml @@ -0,0 +1,17 @@ +<samba:parameter name="netbios aliases" + context="G" + type="list" + advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>This is a list of NetBIOS names that nmbd will + advertise as additional names by which the Samba server is known. This allows one machine + to appear in browse lists under multiple names. If a machine is acting as a browse server + or logon server none of these names will be advertised as either browse server or logon + servers, only the primary name of the machine will be advertised with these capabilities. + </para> +</description> +<related>netbios name</related> +<value type="default"><comment>empty string (no additional names)</comment></value> +<value type="example">TEST TEST1 TEST2</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/netbiosname.xml b/docs-xml/smbdotconf/base/netbiosname.xml new file mode 100644 index 0000000000..3e00bf16b9 --- /dev/null +++ b/docs-xml/smbdotconf/base/netbiosname.xml @@ -0,0 +1,22 @@ +<samba:parameter name="netbios name" + context="G" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This sets the NetBIOS name by which a Samba server is known. By default it is the same as the first component + of the host's DNS name. If a machine is a browse server or logon server this name (or the first component of + the hosts DNS name) will be the name that these services are advertised under. + </para> + + <para> + There is a bug in Samba-3 that breaks operation of browsing and access to shares if the netbios name + is set to the literal name <literal>PIPE</literal>. To avoid this problem, do not name your Samba-3 + server <literal>PIPE</literal>. + </para> +</description> + +<related>netbios aliases</related> +<value type="default"><comment>machine DNS name</comment></value> +<value type="example">MYNAME</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/netbiosscope.xml b/docs-xml/smbdotconf/base/netbiosscope.xml new file mode 100644 index 0000000000..253d0b5a16 --- /dev/null +++ b/docs-xml/smbdotconf/base/netbiosscope.xml @@ -0,0 +1,12 @@ +<samba:parameter name="netbios scope" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This sets the NetBIOS scope that Samba will + operate under. This should not be set unless every machine + on your LAN also sets this value.</para> +</description> +<value type="default"></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/path.xml b/docs-xml/smbdotconf/base/path.xml new file mode 100644 index 0000000000..7828e62441 --- /dev/null +++ b/docs-xml/smbdotconf/base/path.xml @@ -0,0 +1,31 @@ +<samba:parameter name="path" + context="S" + basic="1" advanced="1" share="1" print="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>directory</synonym> +<description> + <para>This parameter specifies a directory to which + the user of the service is to be given access. In the case of + printable services, this is where print data will spool prior to + being submitted to the host for printing.</para> + + <para>For a printable service offering guest access, the service + should be readonly and the path should be world-writeable and + have the sticky bit set. This is not mandatory of course, but + you probably won't get the results you expect if you do + otherwise.</para> + + <para>Any occurrences of <parameter moreinfo="none">%u</parameter> in the path + will be replaced with the UNIX username that the client is using + on this connection. Any occurrences of <parameter moreinfo="none">%m</parameter> + will be replaced by the NetBIOS name of the machine they are + connecting from. These replacements are very useful for setting + up pseudo home directories for users.</para> + +<para>Note that this path will be based on <smbconfoption name="root dir"/> + if one was specified.</para> + </description> + + <value type="default"></value> + <value type="example">/home/fred</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/realm.xml b/docs-xml/smbdotconf/base/realm.xml new file mode 100644 index 0000000000..98c7e285e6 --- /dev/null +++ b/docs-xml/smbdotconf/base/realm.xml @@ -0,0 +1,15 @@ +<samba:parameter name="realm" + context="G" + type="string" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option specifies the kerberos realm to use. The realm is + used as the ADS equivalent of the NT4 <command moreinfo="none">domain</command>. It + is usually set to the DNS name of the kerberos server. + </para> +</description> + +<value type="default"></value> +<value type="example">mysambabox.mycompany.com</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/serverstring.xml b/docs-xml/smbdotconf/base/serverstring.xml new file mode 100644 index 0000000000..275e31ac49 --- /dev/null +++ b/docs-xml/smbdotconf/base/serverstring.xml @@ -0,0 +1,21 @@ +<samba:parameter name="server string" + context="G" + basic="1" advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This controls what string will show up in the printer comment box in print + manager and next to the IPC connection in <command moreinfo="none">net view</command>. It + can be any string that you wish to show to your users.</para> + + <para>It also sets what will appear in browse lists next + to the machine name.</para> + + <para>A <parameter moreinfo="none">%v</parameter> will be replaced with the Samba + version number.</para> + + <para>A <parameter moreinfo="none">%h</parameter> will be replaced with the + hostname.</para> +</description> +<value type="default">Samba %v</value> +<value type="example">University of GNUs Samba Server</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/unixcharset.xml b/docs-xml/smbdotconf/base/unixcharset.xml new file mode 100644 index 0000000000..c4032c2ea2 --- /dev/null +++ b/docs-xml/smbdotconf/base/unixcharset.xml @@ -0,0 +1,19 @@ +<samba:parameter name="unix charset" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Specifies the charset the unix machine + Samba runs on uses. Samba needs to know this in order to be able to + convert text to the charsets other SMB clients use. + </para> + + <para>This is also the charset Samba will use when specifying arguments + to scripts that it invokes. + </para> +</description> + +<value type="default">UTF8</value> +<value type="example">ASCII</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/base/workgroup.xml b/docs-xml/smbdotconf/base/workgroup.xml new file mode 100644 index 0000000000..d62c3d5e12 --- /dev/null +++ b/docs-xml/smbdotconf/base/workgroup.xml @@ -0,0 +1,15 @@ +<samba:parameter name="workgroup" + context="G" + type="string" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This controls what workgroup your server will + appear to be in when queried by clients. Note that this parameter + also controls the Domain name used with + the <smbconfoption name="security">domain</smbconfoption> + setting.</para> +</description> +<value type="default">WORKGROUP</value> +<value type="example">MYGROUP</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/administrative_share.xml b/docs-xml/smbdotconf/browse/administrative_share.xml new file mode 100644 index 0000000000..95db5f1c85 --- /dev/null +++ b/docs-xml/smbdotconf/browse/administrative_share.xml @@ -0,0 +1,16 @@ +<samba:parameter name="administrative share" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>If this parameter is set to <constant>yes</constant> for + a share, then the share will be an administrative share. The Administrative + Shares are the default network shares created by all Windows NT-based + operating systems. These are shares like C$, D$ or ADMIN$. The type of these + shares is STYPE_DISKTREE_HIDDEN.</para> + + <para>See the section below on <smbconfoption name="security"/> for more + information about this option.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/browseable.xml b/docs-xml/smbdotconf/browse/browseable.xml new file mode 100644 index 0000000000..e58e1912e2 --- /dev/null +++ b/docs-xml/smbdotconf/browse/browseable.xml @@ -0,0 +1,11 @@ +<samba:parameter name="browseable" context="S" type="boolean" + basic="1" advanced="1" print="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>browsable</synonym> +<description> + <para>This controls whether this share is seen in + the list of available shares in a net view and in the browse list.</para> + +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/browselist.xml b/docs-xml/smbdotconf/browse/browselist.xml new file mode 100644 index 0000000000..dd858b7faf --- /dev/null +++ b/docs-xml/smbdotconf/browse/browselist.xml @@ -0,0 +1,15 @@ +<samba:parameter name="browse list" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This controls whether <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will serve a browse list to + a client doing a <command moreinfo="none">NetServerEnum</command> call. Normally + set to <constant>yes</constant>. You should never need to change + this.</para> + +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/domainmaster.xml b/docs-xml/smbdotconf/browse/domainmaster.xml new file mode 100644 index 0000000000..eee53d6646 --- /dev/null +++ b/docs-xml/smbdotconf/browse/domainmaster.xml @@ -0,0 +1,42 @@ +<samba:parameter name="domain master" + type="boolean" + context="G" + basic="1" advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Tell <citerefentry><refentrytitle>smbd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> to enable + WAN-wide browse list collation. Setting this option causes <command moreinfo="none">nmbd</command> to claim a + special domain specific NetBIOS name that identifies it as a domain master browser for its given + <smbconfoption name="workgroup"/>. Local master browsers in the same <smbconfoption name="workgroup"/> on + broadcast-isolated subnets will give this <command moreinfo="none">nmbd</command> their local browse lists, + and then ask <citerefentry><refentrytitle>smbd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> for a + complete copy of the browse list for the whole wide area network. Browser clients will then contact their + local master browser, and will receive the domain-wide browse list, instead of just the list for their + broadcast-isolated subnet. + </para> + + <para> + Note that Windows NT Primary Domain Controllers expect to be able to claim this <smbconfoption + name="workgroup"/> specific special NetBIOS name that identifies them as domain master browsers for that + <smbconfoption name="workgroup"/> by default (i.e. there is no way to prevent a Windows NT PDC from attempting + to do this). This means that if this parameter is set and <command moreinfo="none">nmbd</command> claims the + special name for a <smbconfoption name="workgroup"/> before a Windows NT PDC is able to do so then cross + subnet browsing will behave strangely and may fail. + </para> + + <para> + If <smbconfoption name="domain logons">yes</smbconfoption>, then the default behavior is to enable the + <smbconfoption name="domain master"/> parameter. If <smbconfoption name="domain logons"/> is not enabled (the + default setting), then neither will <smbconfoption name="domain master"/> be enabled by default. + </para> + + <para> + When <smbconfoption name="domain logons">Yes</smbconfoption> the default setting for this parameter is + Yes, with the result that Samba will be a PDC. If <smbconfoption name="domain master">No</smbconfoption>, + Samba will function as a BDC. In general, this parameter should be set to 'No' only on a BDC. + </para> + +</description> +<value type="default">auto</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/enhancedbrowsing.xml b/docs-xml/smbdotconf/browse/enhancedbrowsing.xml new file mode 100644 index 0000000000..13f2cd6446 --- /dev/null +++ b/docs-xml/smbdotconf/browse/enhancedbrowsing.xml @@ -0,0 +1,28 @@ +<samba:parameter name="enhanced browsing" + context="G" + advanced="1" developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option enables a couple of enhancements to + cross-subnet browse propagation that have been added in Samba + but which are not standard in Microsoft implementations. + </para> + + <para>The first enhancement to browse propagation consists of a regular + wildcard query to a Samba WINS server for all Domain Master Browsers, + followed by a browse synchronization with each of the returned + DMBs. The second enhancement consists of a regular randomised browse + synchronization with all currently known DMBs.</para> + + <para>You may wish to disable this option if you have a problem with empty + workgroups not disappearing from browse lists. Due to the restrictions + of the browse protocols these enhancements can cause a empty workgroup + to stay around forever which can be annoying.</para> + + <para>In general you should leave this option enabled as it makes + cross-subnet browse propagation much more reliable.</para> + +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/lmannounce.xml b/docs-xml/smbdotconf/browse/lmannounce.xml new file mode 100644 index 0000000000..92365d8e50 --- /dev/null +++ b/docs-xml/smbdotconf/browse/lmannounce.xml @@ -0,0 +1,26 @@ +<samba:parameter name="lm announce" + context="G" + type="boolean-auto" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter determines if <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will produce Lanman announce + broadcasts that are needed by OS/2 clients in order for them to see + the Samba server in their browse list. This parameter can have three + values, <constant>yes</constant>, <constant>no</constant>, or + <constant>auto</constant>. The default is <constant>auto</constant>. + If set to <constant>no</constant> Samba will never produce these + broadcasts. If set to <constant>yes</constant> Samba will produce + Lanman announce broadcasts at a frequency set by the parameter + <smbconfoption name="lm interval"/>. If set to <constant>auto</constant> + Samba will not send Lanman announce broadcasts by default but will + listen for them. If it hears such a broadcast on the wire it will + then start sending them at a frequency set by the parameter + <smbconfoption name="lm interval"/>.</para> +</description> + +<related>lm interval</related> +<value type="default">auto</value> +<value type="example">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/lminterval.xml b/docs-xml/smbdotconf/browse/lminterval.xml new file mode 100644 index 0000000000..4f38165147 --- /dev/null +++ b/docs-xml/smbdotconf/browse/lminterval.xml @@ -0,0 +1,18 @@ +<samba:parameter name="lm interval" + context="G" + advanced="1" developer="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>If Samba is set to produce Lanman announce + broadcasts needed by OS/2 clients (see the + <smbconfoption name="lm announce"/> parameter) then this + parameter defines the frequency in seconds with which they will be + made. If this is set to zero then no Lanman announcements will be + made despite the setting of the <smbconfoption name="lm announce"/> + parameter.</para> +</description> +<related>lm announce</related> +<value type="default">60</value> +<value type="example">120</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/localmaster.xml b/docs-xml/smbdotconf/browse/localmaster.xml new file mode 100644 index 0000000000..47c7e561a1 --- /dev/null +++ b/docs-xml/smbdotconf/browse/localmaster.xml @@ -0,0 +1,21 @@ +<samba:parameter name="local master" + context="G" + basic="1" advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option allows <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> to try and become a local master browser + on a subnet. If set to <constant>no</constant> then <command moreinfo="none"> + nmbd</command> will not attempt to become a local master browser + on a subnet and will also lose in all browsing elections. By + default this value is set to <constant>yes</constant>. Setting this value to + <constant>yes</constant> doesn't mean that Samba will <emphasis>become</emphasis> the + local master browser on a subnet, just that <command moreinfo="none">nmbd</command> + will <emphasis>participate</emphasis> in elections for local master browser.</para> + + <para>Setting this value to <constant>no</constant> will cause <command + moreinfo="none">nmbd</command> <emphasis>never</emphasis> to become a local +master browser.</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/oslevel.xml b/docs-xml/smbdotconf/browse/oslevel.xml new file mode 100644 index 0000000000..7556a83051 --- /dev/null +++ b/docs-xml/smbdotconf/browse/oslevel.xml @@ -0,0 +1,26 @@ +<samba:parameter name="os level" + context="G" + type="integer" + basic="1" advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This integer value controls what level Samba advertises itself as for browse elections. The value of this + parameter determines whether <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> has a chance of becoming a local master browser for the <smbconfoption + name="workgroup"/> in the local broadcast area. +</para> + + <para><emphasis> + Note:</emphasis> By default, Samba will win a local master browsing election over all Microsoft operating + systems except a Windows NT 4.0/2000 Domain Controller. This means that a misconfigured Samba host can + effectively isolate a subnet for browsing purposes. This parameter is largely auto-configured in the Samba-3 + release series and it is seldom necessary to manually override the default setting. Please refer to + chapter 9 of the Samba-3 HOWTO document for further information regarding the use of this parameter. + <emphasis>Note:</emphasis> The maximum value for this parameter is 255. If you use higher values, counting + will start at 0! + </para> +</description> +<value type="default">20</value> +<value type="example">65</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/browse/preferredmaster.xml b/docs-xml/smbdotconf/browse/preferredmaster.xml new file mode 100644 index 0000000000..edddae8ce7 --- /dev/null +++ b/docs-xml/smbdotconf/browse/preferredmaster.xml @@ -0,0 +1,29 @@ +<samba:parameter name="preferred master" + context="G" + type="boolean-auto" + basic="1" advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>prefered master</synonym> + <description> + <para> + This boolean parameter controls if <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> is a preferred master browser for its workgroup. + </para> + + <para> + If this is set to <constant>yes</constant>, on startup, <command moreinfo="none">nmbd</command> will force + an election, and it will have a slight advantage in winning the election. It is recommended that this + parameter is used in conjunction with <smbconfoption name="domain master">yes</smbconfoption>, so that + <command moreinfo="none">nmbd</command> can guarantee becoming a domain master. + </para> + + <para> + Use this option with caution, because if there are several hosts (whether Samba servers, Windows 95 or NT) + that are preferred master browsers on the same subnet, they will each periodically and continuously attempt + to become the local master browser. This will result in unnecessary broadcast traffic and reduced browsing + capabilities. + </para> +</description> +<related>os level</related> +<value type="default">auto</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/domain/machinepasswordtimeout.xml b/docs-xml/smbdotconf/domain/machinepasswordtimeout.xml new file mode 100644 index 0000000000..a8e312ba36 --- /dev/null +++ b/docs-xml/smbdotconf/domain/machinepasswordtimeout.xml @@ -0,0 +1,23 @@ +<samba:parameter name="machine password timeout" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + + <para> + If a Samba server is a member of a Windows NT Domain (see the <smbconfoption + name="security">domain</smbconfoption> parameter) then periodically a running smbd process will try and change + the MACHINE ACCOUNT PASSWORD stored in the TDB called <filename moreinfo="none">private/secrets.tdb + </filename>. This parameter specifies how often this password will be changed, in seconds. The default is one + week (expressed in seconds), the same as a Windows NT Domain member server. + </para> + + <para> + See also <citerefentry><refentrytitle>smbpasswd</refentrytitle> <manvolnum>8</manvolnum></citerefentry>, + and the <smbconfoption name="security">domain</smbconfoption> parameter. + </para> + +</description> +<value type="default">604800</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/casesensitive.xml b/docs-xml/smbdotconf/filename/casesensitive.xml new file mode 100644 index 0000000000..ed770501cd --- /dev/null +++ b/docs-xml/smbdotconf/filename/casesensitive.xml @@ -0,0 +1,12 @@ +<samba:parameter name="case sensitive" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>casesignames</synonym> + +<description> + <para>See the discussion in the section <smbconfoption name="name mangling"/>.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/defaultcase.xml b/docs-xml/smbdotconf/filename/defaultcase.xml new file mode 100644 index 0000000000..1efb37c8b5 --- /dev/null +++ b/docs-xml/smbdotconf/filename/defaultcase.xml @@ -0,0 +1,9 @@ +<samba:parameter name="default case" + context="S" + type="string" xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>See the section on <smbconfoption name="name mangling"/>. + Also note the <smbconfoption name="short preserve case"/> parameter.</para> +</description> +<value type="default">lower</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/deletevetofiles.xml b/docs-xml/smbdotconf/filename/deletevetofiles.xml new file mode 100644 index 0000000000..31138aa8e2 --- /dev/null +++ b/docs-xml/smbdotconf/filename/deletevetofiles.xml @@ -0,0 +1,26 @@ +<samba:parameter name="delete veto files" + type="boolean" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option is used when Samba is attempting to + delete a directory that contains one or more vetoed directories + (see the <smbconfoption name="veto files"/> + option). If this option is set to <constant>no</constant> (the default) then if a vetoed + directory contains any non-vetoed files or directories then the + directory delete will fail. This is usually what you want.</para> + + <para>If this option is set to <constant>yes</constant>, then Samba + will attempt to recursively delete any files and directories within + the vetoed directory. This can be useful for integration with file + serving systems such as NetAtalk which create meta-files within + directories you might normally veto DOS/Windows users from seeing + (e.g. <filename moreinfo="none">.AppleDouble</filename>)</para> + + <para>Setting <smbconfoption name="delete veto files">yes</smbconfoption> allows these + directories to be transparently deleted when the parent directory + is deleted (so long as the user has permissions to do so).</para> +</description> +<related>veto files</related> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/hidedotfiles.xml b/docs-xml/smbdotconf/filename/hidedotfiles.xml new file mode 100644 index 0000000000..9f31f2cd5d --- /dev/null +++ b/docs-xml/smbdotconf/filename/hidedotfiles.xml @@ -0,0 +1,10 @@ +<samba:parameter name="hide dot files" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a boolean parameter that controls whether + files starting with a dot appear as hidden files.</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/hidefiles.xml b/docs-xml/smbdotconf/filename/hidefiles.xml new file mode 100644 index 0000000000..0b475053ee --- /dev/null +++ b/docs-xml/smbdotconf/filename/hidefiles.xml @@ -0,0 +1,46 @@ +<samba:parameter name="hide files" + type="string" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a list of files or directories that are not + visible but are accessible. The DOS 'hidden' attribute is applied + to any files or directories that match.</para> + + <para>Each entry in the list must be separated by a '/', + which allows spaces to be included in the entry. '*' + and '?' can be used to specify multiple files or directories + as in DOS wildcards.</para> + + <para>Each entry must be a Unix path, not a DOS path and must + not include the Unix directory separator '/'.</para> + + <para>Note that the case sensitivity option is applicable + in hiding files.</para> + + <para>Setting this parameter will affect the performance of Samba, + as it will be forced to check all files and directories for a match + as they are scanned.</para> + + <para> + The example shown above is based on files that the Macintosh + SMB client (DAVE) available from <ulink url="http://www.thursby.com"> + Thursby</ulink> creates for internal use, and also still hides + all files beginning with a dot. + </para> + + <para> + An example of us of this parameter is: +<programlisting> +hide files = /.*/DesktopFolderDB/TrashFor%m/resource.frk/ +</programlisting> + </para> +</description> + +<related>hide dot files</related> +<related>veto files</related> +<related>case sensitive</related> + +<value type="default"><comment>no file are hidden</comment></value> + +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/hidespecialfiles.xml b/docs-xml/smbdotconf/filename/hidespecialfiles.xml new file mode 100644 index 0000000000..ea2b68a66c --- /dev/null +++ b/docs-xml/smbdotconf/filename/hidespecialfiles.xml @@ -0,0 +1,14 @@ +<samba:parameter name="hide special files" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + This parameter prevents clients from seeing special files such as sockets, devices and + fifo's in directory listings. + </para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/hideunreadable.xml b/docs-xml/smbdotconf/filename/hideunreadable.xml new file mode 100644 index 0000000000..c2c1654c1c --- /dev/null +++ b/docs-xml/smbdotconf/filename/hideunreadable.xml @@ -0,0 +1,10 @@ +<samba:parameter name="hide unreadable" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>This parameter prevents clients from seeing the + existance of files that cannot be read. Defaults to off.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/hideunwriteablefiles.xml b/docs-xml/smbdotconf/filename/hideunwriteablefiles.xml new file mode 100644 index 0000000000..831e8c69c9 --- /dev/null +++ b/docs-xml/smbdotconf/filename/hideunwriteablefiles.xml @@ -0,0 +1,12 @@ +<samba:parameter name="hide unwriteable files" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter prevents clients from seeing the existance of files that cannot be written to. + Defaults to off. Note that unwriteable directories are shown as usual. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/mangledmap.xml b/docs-xml/smbdotconf/filename/mangledmap.xml new file mode 100644 index 0000000000..b4be3a80d2 --- /dev/null +++ b/docs-xml/smbdotconf/filename/mangledmap.xml @@ -0,0 +1,33 @@ +<samba:parameter name="mangled map" + type="string" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is for those who want to directly map UNIX file names which cannot be represented on + Windows/DOS. The mangling of names is not always what is needed. In particular you may have + documents with file extensions that differ between DOS and UNIX. + For example, under UNIX it is common to use <filename moreinfo="none">.html</filename> + for HTML files, whereas under Windows/DOS <filename moreinfo="none">.htm</filename> + is more commonly used. + </para> + + <para> + So to map <filename moreinfo="none">html</filename> to <filename moreinfo="none">htm</filename> + you would use: + </para> + + <para> + <smbconfoption name="mangled map">(*.html *.htm)</smbconfoption>. + </para> + + <para> + One very useful case is to remove the annoying <filename moreinfo="none">;1</filename> off + the ends of filenames on some CDROMs (only visible under some UNIXes). To do this use a map of + (*;1 *;). + </para> +</description> + +<value type="default"><comment>no mangled map</comment></value> +<value type="example">(*;1 *;)</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/manglednames.xml b/docs-xml/smbdotconf/filename/manglednames.xml new file mode 100644 index 0000000000..90bbc58667 --- /dev/null +++ b/docs-xml/smbdotconf/filename/manglednames.xml @@ -0,0 +1,58 @@ +<samba:parameter name="mangled names" + type="boolean" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This controls whether non-DOS names under UNIX + should be mapped to DOS-compatible names ("mangled") and made visible, + or whether non-DOS names should simply be ignored.</para> + + <para>See the section on <smbconfoption name="name mangling"/> for + details on how to control the mangling process.</para> + + <para>If mangling is used then the mangling algorithm is as follows:</para> + + <itemizedlist> + <listitem> + <para>The first (up to) five alphanumeric characters + before the rightmost dot of the filename are preserved, forced + to upper case, and appear as the first (up to) five characters + of the mangled name.</para> + </listitem> + + <listitem> + <para>A tilde "~" is appended to the first part of the mangled + name, followed by a two-character unique sequence, based on the + original root name (i.e., the original filename minus its final + extension). The final extension is included in the hash calculation + only if it contains any upper case characters or is longer than three + characters.</para> + + <para>Note that the character to use may be specified using + the <smbconfoption name="mangling char"/> + option, if you don't like '~'.</para> + </listitem> + + <listitem> + <para>Files whose UNIX name begins with a dot will be + presented as DOS hidden files. The mangled name will be created as + for other filenames, but with the leading dot removed and "___" as + its extension regardless of actual original extension (that's three + underscores).</para> + </listitem> + </itemizedlist> + + <para>The two-digit hash value consists of upper case alphanumeric characters.</para> + + <para>This algorithm can cause name collisions only if files + in a directory share the same first five alphanumeric characters. + The probability of such a clash is 1/1300.</para> + + <para>The name mangling (if enabled) allows a file to be + copied between UNIX directories from Windows/DOS while retaining + the long UNIX filename. UNIX files can be renamed to a new extension + from Windows/DOS and will retain the same basename. Mangled names + do not change between sessions.</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/mangleprefix.xml b/docs-xml/smbdotconf/filename/mangleprefix.xml new file mode 100644 index 0000000000..fd96c2c4fe --- /dev/null +++ b/docs-xml/smbdotconf/filename/mangleprefix.xml @@ -0,0 +1,19 @@ +<samba:parameter name="mangle prefix" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> controls the number of prefix + characters from the original name used when generating + the mangled names. A larger value will give a weaker + hash and therefore more name collisions. The minimum + value is 1 and the maximum value is 6.</para> + + <para> + mangle prefix is effective only when mangling method is hash2. + </para> +</description> +<value type="default">1</value> +<value type="example">4</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/manglingchar.xml b/docs-xml/smbdotconf/filename/manglingchar.xml new file mode 100644 index 0000000000..95b47794d1 --- /dev/null +++ b/docs-xml/smbdotconf/filename/manglingchar.xml @@ -0,0 +1,13 @@ +<samba:parameter name="mangling char" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>This controls what character is used as + the <emphasis>magic</emphasis> character in <smbconfoption name="name mangling"/>. The + default is a '~' but this may interfere with some software. Use this option to set + it to whatever you prefer. This is effective only when mangling method is hash.</para> +</description> +<value type="default">~</value> +<value type="example">^</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/manglingmethod.xml b/docs-xml/smbdotconf/filename/manglingmethod.xml new file mode 100644 index 0000000000..f6e2edaac3 --- /dev/null +++ b/docs-xml/smbdotconf/filename/manglingmethod.xml @@ -0,0 +1,18 @@ +<samba:parameter name="mangling method" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> controls the algorithm used for the generating + the mangled names. Can take two different values, "hash" and + "hash2". "hash" is the algorithm that was used + used in Samba for many years and was the default in Samba 2.2.x "hash2" is + now the default and is newer and considered a better algorithm (generates less collisions) in + the names. Many Win32 applications store the mangled names and so + changing to algorithms must not be done lightly as these applications + may break unless reinstalled.</para> +</description> +<value type="default">hash2</value> +<value type="example">hash</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/maparchive.xml b/docs-xml/smbdotconf/filename/maparchive.xml new file mode 100644 index 0000000000..ead72cf25a --- /dev/null +++ b/docs-xml/smbdotconf/filename/maparchive.xml @@ -0,0 +1,23 @@ +<samba:parameter name="map archive" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This controls whether the DOS archive attribute + should be mapped to the UNIX owner execute bit. The DOS archive bit + is set when a file has been modified since its last backup. One + motivation for this option is to keep Samba/your PC from making + any file it touches from becoming executable under UNIX. This can + be quite annoying for shared source code, documents, etc... + </para> + + <para> + Note that this requires the <smbconfoption name="create mask"/> parameter to be set such that owner + execute bit is not masked out (i.e. it must include 100). See the parameter + <smbconfoption name="create mask"/> for details. + </para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/maphidden.xml b/docs-xml/smbdotconf/filename/maphidden.xml new file mode 100644 index 0000000000..841c6876e6 --- /dev/null +++ b/docs-xml/smbdotconf/filename/maphidden.xml @@ -0,0 +1,18 @@ +<samba:parameter name="map hidden" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This controls whether DOS style hidden files should be mapped to the UNIX world execute bit. + </para> + + <para> + Note that this requires the <smbconfoption name="create mask"/> to be set such that the world execute + bit is not masked out (i.e. it must include 001). See the parameter <smbconfoption name="create mask"/> + for details. + </para> + +</description> +<value type="boolean">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/mapreadonly.xml b/docs-xml/smbdotconf/filename/mapreadonly.xml new file mode 100644 index 0000000000..3ec2d3bf27 --- /dev/null +++ b/docs-xml/smbdotconf/filename/mapreadonly.xml @@ -0,0 +1,43 @@ +<samba:parameter name="map read only" + context="S" + type="enum" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This controls how the DOS read only attribute should be mapped from a UNIX filesystem. + </para> + + <para> + This parameter can take three different values, which tell <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> how to display the read only attribute on files, where either + <smbconfoption name="store dos attributes"/> is set to <constant>No</constant>, or no extended attribute is + present. If <smbconfoption name="store dos attributes"/> is set to <constant>yes</constant> then this + parameter is <emphasis>ignored</emphasis>. This is a new parameter introduced in Samba version 3.0.21. + </para> + + <para>The three settings are :</para> + + <itemizedlist> + <listitem><para> + <constant>Yes</constant> - The read only DOS attribute is mapped to the inverse of the user + or owner write bit in the unix permission mode set. If the owner write bit is not set, the + read only attribute is reported as being set on the file. + </para></listitem> + + <listitem><para> + <constant>Permissions</constant> - The read only DOS attribute is mapped to the effective permissions of + the connecting user, as evaluated by <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> by reading the unix permissions and POSIX ACL (if present). + If the connecting user does not have permission to modify the file, the read only attribute + is reported as being set on the file. + </para></listitem> + + <listitem><para> + <constant>No</constant> - The read only DOS attribute is unaffected by permissions, and can only be set by + the <smbconfoption name="store dos attributes"/> method. This may be useful for exporting mounted CDs. + </para></listitem> + </itemizedlist> + +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/mapsystem.xml b/docs-xml/smbdotconf/filename/mapsystem.xml new file mode 100644 index 0000000000..021602d578 --- /dev/null +++ b/docs-xml/smbdotconf/filename/mapsystem.xml @@ -0,0 +1,17 @@ +<samba:parameter name="map system" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This controls whether DOS style system files should be mapped to the UNIX group execute bit. + </para> + + <para> + Note that this requires the <smbconfoption name="create mask"/> to be set such that the group + execute bit is not masked out (i.e. it must include 010). See the parameter + <smbconfoption name="create mask"/> for details. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/maxstatcachesize.xml b/docs-xml/smbdotconf/filename/maxstatcachesize.xml new file mode 100644 index 0000000000..607fe5840f --- /dev/null +++ b/docs-xml/smbdotconf/filename/maxstatcachesize.xml @@ -0,0 +1,18 @@ +<samba:parameter name="max stat cache size" + context="G" + developer="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter limits the size in memory of any + <parameter moreinfo="none">stat cache</parameter> being used + to speed up case insensitive name mappings. This parameter is + the number of kilobyte (1024) units the stat cache can use. + A value of zero means unlimited which is not advised aѕ it can + use a lot of memory. + You should not need to change this parameter.</para> +</description> +<related>stat cache</related> +<value type="default">256</value> +<value type="example">100</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/preservecase.xml b/docs-xml/smbdotconf/filename/preservecase.xml new file mode 100644 index 0000000000..875900d4c2 --- /dev/null +++ b/docs-xml/smbdotconf/filename/preservecase.xml @@ -0,0 +1,17 @@ +<samba:parameter name="preserve case" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This controls if new filenames are created with the case that the client passes, or if + they are forced to be the <smbconfoption name="default case"/>. + </para> + + <para> + See the section on <link linkend="NAMEMANGLINGSECT">NAME MANGLING</link> for a fuller discussion. + </para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/shortpreservecase.xml b/docs-xml/smbdotconf/filename/shortpreservecase.xml new file mode 100644 index 0000000000..90188a076e --- /dev/null +++ b/docs-xml/smbdotconf/filename/shortpreservecase.xml @@ -0,0 +1,16 @@ +<samba:parameter name="short preserve case" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This boolean parameter controls if new files which conform to 8.3 syntax, that is all in upper case and of + suitable length, are created upper case, or if they are forced to be the <smbconfoption name="default case"/>. + This option can be use with <smbconfoption name="preserve case">yes</smbconfoption> to permit long filenames + to retain their case, while short names are lowered. + </para> + + <para>See the section on <link linkend="NAMEMANGLINGSECT">NAME MANGLING</link>.</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/statcache.xml b/docs-xml/smbdotconf/filename/statcache.xml new file mode 100644 index 0000000000..c38fb11a88 --- /dev/null +++ b/docs-xml/smbdotconf/filename/statcache.xml @@ -0,0 +1,13 @@ +<samba:parameter name="stat cache" + context="G" + developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter determines if <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will use a cache in order to + speed up case insensitive name mappings. You should never need + to change this parameter.</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/storedosattributes.xml b/docs-xml/smbdotconf/filename/storedosattributes.xml new file mode 100644 index 0000000000..6fcab82f9c --- /dev/null +++ b/docs-xml/smbdotconf/filename/storedosattributes.xml @@ -0,0 +1,20 @@ +<samba:parameter name="store dos attributes" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + If this parameter is set Samba attempts to first read DOS attributes (SYSTEM, HIDDEN, ARCHIVE or + READ-ONLY) from a filesystem extended attribute, before mapping DOS attributes to UNIX permission bits (such + as occurs with <smbconfoption name="map hidden"/> and <smbconfoption name="map readonly"/>). When set, DOS + attributes will be stored onto an extended attribute in the UNIX filesystem, associated with the file or + directory. For no other mapping to occur as a fall-back, the parameters <smbconfoption name="map hidden"/>, + <smbconfoption name="map system"/>, <smbconfoption name="map archive"/> and <smbconfoption name="map + readonly"/> must be set to off. This parameter writes the DOS attributes as a string into the extended + attribute named "user.DOSATTRIB". This extended attribute is explicitly hidden from smbd clients requesting an + EA list. On Linux the filesystem must have been mounted with the mount option user_xattr in order for + extended attributes to work, also extended attributes must be compiled into the Linux kernel. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/vetofiles.xml b/docs-xml/smbdotconf/filename/vetofiles.xml new file mode 100644 index 0000000000..48e0c40fff --- /dev/null +++ b/docs-xml/smbdotconf/filename/vetofiles.xml @@ -0,0 +1,52 @@ +<samba:parameter name="veto files" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para> + This is a list of files and directories that are neither visible nor accessible. Each entry in + the list must be separated by a '/', which allows spaces to be included in the entry. '*' and '?' + can be used to specify multiple files or directories as in DOS wildcards. + </para> + + <para> + Each entry must be a unix path, not a DOS path and must <emphasis>not</emphasis> include the + unix directory separator '/'. + </para> + + <para> + Note that the <smbconfoption name="case sensitive"/> option is applicable in vetoing files. + </para> + + <para> + One feature of the veto files parameter that it is important to be aware of is Samba's behaviour when + trying to delete a directory. If a directory that is to be deleted contains nothing but veto files this + deletion will <emphasis>fail</emphasis> unless you also set the <smbconfoption name="delete veto files"/> + parameter to <parameter moreinfo="none">yes</parameter>. + </para> + + <para> + Setting this parameter will affect the performance of Samba, as it will be forced to check all files + and directories for a match as they are scanned. + </para> + + <para> + Examples of use include: +<programlisting> +; Veto any files containing the word Security, +; any ending in .tmp, and any directory containing the +; word root. +veto files = /*Security*/*.tmp/*root*/ + +; Veto the Apple specific files that a NetAtalk server +; creates. +veto files = /.AppleDouble/.bin/.AppleDesktop/Network Trash Folder/ +</programlisting> + </para> + +</description> +<related>hide files</related> +<related>case sensitive</related> + +<value type="default">No files or directories are vetoed.</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/filename/vetooplockfiles.xml b/docs-xml/smbdotconf/filename/vetooplockfiles.xml new file mode 100644 index 0000000000..b99ab00385 --- /dev/null +++ b/docs-xml/smbdotconf/filename/vetooplockfiles.xml @@ -0,0 +1,32 @@ +<samba:parameter name="veto oplock files" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para> + This parameter is only valid when the <smbconfoption name="oplocks"/> + parameter is turned on for a share. It allows the Samba administrator + to selectively turn off the granting of oplocks on selected files that + match a wildcarded list, similar to the wildcarded list used in the + <smbconfoption name="veto files"/> parameter. + </para> + + + <para> + You might want to do this on files that you know will be heavily contended + for by clients. A good example of this is in the NetBench SMB benchmark + program, which causes heavy client contention for files ending in + <filename moreinfo="none">.SEM</filename>. To cause Samba not to grant + oplocks on these files you would use the line (either in the [global] + section or in the section for the particular NetBench share. + </para> + + <para> + An example of use is: +<programlisting> +veto oplock files = /.*SEM/ +</programlisting> + </para> +</description> +<value type="default"><comment>No files are vetoed for oplock grants</comment></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/generate-context.xsl b/docs-xml/smbdotconf/generate-context.xsl new file mode 100644 index 0000000000..4afba52a86 --- /dev/null +++ b/docs-xml/smbdotconf/generate-context.xsl @@ -0,0 +1,49 @@ +<?xml version='1.0'?> +<!-- vim:set sts=2 shiftwidth=2 syntax=xml: --> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:exsl="http://exslt.org/common" + xmlns:samba="http://samba.org/common" + version="1.1" + extension-element-prefixes="exsl"> + +<xsl:output method="xml" omit-xml-declaration="yes"/> + +<xsl:param name="smb.context" select="'G'"/> + +<!-- This is needed to copy content unchanged --> +<xsl:template match="@*|node()"> + <xsl:copy> + <xsl:apply-templates select="@*|node()"/> + </xsl:copy> +</xsl:template> + +<xsl:template match="variablelist"> + <xsl:element name="itemizedlist"> + <xsl:apply-templates/> + </xsl:element> +</xsl:template> + +<xsl:template match="//samba:parameter"> + <xsl:variable name="name"><xsl:value-of select="translate(translate(string(@name),' ',''), + 'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/> + </xsl:variable> + + <xsl:if test="contains(@context,$smb.context) or $smb.context='ALL'"> + <xsl:element name="listitem"> + <xsl:element name="para"> + <xsl:element name="link"> + <xsl:attribute name="linkend"> + <xsl:value-of select="$name"/> + </xsl:attribute> + <xsl:element name="parameter"> + <xsl:attribute name="moreinfo"><xsl:text>none</xsl:text></xsl:attribute> + <xsl:value-of select="@name"/> + </xsl:element> + </xsl:element> + </xsl:element> + </xsl:element> + <xsl:text> </xsl:text> + </xsl:if> +</xsl:template> + +</xsl:stylesheet> diff --git a/docs-xml/smbdotconf/generate-file-list.sh b/docs-xml/smbdotconf/generate-file-list.sh new file mode 100755 index 0000000000..262830de4b --- /dev/null +++ b/docs-xml/smbdotconf/generate-file-list.sh @@ -0,0 +1,19 @@ +#!/bin/sh +DIR=. +if [ "x$1" != "x" ] +then + DIR="$1" +fi + +OLD=`pwd` +cd $DIR + +echo "<variablelist xmlns:xi=\"http://www.w3.org/2003/XInclude\">" +for I in `find . -mindepth 2 -type f -name '*.xml' | sort -t/ -k3 | xargs` +do + echo "<xi:include href='$I' parse='xml'/>" +done + +echo "</variablelist>" + +cd $OLD diff --git a/docs-xml/smbdotconf/ldap/clientldapsaslwrapping.xml b/docs-xml/smbdotconf/ldap/clientldapsaslwrapping.xml new file mode 100644 index 0000000000..a926cec645 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/clientldapsaslwrapping.xml @@ -0,0 +1,44 @@ +<samba:parameter name="client ldap sasl wrapping" + context="G" + type="string" + advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + The <smbconfoption name="client ldap sasl wrapping"/> defines whether + ldap traffic will be signed or signed and encrypted (sealed). + Possible values are <emphasis>plain</emphasis>, <emphasis>sign</emphasis> + and <emphasis>seal</emphasis>. + </para> + + <para> + The values <emphasis>sign</emphasis> and <emphasis>seal</emphasis> are + only available if Samba has been compiled against a modern + OpenLDAP version (2.3.x or higher). + </para> + + <para> + This option is needed in the case of Domain Controllers enforcing + the usage of signed LDAP connections (e.g. Windows 2000 SP3 or higher). + LDAP sign and seal can be controlled with the registry key + "<literal>HKLM\System\CurrentControlSet\Services\</literal> + <literal>NTDS\Parameters\LDAPServerIntegrity</literal>" + on the Windows server side. + </para> + + <para> + Depending on the used KRB5 library (MIT and older Heimdal versions) + it is possible that the message "integrity only" is not supported. + In this case, <emphasis>sign</emphasis> is just an alias for + <emphasis>seal</emphasis>. + </para> + + <para> + The default value is <emphasis>plain</emphasis> which is not irritable + to KRB5 clock skew errors. That implies synchronizing the time + with the KDC in the case of using <emphasis>sign</emphasis> or + <emphasis>seal</emphasis>. + </para> +</description> +<value type="default">plain</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapadmindn.xml b/docs-xml/smbdotconf/ldap/ldapadmindn.xml new file mode 100644 index 0000000000..442d242679 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapadmindn.xml @@ -0,0 +1,21 @@ +<samba:parameter name="ldap admin dn" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + + <para> + The <smbconfoption name="ldap admin dn"/> defines the Distinguished Name (DN) name used by Samba to contact + the ldap server when retreiving user account information. The <smbconfoption name="ldap admin dn"/> is used + in conjunction with the admin dn password stored in the <filename moreinfo="none">private/secrets.tdb</filename> + file. See the <citerefentry><refentrytitle>smbpasswd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> + man page for more information on how to accomplish this. + </para> + + <para> + The <smbconfoption name="ldap admin dn"/> requires a fully specified DN. The <smbconfoption name="ldap + suffix"/> is not appended to the <smbconfoption name="ldap admin dn"/>. + </para> +</description> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapdeletedn.xml b/docs-xml/smbdotconf/ldap/ldapdeletedn.xml new file mode 100644 index 0000000000..48f5c9b65a --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapdeletedn.xml @@ -0,0 +1,14 @@ +<samba:parameter name="ldap delete dn" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> This parameter specifies whether a delete + operation in the ldapsam deletes the complete entry or only the attributes + specific to Samba. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapgroupsuffix.xml b/docs-xml/smbdotconf/ldap/ldapgroupsuffix.xml new file mode 100644 index 0000000000..8fe033a2f9 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapgroupsuffix.xml @@ -0,0 +1,16 @@ +<samba:parameter name="ldap group suffix" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the suffix that is + used for groups when these are added to the LDAP directory. + If this parameter is unset, the value of <smbconfoption + name="ldap suffix"/> will be used instead. The suffix string is pre-pended to the + <smbconfoption name="ldap suffix"/> string so use a partial DN.</para> + +</description> +<value type="default"></value> +<value type="example">ou=Groups</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapidmapsuffix.xml b/docs-xml/smbdotconf/ldap/ldapidmapsuffix.xml new file mode 100644 index 0000000000..e397138741 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapidmapsuffix.xml @@ -0,0 +1,15 @@ +<samba:parameter name="ldap idmap suffix" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameters specifies the suffix that is used when storing idmap mappings. If this parameter + is unset, the value of <smbconfoption name="ldap suffix"/> will be used instead. The suffix + string is pre-pended to the <smbconfoption name="ldap suffix"/> string so use a partial DN. + </para> +</description> +<value type="default"></value> +<value type="example">ou=Idmap</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapmachinesuffix.xml b/docs-xml/smbdotconf/ldap/ldapmachinesuffix.xml new file mode 100644 index 0000000000..b54f6383e8 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapmachinesuffix.xml @@ -0,0 +1,18 @@ +<samba:parameter name="ldap machine suffix" + context="G" + advanced="1" + developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + +<description> + <para> + It specifies where machines should be added to the ldap tree. If this parameter is unset, the value of + <smbconfoption name="ldap suffix"/> will be used instead. The suffix string is pre-pended to the + <smbconfoption name="ldap suffix"/> string so use a partial DN. + </para> +</description> + +<value type="default"/> +<value type="example">ou=Computers</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldappasswdsync.xml b/docs-xml/smbdotconf/ldap/ldappasswdsync.xml new file mode 100644 index 0000000000..864bfc45a0 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldappasswdsync.xml @@ -0,0 +1,38 @@ +<samba:parameter name="ldap passwd sync" + context="G" + advanced="1" + developer="1" + type="enum" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + +<description> + <para> + This option is used to define whether or not Samba should sync the LDAP password with the NT + and LM hashes for normal accounts (NOT for workstation, server or domain trusts) on a password + change via SAMBA. + </para> + + <para> + The <smbconfoption name="ldap passwd sync"/> can be set to one of three values: + </para> + + <itemizedlist> + <listitem> + <para><parameter moreinfo="none">Yes</parameter> = Try + to update the LDAP, NT and LM passwords and update the pwdLastSet time.</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">No</parameter> = Update NT and + LM passwords and update the pwdLastSet time.</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">Only</parameter> = Only update + the LDAP password and let the LDAP server do the rest.</para> + </listitem> + </itemizedlist> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapreplicationsleep.xml b/docs-xml/smbdotconf/ldap/ldapreplicationsleep.xml new file mode 100644 index 0000000000..4710e2b3b3 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapreplicationsleep.xml @@ -0,0 +1,25 @@ +<samba:parameter name="ldap replication sleep" + context="G" + advanced="1" developer="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + When Samba is asked to write to a read-only LDAP replica, we are redirected to talk to the read-write master server. + This server then replicates our changes back to the 'local' server, however the replication might take some seconds, + especially over slow links. Certain client activities, particularly domain joins, can become confused by the 'success' + that does not immediately change the LDAP back-end's data. + </para> + + <para> + This option simply causes Samba to wait a short time, to allow the LDAP server to catch up. If you have a particularly + high-latency network, you may wish to time the LDAP replication with a network sniffer, and increase this value accordingly. + Be aware that no checking is performed that the data has actually replicated. + </para> + + <para> + The value is specified in milliseconds, the maximum value is 5000 (5 seconds). + </para> +</description> +<value type="default">1000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapsameditposix.xml b/docs-xml/smbdotconf/ldap/ldapsameditposix.xml new file mode 100644 index 0000000000..ace6c6c64d --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapsameditposix.xml @@ -0,0 +1,93 @@ +<samba:parameter name="ldapsam:editposix" + context="G" + type="string" + advanced="1" developer="0" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + Editposix is an option that leverages ldapsam:trusted to make it simpler to manage a domain controller + eliminating the need to set up custom scripts to add and manage the posix users and groups. This option + will instead directly manipulate the ldap tree to create, remove and modify user and group entries. + This option also requires a running winbindd as it is used to allocate new uids/gids on user/group + creation. The allocation range must be therefore configured. + </para> + + <para> + To use this option, a basic ldap tree must be provided and the ldap suffix parameters must be properly + configured. On virgin servers the default users and groups (Administrator, Guest, Domain Users, + Domain Admins, Domain Guests) can be precreated with the command <command moreinfo="none">net sam + provision</command>. To run this command the ldap server must be running, Winindd must be running and + the smb.conf ldap options must be properly configured. + + The typical ldap setup used with the <smbconfoption name="ldapsam:trusted">yes</smbconfoption> option + is usually sufficient to use <smbconfoption name="ldapsam:editposix">yes</smbconfoption> as well. + </para> + + <para> + An example configuration can be the following: + + <programlisting> + encrypt passwords = true + passdb backend = ldapsam + + ldapsam:trusted=yes + ldapsam:editposix=yes + + ldap admin dn = cn=admin,dc=samba,dc=org + ldap delete dn = yes + ldap group suffix = ou=groups + ldap idmap suffix = ou=idmap + ldap machine suffix = ou=computers + ldap user suffix = ou=users + ldap suffix = dc=samba,dc=org + + idmap backend = ldap:"ldap://localhost" + + idmap uid = 5000-50000 + idmap gid = 5000-50000 + </programlisting> + + This configuration assume the ldap server have been loaded with a base tree like described + in the following ldif: + + <programlisting> + dn: dc=samba,dc=org + objectClass: top + objectClass: dcObject + objectClass: organization + o: samba.org + dc: samba + + dn: cn=admin,dc=samba,dc=org + objectClass: simpleSecurityObject + objectClass: organizationalRole + cn: admin + description: LDAP administrator + userPassword: secret + + dn: ou=users,dc=samba,dc=org + objectClass: top + objectClass: organizationalUnit + ou: users + + dn: ou=groups,dc=samba,dc=org + objectClass: top + objectClass: organizationalUnit + ou: groups + + dn: ou=idmap,dc=samba,dc=org + objectClass: top + objectClass: organizationalUnit + ou: idmap + + dn: ou=computers,dc=samba,dc=org + objectClass: top + objectClass: organizationalUnit + ou: computers + </programlisting> + </para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapsamtrusted.xml b/docs-xml/smbdotconf/ldap/ldapsamtrusted.xml new file mode 100644 index 0000000000..2e4e1dbd7c --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapsamtrusted.xml @@ -0,0 +1,30 @@ +<samba:parameter name="ldapsam:trusted" + context="G" + type="string" + advanced="1" developer="0" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + By default, Samba as a Domain Controller with an LDAP backend needs to use the Unix-style NSS subsystem to + access user and group information. Due to the way Unix stores user information in /etc/passwd and /etc/group + this inevitably leads to inefficiencies. One important question a user needs to know is the list of groups he + is member of. The plain UNIX model involves a complete enumeration of the file /etc/group and its NSS + counterparts in LDAP. UNIX has optimized functions to enumerate group membership. Sadly, other functions that + are used to deal with user and group attributes lack such optimization. + </para> + + <para> + To make Samba scale well in large environments, the <smbconfoption name="ldapsam:trusted">yes</smbconfoption> + option assumes that the complete user and group database that is relevant to Samba is stored in LDAP with the + standard posixAccount/posixGroup attributes. It further assumes that the Samba auxiliary object classes are + stored together with the POSIX data in the same LDAP object. If these assumptions are met, + <smbconfoption name="ldapsam:trusted">yes</smbconfoption> can be activated and Samba can bypass the + NSS system to query user group memberships. Optimized LDAP queries can greatly speed up domain logon and + administration tasks. Depending on the size of the LDAP database a factor of 100 or more for common queries + is easily achieved. + </para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapssl.xml b/docs-xml/smbdotconf/ldap/ldapssl.xml new file mode 100644 index 0000000000..39ed08fe82 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapssl.xml @@ -0,0 +1,38 @@ +<samba:parameter name="ldap ssl" + context="G" + type="enum" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>This option is used to define whether or not Samba should + use SSL when connecting to the ldap server + This is <emphasis>NOT</emphasis> related to + Samba's previous SSL support which was enabled by specifying the + <command moreinfo="none">--with-ssl</command> option to the <filename moreinfo="none">configure</filename> + script.</para> + +<para>The <smbconfoption name="ldap ssl"/> can be set to one of three values:</para> + <itemizedlist> + <listitem> + <para><parameter moreinfo="none">Off</parameter> = Never + use SSL when querying the directory.</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">Start_tls</parameter> = Use + the LDAPv3 StartTLS extended operation (RFC2830) for + communicating with the directory server.</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">On</parameter> = Use SSL + on the ldaps port when contacting the <parameter + moreinfo="none">ldap server</parameter>. Only available when the + backwards-compatiblity <command + moreinfo="none">--with-ldapsam</command> option is specified + to configure. See <smbconfoption name="passdb backend"/></para>. + </listitem> + </itemizedlist> +</description> +<value type="default">start_tls</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapsuffix.xml b/docs-xml/smbdotconf/ldap/ldapsuffix.xml new file mode 100644 index 0000000000..48595139a2 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapsuffix.xml @@ -0,0 +1,18 @@ +<samba:parameter name="ldap suffix" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Specifies the base for all ldap suffixes and for storing the sambaDomain object.</para> + + <para> + The ldap suffix will be appended to the values specified for the <smbconfoption name="ldap user suffix"/>, + <smbconfoption name="ldap group suffix"/>, <smbconfoption name="ldap machine suffix"/>, and the + <smbconfoption name="ldap idmap suffix"/>. Each of these should be given only a DN relative to the + <smbconfoption name ="ldap suffix"/>. + </para> +</description> +<value type="default"></value> +<value type="example">dc=samba,dc=org</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldaptimeout.xml b/docs-xml/smbdotconf/ldap/ldaptimeout.xml new file mode 100644 index 0000000000..cd88494903 --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldaptimeout.xml @@ -0,0 +1,14 @@ +<samba:parameter name="ldap timeout" + context="G" + advanced="1" developer="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + When Samba connects to an ldap server that servermay be down or unreachable. To prevent Samba from hanging whilst + waiting for the connection this parameter specifies in seconds how long Samba should wait before failing the + connect. The default is to only wait fifteen seconds for the ldap server to respond to the connect request. + </para> +</description> +<value type="default">15</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/ldap/ldapusersuffix.xml b/docs-xml/smbdotconf/ldap/ldapusersuffix.xml new file mode 100644 index 0000000000..6b4eec378d --- /dev/null +++ b/docs-xml/smbdotconf/ldap/ldapusersuffix.xml @@ -0,0 +1,16 @@ +<samba:parameter name="ldap user suffix" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter specifies where users are added to the tree. If this parameter is unset, + the value of <smbconfoption name="ldap suffix"/> will be used instead. The suffix + string is pre-pended to the <smbconfoption name="ldap suffix"/> string so use a partial DN. + </para> + +</description> +<value type="default"/> +<value type="example">ou=people</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/blockinglocks.xml b/docs-xml/smbdotconf/locking/blockinglocks.xml new file mode 100644 index 0000000000..493f281fdb --- /dev/null +++ b/docs-xml/smbdotconf/locking/blockinglocks.xml @@ -0,0 +1,24 @@ +<samba:parameter name="blocking locks" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls the behavior + of <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> when given a request by a client + to obtain a byte range lock on a region of an open file, and the + request has a time limit associated with it.</para> + + <para>If this parameter is set and the lock range requested + cannot be immediately satisfied, samba will internally + queue the lock request, and periodically attempt to obtain + the lock until the timeout period expires.</para> + + <para>If this parameter is set to <constant>no</constant>, then + samba will behave as previous versions of Samba would and + will fail the lock request immediately if the lock range + cannot be obtained.</para> + +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/cscpolicy.xml b/docs-xml/smbdotconf/locking/cscpolicy.xml new file mode 100644 index 0000000000..6131e1269f --- /dev/null +++ b/docs-xml/smbdotconf/locking/cscpolicy.xml @@ -0,0 +1,22 @@ +<samba:parameter name="csc policy" + context="S" + type="enum" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This stands for <emphasis>client-side caching policy</emphasis>, and specifies how clients capable of offline + caching will cache the files in the share. The valid values are: manual, documents, programs, disable. + </para> + + <para> + These values correspond to those used on Windows servers. + </para> + + <para> + For example, shares containing roaming profiles can have offline caching disabled using + <smbconfoption name="csc policy">disable</smbconfoption>. + </para> +</description> +<value type="default">manual</value> +<value type="example">programs</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/fakeoplocks.xml b/docs-xml/smbdotconf/locking/fakeoplocks.xml new file mode 100644 index 0000000000..fa004d7497 --- /dev/null +++ b/docs-xml/smbdotconf/locking/fakeoplocks.xml @@ -0,0 +1,30 @@ +<samba:parameter name="fake oplocks" + type="boolean" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Oplocks are the way that SMB clients get permission + from a server to locally cache file operations. If a server grants + an oplock (opportunistic lock) then the client is free to assume + that it is the only one accessing the file and it will aggressively + cache file data. With some oplock types the client may even cache + file open/close operations. This can give enormous performance benefits. + </para> + + <para>When you set <command moreinfo="none">fake oplocks = yes</command>, <citerefentry> + <refentrytitle>smbd</refentrytitle><manvolnum>8</manvolnum></citerefentry> will + always grant oplock requests no matter how many clients are using the file.</para> + + <para>It is generally much better to use the real <smbconfoption name="oplocks"/> support rather + than this parameter.</para> + + <para>If you enable this option on all read-only shares or + shares that you know will only be accessed from one client at a + time such as physically read-only media like CDROMs, you will see + a big performance improvement on many operations. If you enable + this option on shares where multiple clients may be accessing the + files read-write at the same time you can get data corruption. Use + this option carefully!</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/kerneloplocks.xml b/docs-xml/smbdotconf/locking/kerneloplocks.xml new file mode 100644 index 0000000000..c4f12b9bd4 --- /dev/null +++ b/docs-xml/smbdotconf/locking/kerneloplocks.xml @@ -0,0 +1,25 @@ +<samba:parameter name="kernel oplocks" + type="boolean" + context="G" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>For UNIXes that support kernel based <smbconfoption name="oplocks"/> + (currently only IRIX and the Linux 2.4 kernel), this parameter + allows the use of them to be turned on or off.</para> + + <para>Kernel oplocks support allows Samba <parameter moreinfo="none">oplocks + </parameter> to be broken whenever a local UNIX process or NFS operation + accesses a file that <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> has oplocked. This allows complete + data consistency between SMB/CIFS, NFS and local file access (and is + a <emphasis>very</emphasis> cool feature :-).</para> + + <para>This parameter defaults to <constant>on</constant>, but is translated + to a no-op on systems that no not have the necessary kernel support. + You should never need to touch this parameter.</para> +</description> + +<related>oplocks</related> +<related>level2 oplocks</related> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/level2oplocks.xml b/docs-xml/smbdotconf/locking/level2oplocks.xml new file mode 100644 index 0000000000..496701b188 --- /dev/null +++ b/docs-xml/smbdotconf/locking/level2oplocks.xml @@ -0,0 +1,40 @@ +<samba:parameter name="level2 oplocks" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls whether Samba supports + level2 (read-only) oplocks on a share.</para> + + <para>Level2, or read-only oplocks allow Windows NT clients + that have an oplock on a file to downgrade from a read-write oplock + to a read-only oplock once a second client opens the file (instead + of releasing all oplocks on a second open, as in traditional, + exclusive oplocks). This allows all openers of the file that + support level2 oplocks to cache the file for read-ahead only (ie. + they may not cache writes or lock requests) and increases performance + for many accesses of files that are not commonly written (such as + application .EXE files).</para> + + <para>Once one of the clients which have a read-only oplock + writes to the file all clients are notified (no reply is needed + or waited for) and told to break their oplocks to "none" and + delete any read-ahead caches.</para> + + <para>It is recommended that this parameter be turned on to + speed access to shared executables.</para> + + <para>For more discussions on level2 oplocks see the CIFS spec.</para> + + <para> + Currently, if <smbconfoption name="kernel oplocks"/> are supported then + level2 oplocks are not granted (even if this parameter is set to + <constant>yes</constant>). Note also, the <smbconfoption name="oplocks"/> + parameter must be set to <constant>yes</constant> on this share in order for + this parameter to have any effect.</para> +</description> + +<related>oplocks</related> +<related>kernel oplocks</related> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/locking.xml b/docs-xml/smbdotconf/locking/locking.xml new file mode 100644 index 0000000000..0d0eec4fc9 --- /dev/null +++ b/docs-xml/smbdotconf/locking/locking.xml @@ -0,0 +1,28 @@ +<samba:parameter name="locking" + type="boolean" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This controls whether or not locking will be + performed by the server in response to lock requests from the + client.</para> + + <para>If <command moreinfo="none">locking = no</command>, all lock and unlock + requests will appear to succeed and all lock queries will report + that the file in question is available for locking.</para> + + <para>If <command moreinfo="none">locking = yes</command>, real locking will be performed + by the server.</para> + + <para>This option <emphasis>may</emphasis> be useful for read-only + filesystems which <emphasis>may</emphasis> not need locking (such as + CDROM drives), although setting this parameter of <constant>no</constant> + is not really recommended even in this case.</para> + + <para>Be careful about disabling locking either globally or in a + specific service, as lack of locking may result in data corruption. + You should never need to set this parameter.</para> +</description> + +<value type="boolean">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/lockspincount.xml b/docs-xml/smbdotconf/locking/lockspincount.xml new file mode 100644 index 0000000000..9d74bd7530 --- /dev/null +++ b/docs-xml/smbdotconf/locking/lockspincount.xml @@ -0,0 +1,12 @@ +<samba:parameter name="lock spin count" + context="G" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter has been made inoperative in Samba 3.0.24. + The functionality it contolled is now controlled by the parameter + <smbconfoption name="lock spin time"/>. + </para> +</description> +<value type="default">0</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/lockspintime.xml b/docs-xml/smbdotconf/locking/lockspintime.xml new file mode 100644 index 0000000000..da84d9379b --- /dev/null +++ b/docs-xml/smbdotconf/locking/lockspintime.xml @@ -0,0 +1,15 @@ +<samba:parameter name="lock spin time" + type="integer" + context="G" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The time in microseconds that smbd should + keep waiting to see if a failed lock request can + be granted. This parameter has changed in default + value from Samba 3.0.23 from 10 to 200. The associated + <smbconfoption name="lock spin count"/> parameter is + no longer used in Samba 3.0.24. You should not need + to change the value of this parameter.</para> +</description> +<value type="default">200</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/oplockbreakwaittime.xml b/docs-xml/smbdotconf/locking/oplockbreakwaittime.xml new file mode 100644 index 0000000000..bede040840 --- /dev/null +++ b/docs-xml/smbdotconf/locking/oplockbreakwaittime.xml @@ -0,0 +1,18 @@ +<samba:parameter name="oplock break wait time" + context="G" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para> + This is a tuning parameter added due to bugs in both Windows 9x and WinNT. If Samba responds to a client too + quickly when that client issues an SMB that can cause an oplock break request, then the network client can + fail and not respond to the break request. This tuning parameter (which is set in milliseconds) is the amount + of time Samba will wait before sending an oplock break request to such (broken) clients. + </para> + + <warning><para> + DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ AND UNDERSTOOD THE SAMBA OPLOCK CODE. + </para></warning> +</description> +<value type="default">0</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/oplockcontentionlimit.xml b/docs-xml/smbdotconf/locking/oplockcontentionlimit.xml new file mode 100644 index 0000000000..3ee3c45eb3 --- /dev/null +++ b/docs-xml/smbdotconf/locking/oplockcontentionlimit.xml @@ -0,0 +1,26 @@ +<samba:parameter name="oplock contention limit" + context="S" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is a <emphasis>very</emphasis> advanced <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> tuning option to improve the efficiency of the + granting of oplocks under multiple client contention for the same file. + </para> + + <para> + In brief it specifies a number, which causes <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>not to grant an oplock even when requested if the + approximate number of clients contending for an oplock on the same file goes over this + limit. This causes <command moreinfo="none">smbd</command> to behave in a similar + way to Windows NT. + </para> + + <warning><para> + DO NOT CHANGE THIS PARAMETER UNLESS YOU HAVE READ AND UNDERSTOOD THE SAMBA OPLOCK CODE. + </para></warning> + +</description> +<value type="default">2</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/oplocks.xml b/docs-xml/smbdotconf/locking/oplocks.xml new file mode 100644 index 0000000000..0c6c26927c --- /dev/null +++ b/docs-xml/smbdotconf/locking/oplocks.xml @@ -0,0 +1,31 @@ +<samba:parameter name="oplocks" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This boolean option tells <command moreinfo="none">smbd</command> whether to + issue oplocks (opportunistic locks) to file open requests on this + share. The oplock code can dramatically (approx. 30% or more) improve + the speed of access to files on Samba servers. It allows the clients + to aggressively cache files locally and you may want to disable this + option for unreliable network environments (it is turned on by + default in Windows NT Servers). For more information see the file + <filename moreinfo="none">Speed.txt</filename> in the Samba + <filename moreinfo="none">docs/</filename> directory. + </para> + + <para> + Oplocks may be selectively turned off on certain files with a share. See + the <smbconfoption name="veto oplock files"/> parameter. On some systems + oplocks are recognized by the underlying operating system. This + allows data synchronization between all access to oplocked files, + whether it be via Samba or NFS or a local UNIX process. See the + <smbconfoption name="kernel oplocks"/> parameter for details. + </para> +</description> + +<related>kernel oplocks</related> +<related>level2 oplocks</related> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/posixlocking.xml b/docs-xml/smbdotconf/locking/posixlocking.xml new file mode 100644 index 0000000000..e5a89f59aa --- /dev/null +++ b/docs-xml/smbdotconf/locking/posixlocking.xml @@ -0,0 +1,15 @@ +<samba:parameter name="posix locking" + type="boolean" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + The <citerefentry><refentrytitle>smbd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> + daemon maintains an database of file locks obtained by SMB clients. The default behavior is + to map this internal database to POSIX locks. This means that file locks obtained by SMB clients are + consistent with those seen by POSIX compliant applications accessing the files via a non-SMB + method (e.g. NFS or local file access). You should never need to disable this parameter. + </para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/sharemodes.xml b/docs-xml/smbdotconf/locking/sharemodes.xml new file mode 100644 index 0000000000..e8371a563d --- /dev/null +++ b/docs-xml/smbdotconf/locking/sharemodes.xml @@ -0,0 +1,28 @@ +<samba:parameter name="share modes" + type="boolean" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This enables or disables the honoring of + the <parameter moreinfo="none">share modes</parameter> during a file open. These + modes are used by clients to gain exclusive read or write access + to a file.</para> + + <para>These open modes are not directly supported by UNIX, so + they are simulated using shared memory, or lock files if your + UNIX doesn't support shared memory (almost all do).</para> + + <para>The share modes that are enabled by this option are + <constant>DENY_DOS</constant>, <constant>DENY_ALL</constant>, + <constant>DENY_READ</constant>, <constant>DENY_WRITE</constant>, + <constant>DENY_NONE</constant> and <constant>DENY_FCB</constant>. + </para> + + <para>This option gives full share compatibility and enabled + by default.</para> + + <para>You should <emphasis>NEVER</emphasis> turn this parameter + off as many Windows applications will break if you do so.</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/locking/strictlocking.xml b/docs-xml/smbdotconf/locking/strictlocking.xml new file mode 100644 index 0000000000..e3a0ed7b4c --- /dev/null +++ b/docs-xml/smbdotconf/locking/strictlocking.xml @@ -0,0 +1,29 @@ +<samba:parameter name="strict locking" + context="S" + type="enum" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is an enumerated type that controls the handling of file locking in the server. When this is set to <constant>yes</constant>, + the server will check every read and write access for file locks, and deny access if locks exist. This can be slow on + some systems. + </para> + + <para> + When strict locking is set to Auto (the default), the server performs file lock checks only on non-oplocked files. + As most Windows redirectors perform file locking checks locally on oplocked files this is a good trade off for + inproved performance. + </para> + + <para> + When strict locking is disabled, the server performs file lock checks only when the client explicitly asks for them. + </para> + + <para> + Well-behaved clients always ask for lock checks when it is important. So in the vast majority of cases, + <command moreinfo="none">strict locking = Auto</command> or + <command moreinfo="none">strict locking = no</command> is acceptable. + </para> +</description> +<value type="default">Auto</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/debugclass.xml b/docs-xml/smbdotconf/logging/debugclass.xml new file mode 100644 index 0000000000..cc4b84acd7 --- /dev/null +++ b/docs-xml/smbdotconf/logging/debugclass.xml @@ -0,0 +1,18 @@ +<samba:parameter name="debug class" + context="G" + type="boolean" + developer="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + With this boolean parameter enabled, the debug class (DBGC_CLASS) + will be displayed in the debug header. + </para> + <para> + For more information about currently available debug classes, see + section about <smbconfoption name="log level"/>. + </para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/debughirestimestamp.xml b/docs-xml/smbdotconf/logging/debughirestimestamp.xml new file mode 100644 index 0000000000..6f32bd593b --- /dev/null +++ b/docs-xml/smbdotconf/logging/debughirestimestamp.xml @@ -0,0 +1,18 @@ +<samba:parameter name="debug hires timestamp" + context="G" + developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Sometimes the timestamps in the log messages are needed with a resolution of higher that seconds, this + boolean parameter adds microsecond resolution to the timestamp message header when turned on. + </para> + + <para> + Note that the parameter <smbconfoption name="debug timestamp"/> must be on for this to have an effect. + </para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/debugpid.xml b/docs-xml/smbdotconf/logging/debugpid.xml new file mode 100644 index 0000000000..017d010940 --- /dev/null +++ b/docs-xml/smbdotconf/logging/debugpid.xml @@ -0,0 +1,19 @@ +<samba:parameter name="debug pid" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + When using only one log file for more then one forked <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>-process there may be hard to follow which process outputs which + message. This boolean parameter is adds the process-id to the timestamp message headers in the + logfile when turned on. + </para> + + <para> + Note that the parameter <smbconfoption name="debug timestamp"/> must be on for this to have an effect. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/debugprefixtimestamp.xml b/docs-xml/smbdotconf/logging/debugprefixtimestamp.xml new file mode 100644 index 0000000000..62a6574613 --- /dev/null +++ b/docs-xml/smbdotconf/logging/debugprefixtimestamp.xml @@ -0,0 +1,19 @@ +<samba:parameter name="debug prefix timestamp" + context="G" + developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + With this option enabled, the timestamp message header is prefixed to the debug message without the + filename and function information that is included with the <smbconfoption name="debug timestamp"/> + parameter. This gives timestamps to the messages without adding an additional line. + </para> + + <para> + Note that this parameter overrides the <smbconfoption name="debug timestamp"/> parameter. + </para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/debugtimestamp.xml b/docs-xml/smbdotconf/logging/debugtimestamp.xml new file mode 100644 index 0000000000..b335eba465 --- /dev/null +++ b/docs-xml/smbdotconf/logging/debugtimestamp.xml @@ -0,0 +1,15 @@ +<samba:parameter name="debug timestamp" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>timestamp logs</synonym> +<description> + <para> + Samba debug log messages are timestamped by default. If you are running at a high + <smbconfoption name="debug level"/> these timestamps can be distracting. This + boolean parameter allows timestamping to be turned off. + </para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/debuguid.xml b/docs-xml/smbdotconf/logging/debuguid.xml new file mode 100644 index 0000000000..5cfa541a45 --- /dev/null +++ b/docs-xml/smbdotconf/logging/debuguid.xml @@ -0,0 +1,17 @@ +<samba:parameter name="debug uid" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Samba is sometimes run as root and sometime run as the connected user, this boolean parameter inserts the + current euid, egid, uid and gid to the timestamp message headers in the log file if turned on. + </para> + + <para> + Note that the parameter <smbconfoption name="debug timestamp"/> must be on for this to have an effect. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/ldapdebuglevel.xml b/docs-xml/smbdotconf/logging/ldapdebuglevel.xml new file mode 100644 index 0000000000..fdb6d40f25 --- /dev/null +++ b/docs-xml/smbdotconf/logging/ldapdebuglevel.xml @@ -0,0 +1,28 @@ +<samba:parameter name="ldap debug level" + type="integer" + context="G" + developer="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter controls the debug level of the LDAP library + calls. In the case of OpenLDAP, it is the same + bit-field as understood by the server and documented in the + <citerefentry> + <refentrytitle>slapd.conf</refentrytitle> + <manvolnum>5</manvolnum> + </citerefentry> + manpage. + A typical useful value will be + <emphasis>1</emphasis> for tracing function calls. + </para> + <para> + The debug ouput from the LDAP libraries appears with the + prefix [LDAP] in Samba's logging output. + The level at which LDAP logging is printed is controlled by the + parameter <parameter>ldap debug threshold</parameter>. + </para> +</description> +<value type="default">0</value> +<value type="example">1</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/ldapdebugthreshold.xml b/docs-xml/smbdotconf/logging/ldapdebugthreshold.xml new file mode 100644 index 0000000000..e023ff689b --- /dev/null +++ b/docs-xml/smbdotconf/logging/ldapdebugthreshold.xml @@ -0,0 +1,16 @@ +<samba:parameter name="ldap debug threshold" + type="integer" + context="G" + developer="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter controls the Samba debug level at which + the ldap library debug output is + printed in the Samba logs. See the description of + <parameter>ldap debug level</parameter> for details. + </para> +</description> +<value type="default">10</value> +<value type="example">5</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/logfile.xml b/docs-xml/smbdotconf/logging/logfile.xml new file mode 100644 index 0000000000..838d302b7b --- /dev/null +++ b/docs-xml/smbdotconf/logging/logfile.xml @@ -0,0 +1,16 @@ +<samba:parameter name="log file" + context="G" + type="string" + developer="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This option allows you to override the name of the Samba log file (also known as the debug file). + </para> + + <para> + This option takes the standard substitutions, allowing you to have separate log files for each user or machine. + </para> +</description> +<value type="example">/usr/local/samba/var/log.%m</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/loglevel.xml b/docs-xml/smbdotconf/logging/loglevel.xml new file mode 100644 index 0000000000..d5562f42bb --- /dev/null +++ b/docs-xml/smbdotconf/logging/loglevel.xml @@ -0,0 +1,45 @@ +<samba:parameter name="log level" + type="string" + context="G" + developer="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>debuglevel</synonym> +<description> + <para> + The value of the parameter (a astring) allows the debug level (logging level) to be specified in the + <filename moreinfo="none">smb.conf</filename> file. + </para> + + <para>This parameter has been extended since the 2.2.x + series, now it allows to specify the debug level for multiple + debug classes. This is to give greater flexibility in the configuration + of the system. The following debug classes are currently implemented: + </para> + + <itemizedlist> + <listitem><para><parameter moreinfo="none">all</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">tdb</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">printdrivers</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">lanman</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">smb</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">rpc_parse</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">rpc_srv</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">rpc_cli</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">passdb</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">sam</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">auth</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">winbind</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">vfs</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">idmap</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">quota</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">acls</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">locking</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">msdfs</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">dmapi</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">registry</parameter></para></listitem> + </itemizedlist> + +</description> +<value type="default">0</value> +<value type="example">3 passdb:5 auth:10 winbind:2</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/maxlogsize.xml b/docs-xml/smbdotconf/logging/maxlogsize.xml new file mode 100644 index 0000000000..3d5239ccdf --- /dev/null +++ b/docs-xml/smbdotconf/logging/maxlogsize.xml @@ -0,0 +1,18 @@ +<samba:parameter name="max log size" + type="integer" + context="G" + developer="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This option (an integer in kilobytes) specifies the max size the log file should grow to. + Samba periodically checks the size and if it is exceeded it will rename the file, adding + a <filename moreinfo="none">.old</filename> extension. + </para> + + <para>A size of 0 means no limit. + </para> +</description> +<value type="default">5000</value> +<value type="example">1000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/syslog.xml b/docs-xml/smbdotconf/logging/syslog.xml new file mode 100644 index 0000000000..e4722d8164 --- /dev/null +++ b/docs-xml/smbdotconf/logging/syslog.xml @@ -0,0 +1,21 @@ +<samba:parameter name="syslog" + context="G" + type="integer" + developer="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter maps how Samba debug messages are logged onto the system syslog logging levels. + Samba debug level zero maps onto syslog <constant>LOG_ERR</constant>, debug level one maps onto + <constant>LOG_WARNING</constant>, debug level two maps onto <constant>LOG_NOTICE</constant>, + debug level three maps onto LOG_INFO. All higher levels are mapped to <constant>LOG_DEBUG</constant>. + </para> + + <para> + This parameter sets the threshold for sending messages to syslog. Only messages with debug + level less than this value will be sent to syslog. There still will be some + logging to log.[sn]mbd even if <emphasis>syslog only</emphasis> is enabled. + </para> +</description> +<value type="default">1</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logging/syslogonly.xml b/docs-xml/smbdotconf/logging/syslogonly.xml new file mode 100644 index 0000000000..0fe74713e2 --- /dev/null +++ b/docs-xml/smbdotconf/logging/syslogonly.xml @@ -0,0 +1,14 @@ +<samba:parameter name="syslog only" + context="G" + type="boolean" + developer="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + If this parameter is set then Samba debug messages are logged into the system + syslog only, and not to the debug log files. There still will be some + logging to log.[sn]mbd even if <emphasis>syslog only</emphasis> is enabled. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/abortshutdownscript.xml b/docs-xml/smbdotconf/logon/abortshutdownscript.xml new file mode 100644 index 0000000000..45bed073ea --- /dev/null +++ b/docs-xml/smbdotconf/logon/abortshutdownscript.xml @@ -0,0 +1,16 @@ +<samba:parameter name="abort shutdown script" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This a full path name to a script called by <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> that + should stop a shutdown procedure issued by the <smbconfoption name="shutdown script"/>.</para> + + <para>If the connected user posseses the <constant>SeRemoteShutdownPrivilege</constant>, + right, this command will be run as user.</para> +</description> +<value type="default">""</value> +<value type="example">/sbin/shutdown -c</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/addgroupscript.xml b/docs-xml/smbdotconf/logon/addgroupscript.xml new file mode 100644 index 0000000000..3804e144ff --- /dev/null +++ b/docs-xml/smbdotconf/logon/addgroupscript.xml @@ -0,0 +1,19 @@ +<samba:parameter name="add group script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is the full pathname to a script that will be run <emphasis>AS ROOT</emphasis> by <citerefentry> + <refentrytitle>smbd</refentrytitle><manvolnum>8</manvolnum></citerefentry> when a new group is requested. It + will expand any <parameter moreinfo="none">%g</parameter> to the group name passed. This script is only useful + for installations using the Windows NT domain administration tools. The script is free to create a group with + an arbitrary name to circumvent unix group name restrictions. In that case the script must print the numeric + gid of the created group on stdout. + </para> +</description> + +<value type="default"/> +<value type="example">/usr/sbin/groupadd %g</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/addmachinescript.xml b/docs-xml/smbdotconf/logon/addmachinescript.xml new file mode 100644 index 0000000000..c06a4a964f --- /dev/null +++ b/docs-xml/smbdotconf/logon/addmachinescript.xml @@ -0,0 +1,21 @@ +<samba:parameter name="add machine script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is the full pathname to a script that will be run by + <citerefentry><refentrytitle>smbd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> when a machine is + added to Samba's domain and a Unix account matching the machine's name appended with a "$" does not + already exist. + </para> + <para>This option is very similar to the <smbconfoption + name="add user script"/>, and likewise uses the %u + substitution for the account name. Do not use the %m + substitution. </para> +</description> + +<value type="default"/> +<value type="example">/usr/sbin/adduser -n -g machines -c Machine -d /var/lib/nobody -s /bin/false %u</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/adduserscript.xml b/docs-xml/smbdotconf/logon/adduserscript.xml new file mode 100644 index 0000000000..7128cb73c7 --- /dev/null +++ b/docs-xml/smbdotconf/logon/adduserscript.xml @@ -0,0 +1,55 @@ +<samba:parameter name="add user script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is the full pathname to a script that will be run <emphasis>AS ROOT</emphasis> by + <citerefentry><refentrytitle>smbd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> + under special circumstances described below. + </para> + + <para> + Normally, a Samba server requires that UNIX users are created for all users accessing + files on this server. For sites that use Windows NT account databases as their primary + user database creating these users and keeping the user list in sync with the Windows + NT PDC is an onerous task. This option allows smbd to create the required UNIX users + <emphasis>ON DEMAND</emphasis> when a user accesses the Samba server. + </para> + + <para> + In order to use this option, <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> must <emphasis>NOT</emphasis> be set to + <smbconfoption name="security">share</smbconfoption> and <smbconfoption name="add user script"/> + must be set to a full pathname for a script that will create a UNIX user given one argument of + <parameter moreinfo="none">%u</parameter>, which expands into the UNIX user name to create. + </para> + + <para> + When the Windows user attempts to access the Samba server, at login (session setup in + the SMB protocol) time, <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> contacts the <smbconfoption name="password server"/> + and attempts to authenticate the given user with the given password. If the authentication + succeeds then <command moreinfo="none">smbd</command> attempts to find a UNIX user in the UNIX + password database to map the Windows user into. If this lookup fails, and + <smbconfoption name="add user script"/> is set then <command moreinfo="none">smbd</command> will + call the specified script <emphasis>AS ROOT</emphasis>, expanding any + <parameter moreinfo="none">%u</parameter> argument to be the user name to create. + </para> + + <para> + If this script successfully creates the user then <command moreinfo="none">smbd</command> will + continue on as though the UNIX user already existed. In this way, UNIX users are dynamically created to + match existing Windows NT accounts. + </para> + + <para> + See also <smbconfoption name="security"/>, <smbconfoption name="password server"/>, + <smbconfoption name="delete user script"/>. + </para> +</description> + +<value type="default"/> +<value type="example">/usr/local/samba/bin/add_user %u</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/addusertogroupscript.xml b/docs-xml/smbdotconf/logon/addusertogroupscript.xml new file mode 100644 index 0000000000..f7eb410024 --- /dev/null +++ b/docs-xml/smbdotconf/logon/addusertogroupscript.xml @@ -0,0 +1,22 @@ +<samba:parameter name="add user to group script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Full path to the script that will be called when a user is added to a group using the Windows NT domain administration + tools. It will be run by <citerefentry><refentrytitle>smbd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> + <emphasis>AS ROOT</emphasis>. Any <parameter moreinfo="none">%g</parameter> will be replaced with the group name and + any <parameter moreinfo="none">%u</parameter> will be replaced with the user name. + </para> + + <para> + Note that the <command>adduser</command> command used in the example below does + not support the used syntax on all systems. + </para> + +</description> +<value type="default"></value> +<value type="example">/usr/sbin/adduser %u %g</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/deletegroupscript.xml b/docs-xml/smbdotconf/logon/deletegroupscript.xml new file mode 100644 index 0000000000..bd265b7fc8 --- /dev/null +++ b/docs-xml/smbdotconf/logon/deletegroupscript.xml @@ -0,0 +1,15 @@ +<samba:parameter name="delete group script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is the full pathname to a script that will + be run <emphasis>AS ROOT</emphasis> <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> when a group is requested to be deleted. + It will expand any <parameter moreinfo="none">%g</parameter> to the group name passed. + This script is only useful for installations using the Windows NT domain administration tools. + </para> +</description> +<value type="default"></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/deleteuserfromgroupscript.xml b/docs-xml/smbdotconf/logon/deleteuserfromgroupscript.xml new file mode 100644 index 0000000000..a685ab5290 --- /dev/null +++ b/docs-xml/smbdotconf/logon/deleteuserfromgroupscript.xml @@ -0,0 +1,17 @@ +<samba:parameter name="delete user from group script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Full path to the script that will be called when + a user is removed from a group using the Windows NT domain administration + tools. It will be run by <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> <emphasis>AS ROOT</emphasis>. + Any <parameter moreinfo="none">%g</parameter> will be replaced with the group name and + any <parameter moreinfo="none">%u</parameter> will be replaced with the user name. +</para> +</description> +<value type="default"/> +<value type="example">/usr/sbin/deluser %u %g</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/deleteuserscript.xml b/docs-xml/smbdotconf/logon/deleteuserscript.xml new file mode 100644 index 0000000000..b3abe23e4c --- /dev/null +++ b/docs-xml/smbdotconf/logon/deleteuserscript.xml @@ -0,0 +1,22 @@ +<samba:parameter name="delete user script" + type="string" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is the full pathname to a script that will + be run by <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> when managing users + with remote RPC (NT) tools. + </para> + + <para>This script is called when a remote client removes a user + from the server, normally using 'User Manager for Domains' or + <command moreinfo="none">rpcclient</command>.</para> + + <para>This script should delete the given UNIX username.</para> +</description> + +<value type="default"></value> +<value type="example">/usr/local/samba/bin/del_user %u</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/domainlogons.xml b/docs-xml/smbdotconf/logon/domainlogons.xml new file mode 100644 index 0000000000..d274faa18b --- /dev/null +++ b/docs-xml/smbdotconf/logon/domainlogons.xml @@ -0,0 +1,18 @@ +<samba:parameter name="domain logons" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + If set to <constant>yes</constant>, the Samba server will + provide the netlogon service for Windows 9X network logons for the + <smbconfoption name="workgroup"/> it is in. + This will also cause the Samba server to act as a domain + controller for NT4 style domain services. For more details on + setting up this feature see the Domain Control chapter of the + Samba HOWTO Collection. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/enableprivileges.xml b/docs-xml/smbdotconf/logon/enableprivileges.xml new file mode 100644 index 0000000000..3e958e0ce9 --- /dev/null +++ b/docs-xml/smbdotconf/logon/enableprivileges.xml @@ -0,0 +1,26 @@ +<samba:parameter name="enable privileges" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter controls whether or not smbd will honor privileges assigned to specific SIDs via either + <command>net rpc rights</command> or one of the Windows user and group manager tools. This parameter is + enabled by default. It can be disabled to prevent members of the Domain Admins group from being able to + assign privileges to users or groups which can then result in certain smbd operations running as root that + would normally run under the context of the connected user. + </para> + + <para> + An example of how privileges can be used is to assign the right to join clients to a Samba controlled + domain without providing root access to the server via smbd. + </para> + + <para> + Please read the extended description provided in the Samba HOWTO documentation. + </para> + +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/logondrive.xml b/docs-xml/smbdotconf/logon/logondrive.xml new file mode 100644 index 0000000000..b32cfd7006 --- /dev/null +++ b/docs-xml/smbdotconf/logon/logondrive.xml @@ -0,0 +1,19 @@ +<samba:parameter name="logon drive" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter specifies the local path to which the home directory will be + connected (see <smbconfoption name="logon home"/>) and is only used by NT + Workstations. + </para> + + <para> + Note that this option is only useful if Samba is set up as a logon server. + </para> +</description> +<value type="default"></value> +<value type="example">h:</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/logonhome.xml b/docs-xml/smbdotconf/logon/logonhome.xml new file mode 100644 index 0000000000..b7a10a98fc --- /dev/null +++ b/docs-xml/smbdotconf/logon/logonhome.xml @@ -0,0 +1,57 @@ +<samba:parameter name="logon home" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter specifies the home directory location when a Win95/98 or NT Workstation logs into a Samba PDC. + It allows you to do + </para> + + <para> + <prompt moreinfo="none">C:\></prompt><userinput moreinfo="none">NET USE H: /HOME</userinput> + </para> + + <para> + from a command prompt, for example. + </para> + + <para> + This option takes the standard substitutions, allowing you to have separate logon scripts for each user or machine. + </para> + + <para> + This parameter can be used with Win9X workstations to ensure that roaming profiles are stored in a + subdirectory of the user's home directory. This is done in the following way: + </para> + + <para> + <command moreinfo="none">logon home = \\%N\%U\profile</command> + </para> + + <para> + This tells Samba to return the above string, with substitutions made when a client requests the info, generally + in a NetUserGetInfo request. Win9X clients truncate the info to \\server\share when a user does + <command moreinfo="none">net use /home</command> but use the whole string when dealing with profiles. + </para> + + <para> + Note that in prior versions of Samba, the <smbconfoption name="logon path"/> was returned rather than + <parameter moreinfo="none">logon home</parameter>. This broke <command moreinfo="none">net use /home</command> + but allowed profiles outside the home directory. The current implementation is correct, and can be used for + profiles if you use the above trick. + </para> + + <para> + Disable this feature by setting <smbconfoption name="logon home">""</smbconfoption> - using the empty string. + </para> + + <para> + This option is only useful if Samba is set up as a logon server. + </para> +</description> + +<value type="default">\\%N\%U</value> +<value type="example">\\remote_smb_server\%U</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/logonpath.xml b/docs-xml/smbdotconf/logon/logonpath.xml new file mode 100644 index 0000000000..f0a3817106 --- /dev/null +++ b/docs-xml/smbdotconf/logon/logonpath.xml @@ -0,0 +1,70 @@ +<samba:parameter name="logon path" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter specifies the directory where roaming profiles (Desktop, NTuser.dat, etc) are + stored. Contrary to previous versions of these manual pages, it has nothing to do with Win 9X roaming + profiles. To find out how to handle roaming profiles for Win 9X system, see the + <smbconfoption name="logon home"/> parameter. + </para> + + <para> + This option takes the standard substitutions, allowing you to have separate logon scripts for each user or + machine. It also specifies the directory from which the "Application Data", <filename + moreinfo="none">desktop</filename>, <filename moreinfo="none">start menu</filename>, <filename + moreinfo="none">network neighborhood</filename>, <filename moreinfo="none">programs</filename> and other + folders, and their contents, are loaded and displayed on your Windows NT client. + </para> + + <para> + The share and the path must be readable by the user for the preferences and directories to be loaded onto the + Windows NT client. The share must be writeable when the user logs in for the first time, in order that the + Windows NT client can create the NTuser.dat and other directories. + Thereafter, the directories and any of the contents can, if required, be made read-only. It is not advisable + that the NTuser.dat file be made read-only - rename it to NTuser.man to achieve the desired effect (a + <emphasis>MAN</emphasis>datory profile). + </para> + + <para> + Windows clients can sometimes maintain a connection to the [homes] share, even though there is no user logged + in. Therefore, it is vital that the logon path does not include a reference to the homes share (i.e. setting + this parameter to \\%N\homes\profile_path will cause problems). + </para> + + <para> + This option takes the standard substitutions, allowing you to have separate logon scripts for each user or machine. + </para> + + <warning><para> + Do not quote the value. Setting this as <quote>\\%N\profile\%U</quote> + will break profile handling. Where the tdbsam or ldapsam passdb backend + is used, at the time the user account is created the value configured + for this parameter is written to the passdb backend and that value will + over-ride the parameter value present in the smb.conf file. Any error + present in the passdb backend account record must be editted using the + appropriate tool (pdbedit on the command-line, or any other locally + provided system tool). + </para></warning> + + <para>Note that this option is only useful if Samba is set up as a domain controller.</para> + + <para> + Disable the use of roaming profiles by setting the value of this parameter to the empty string. For + example, <smbconfoption name="logon path">""</smbconfoption>. Take note that even if the default setting + in the smb.conf file is the empty string, any value specified in the user account settings in the passdb + backend will over-ride the effect of setting this parameter to null. Disabling of all roaming profile use + requires that the user account settings must also be blank. + </para> + + <para> + An example of use is: +<programlisting> +logon path = \\PROFILESERVER\PROFILE\%U +</programlisting> + </para> +</description> +<value type="default">\\%N\%U\profile</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/logonscript.xml b/docs-xml/smbdotconf/logon/logonscript.xml new file mode 100644 index 0000000000..5b304514d0 --- /dev/null +++ b/docs-xml/smbdotconf/logon/logonscript.xml @@ -0,0 +1,51 @@ +<samba:parameter name="logon script" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter specifies the batch file (<filename>.bat</filename>) or NT command file + (<filename>.cmd</filename>) to be downloaded and run on a machine when a user successfully logs in. The file + must contain the DOS style CR/LF line endings. Using a DOS-style editor to create the file is recommended. + </para> + + <para> + The script must be a relative path to the <smbconfsection name="[netlogon]"/> service. If the [netlogon] + service specifies a <smbconfoption name="path"/> of <filename + moreinfo="none">/usr/local/samba/netlogon</filename>, and <smbconfoption name="logon + script">STARTUP.BAT</smbconfoption>, then the file that will be downloaded is: +<programlisting> + /usr/local/samba/netlogon/STARTUP.BAT +</programlisting> + </para> + + <para> + The contents of the batch file are entirely your choice. A suggested command would be to add <command + moreinfo="none">NET TIME \\SERVER /SET /YES</command>, to force every machine to synchronize clocks with the + same time server. Another use would be to add <command moreinfo="none">NET USE U: \\SERVER\UTILS</command> + for commonly used utilities, or +<programlisting> +<userinput>NET USE Q: \\SERVER\ISO9001_QA</userinput> +</programlisting> + for example. + </para> + + <para> + Note that it is particularly important not to allow write access to the [netlogon] share, or to grant users + write permission on the batch files in a secure environment, as this would allow the batch files to be + arbitrarily modified and security to be breached. + </para> + + <para> + This option takes the standard substitutions, allowing you to have separate logon scripts for each user or + machine. + </para> + + <para> + This option is only useful if Samba is set up as a logon server. + </para> +</description> +<value type="default"></value> +<value type="example">scripts\%U.bat</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/setprimarygroupscript.xml b/docs-xml/smbdotconf/logon/setprimarygroupscript.xml new file mode 100644 index 0000000000..b348501e8b --- /dev/null +++ b/docs-xml/smbdotconf/logon/setprimarygroupscript.xml @@ -0,0 +1,20 @@ +<samba:parameter name="set primary group script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para>Thanks to the Posix subsystem in NT a Windows User has a + primary group in addition to the auxiliary groups. This script + sets the primary group in the unix userdatase when an + administrator sets the primary group from the windows user + manager or when fetching a SAM with <command>net rpc + vampire</command>. <parameter>%u</parameter> will be replaced + with the user whose primary group is to be set. + <parameter>%g</parameter> will be replaced with the group to + set.</para> +</description> +<value type="default"></value> +<value type="example">/usr/sbin/usermod -g '%g' '%u'</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/logon/shutdownscript.xml b/docs-xml/smbdotconf/logon/shutdownscript.xml new file mode 100644 index 0000000000..7e8ec8fd3a --- /dev/null +++ b/docs-xml/smbdotconf/logon/shutdownscript.xml @@ -0,0 +1,60 @@ +<samba:parameter name="shutdown script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This a full path name to a script called by + <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> that should + start a shutdown procedure.</para> + + <para>If the connected user posseses the <constant>SeRemoteShutdownPrivilege</constant>, + right, this command will be run as user.</para> + + <para>The %z %t %r %f variables are expanded as follows:</para> + + <itemizedlist> + <listitem> + <para><parameter moreinfo="none">%z</parameter> will be substituted with the + shutdown message sent to the server.</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">%t</parameter> will be substituted with the + number of seconds to wait before effectively starting the + shutdown procedure.</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">%r</parameter> will be substituted with the + switch <emphasis>-r</emphasis>. It means reboot after shutdown + for NT.</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">%f</parameter> will be substituted with the + switch <emphasis>-f</emphasis>. It means force the shutdown + even if applications do not respond for NT.</para> + </listitem> + </itemizedlist> + + <para>Shutdown script example: +<programlisting format="linespecific"> +#!/bin/bash + +$time=0 +let "time/60" +let "time++" + +/sbin/shutdown $3 $4 +$time $1 & +</programlisting> + Shutdown does not return so we need to launch it in background. + </para> + +</description> +<related>abort shutdown script</related> +<value type="default"></value> +<value type="example">/usr/local/samba/sbin/shutdown %m %t %r %f</value> + +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/addsharecommand.xml b/docs-xml/smbdotconf/misc/addsharecommand.xml new file mode 100644 index 0000000000..9eb50f3dc3 --- /dev/null +++ b/docs-xml/smbdotconf/misc/addsharecommand.xml @@ -0,0 +1,68 @@ +<samba:parameter name="add share command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Samba 2.2.0 introduced the ability to dynamically add and delete shares via the Windows NT 4.0 Server + Manager. The <parameter moreinfo="none">add share command</parameter> is used to define an external program + or script which will add a new service definition to <filename moreinfo="none">smb.conf</filename>. In order + to successfully execute the <parameter moreinfo="none">add share command</parameter>, <command + moreinfo="none">smbd</command> requires that the administrator be connected using a root account (i.e. uid == 0). + </para> + + <para> + If the connected account has <literal>SeDiskOperatorPrivilege</literal>, scripts defined in + <parameter moreinfo="none">change share</parameter> parameter are executed as root. + </para> + + <para> + When executed, <command moreinfo="none">smbd</command> will automatically invoke the + <parameter moreinfo="none">add share command</parameter> with five parameters. + </para> + + <itemizedlist> + <listitem> + <para><parameter moreinfo="none">configFile</parameter> - the location of the global <filename + moreinfo="none">smb.conf</filename> file. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">shareName</parameter> - the name of the new share. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">pathName</parameter> - path to an **existing** + directory on disk. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">comment</parameter> - comment string to associate with the new + share. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">max + connections</parameter> + Number of maximum simultaneous connections to this + share. + </para> + </listitem> + </itemizedlist> + + <para> + This parameter is only used for add file shares. To add printer shares, see the <smbconfoption + name="addprinter command"/>. + </para> +</description> + +<related>change share command</related> +<related>delete share command</related> +<value type="default"></value> +<value type="example">/usr/local/bin/addshare</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/afsshare.xml b/docs-xml/smbdotconf/misc/afsshare.xml new file mode 100644 index 0000000000..67d42d491f --- /dev/null +++ b/docs-xml/smbdotconf/misc/afsshare.xml @@ -0,0 +1,16 @@ +<samba:parameter name="afs share" + context="S" + type="boolean" + advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls whether special AFS features are enabled + for this share. If enabled, it assumes that the directory exported via + the <parameter>path</parameter> parameter is a local AFS import. The + special AFS features include the attempt to hand-craft an AFS token + if you enabled --with-fake-kaserver in configure. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/afsusernamemap.xml b/docs-xml/smbdotconf/misc/afsusernamemap.xml new file mode 100644 index 0000000000..8e68ffec74 --- /dev/null +++ b/docs-xml/smbdotconf/misc/afsusernamemap.xml @@ -0,0 +1,20 @@ +<samba:parameter name="afs username map" + context="G" + type="string" + advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>If you are using the fake kaserver AFS feature, you might + want to hand-craft the usernames you are creating tokens for. + For example this is necessary if you have users from several domain + in your AFS Protection Database. One possible scheme to code users + as DOMAIN+User as it is done by winbind with the + as a separator. + </para> + + <para>The mapped user name must contain the cell name to log into, + so without setting this parameter there will be no token.</para> +</description> + +<value type="default"/> +<value type="example">%u@afs.samba.org</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/available.xml b/docs-xml/smbdotconf/misc/available.xml new file mode 100644 index 0000000000..4535bad1ce --- /dev/null +++ b/docs-xml/smbdotconf/misc/available.xml @@ -0,0 +1,14 @@ +<samba:parameter name="available" + context="S" + basic="1" advanced="1" print="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter lets you "turn off" a service. If + <parameter moreinfo="none">available = no</parameter>, then <emphasis>ALL</emphasis> + attempts to connect to the service will fail. Such failures are + logged.</para> + +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/changenotify.xml b/docs-xml/smbdotconf/misc/changenotify.xml new file mode 100644 index 0000000000..9ff6f02f6f --- /dev/null +++ b/docs-xml/smbdotconf/misc/changenotify.xml @@ -0,0 +1,14 @@ +<samba:parameter name="change notify" + context="S" + type="boolean" + advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies whether Samba should reply + to a client's file change notify requests. + </para> + + <para>You should never need to change this parameter</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/changesharecommand.xml b/docs-xml/smbdotconf/misc/changesharecommand.xml new file mode 100644 index 0000000000..5a42e22559 --- /dev/null +++ b/docs-xml/smbdotconf/misc/changesharecommand.xml @@ -0,0 +1,70 @@ +<samba:parameter name="change share command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Samba 2.2.0 introduced the ability to dynamically add and delete shares via the Windows NT 4.0 Server +Manager. The <parameter moreinfo="none">change share command</parameter> is used to define an external +program or script which will modify an existing service definition in <filename +moreinfo="none">smb.conf</filename>. In order to successfully execute the <parameter moreinfo="none">change +share command</parameter>, <command moreinfo="none">smbd</command> requires that the administrator be +connected using a root account (i.e. uid == 0). + </para> + + <para> + If the connected account has <literal>SeDiskOperatorPrivilege</literal>, scripts defined in + <parameter moreinfo="none">change share</parameter> parameter are executed as root. + </para> + + <para> + When executed, <command moreinfo="none">smbd</command> will automatically invoke the + <parameter moreinfo="none">change share command</parameter> with five parameters. + </para> + + <itemizedlist> + <listitem> + <para><parameter moreinfo="none">configFile</parameter> - the location + of the global <filename moreinfo="none">smb.conf</filename> file. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">shareName</parameter> - the name of the new + share. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">pathName</parameter> - path to an **existing** + directory on disk. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">comment</parameter> - comment string to associate + with the new share. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">max + connections</parameter> + Number of maximum simultaneous connections to this + share. + </para> + </listitem> + </itemizedlist> + + <para> + This parameter is only used modify existing file shares definitions. To modify + printer shares, use the "Printers..." folder as seen when browsing the Samba host. + </para> +</description> + +<related>add share command</related> +<related>delete share command</related> +<value type="default"></value> +<value type="example">/usr/local/bin/addshare</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/configfile.xml b/docs-xml/smbdotconf/misc/configfile.xml new file mode 100644 index 0000000000..b1dc0d1b29 --- /dev/null +++ b/docs-xml/smbdotconf/misc/configfile.xml @@ -0,0 +1,24 @@ +<samba:parameter name="config file" + context="G" + type="string" + hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This allows you to override the config file + to use, instead of the default (usually <filename moreinfo="none">smb.conf</filename>). + There is a chicken and egg problem here as this option is set + in the config file!</para> + + <para>For this reason, if the name of the config file has changed + when the parameters are loaded then it will reload them from + the new config file.</para> + + <para>This option takes the usual substitutions, which can + be very useful.</para> + + <para>If the config file doesn't exist then it won't be loaded + (allowing you to special case the config files of just a few + clients).</para> +</description> +<value type="example">/usr/local/samba/lib/smb.conf.%m</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/copy.xml b/docs-xml/smbdotconf/misc/copy.xml new file mode 100644 index 0000000000..608071e6e8 --- /dev/null +++ b/docs-xml/smbdotconf/misc/copy.xml @@ -0,0 +1,16 @@ +<samba:parameter name="copy" context="S" hide="1" xmlns:samba="http://www.samba.org/samba/DTD/samba-doc" type="string"> +<description> + <para>This parameter allows you to "clone" service + entries. The specified service is simply duplicated under the + current service's name. Any parameters specified in the current + section will override those in the section being copied.</para> + + <para>This feature lets you set up a 'template' service and + create similar services easily. Note that the service being + copied must occur earlier in the configuration file than the + service doing the copying.</para> +</description> + +<value type="default"></value> +<value type="example">otherservice</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/defaultservice.xml b/docs-xml/smbdotconf/misc/defaultservice.xml new file mode 100644 index 0000000000..ca986d460a --- /dev/null +++ b/docs-xml/smbdotconf/misc/defaultservice.xml @@ -0,0 +1,30 @@ +<samba:parameter name="default service" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>default</synonym> +<description> + <para>This parameter specifies the name of a service + which will be connected to if the service actually requested cannot + be found. Note that the square brackets are <emphasis>NOT</emphasis> + given in the parameter value (see example below).</para> + + <para>There is no default value for this parameter. If this + parameter is not given, attempting to connect to a nonexistent + service results in an error.</para> + + <para> + Typically the default service would be a <smbconfoption name="guest ok"/>, <smbconfoption + name="read-only"/> service.</para> <para>Also note that the apparent service name will be changed to equal + that of the requested service, this is very useful as it allows you to use macros like <parameter + moreinfo="none">%S</parameter> to make a wildcard service. + </para> + + <para>Note also that any "_" characters in the name of the service + used in the default service will get mapped to a "/". This allows for + interesting things.</para> +</description> +<value type="default"></value> +<value type="example">pub</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/deletereadonly.xml b/docs-xml/smbdotconf/misc/deletereadonly.xml new file mode 100644 index 0000000000..de4f566a0a --- /dev/null +++ b/docs-xml/smbdotconf/misc/deletereadonly.xml @@ -0,0 +1,14 @@ +<samba:parameter name="delete readonly" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter allows readonly files to be deleted. + This is not normal DOS semantics, but is allowed by UNIX.</para> + + <para>This option may be useful for running applications such + as rcs, where UNIX file ownership prevents changing file + permissions, and DOS semantics prevent deletion of a read only file.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/deletesharecommand.xml b/docs-xml/smbdotconf/misc/deletesharecommand.xml new file mode 100644 index 0000000000..40eb6495db --- /dev/null +++ b/docs-xml/smbdotconf/misc/deletesharecommand.xml @@ -0,0 +1,50 @@ +<samba:parameter name="delete share command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Samba 2.2.0 introduced the ability to dynamically add and delete shares via the Windows NT 4.0 Server + Manager. The <parameter moreinfo="none">delete share command</parameter> is used to define an external + program or script which will remove an existing service definition from + <filename moreinfo="none">smb.conf</filename>. In order to successfully execute the + <parameter moreinfo="none">delete share command</parameter>, <command moreinfo="none">smbd</command> + requires that the administrator be connected using a root account (i.e. uid == 0). + </para> + + <para> + If the connected account has <literal>SeDiskOperatorPrivilege</literal>, scripts defined in + <parameter moreinfo="none">change share</parameter> parameter are executed as root. + </para> + + <para> + When executed, <command moreinfo="none">smbd</command> will automatically invoke the + <parameter moreinfo="none">delete share command</parameter> with two parameters. + </para> + + <itemizedlist> + <listitem> + <para><parameter moreinfo="none">configFile</parameter> - the location + of the global <filename moreinfo="none">smb.conf</filename> file. + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">shareName</parameter> - the name of + the existing service. + </para> + </listitem> + </itemizedlist> + + <para> + This parameter is only used to remove file shares. To delete printer shares, + see the <smbconfoption name="deleteprinter command"/>. + </para> +</description> + +<related>add share command</related> +<related>delete share command</related> +<value type="default"></value> +<value type="example">/usr/local/bin/delshare</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/dfreecachetime.xml b/docs-xml/smbdotconf/misc/dfreecachetime.xml new file mode 100644 index 0000000000..2a8805e948 --- /dev/null +++ b/docs-xml/smbdotconf/misc/dfreecachetime.xml @@ -0,0 +1,27 @@ +<samba:parameter name="dfree cache time" + context="S" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + The <parameter moreinfo="none">dfree cache time</parameter> should only be used on systems where a problem + occurs with the internal disk space calculations. This has been known to happen with Ultrix, but may occur + with other operating systems. The symptom that was seen was an error of "Abort Retry Ignore" at the + end of each directory listing. + </para> + + <para> + This is a new parameter introduced in Samba version 3.0.21. It specifies in seconds the time that smbd will + cache the output of a disk free query. If set to zero (the default) no caching is done. This allows a heavily + loaded server to prevent rapid spawning of <smbconfoption name="dfree command"/> scripts increasing the load. + </para> + + <para> + By default this parameter is zero, meaning no caching will be done. + </para> + +</description> +<value type="example">dfree cache time = 60</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/dfreecommand.xml b/docs-xml/smbdotconf/misc/dfreecommand.xml new file mode 100644 index 0000000000..de60c5e076 --- /dev/null +++ b/docs-xml/smbdotconf/misc/dfreecommand.xml @@ -0,0 +1,60 @@ +<samba:parameter name="dfree command" + context="S" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + The <parameter moreinfo="none">dfree command</parameter> setting should only be used on systems where a + problem occurs with the internal disk space calculations. This has been known to happen with Ultrix, but may + occur with other operating systems. The symptom that was seen was an error of "Abort Retry Ignore" + at the end of each directory listing. + </para> + + <para> + This setting allows the replacement of the internal routines to calculate the total disk space and amount + available with an external routine. The example below gives a possible script that might fulfill this + function. + </para> + + <para> + In Samba version 3.0.21 this parameter has been changed to be a per-share parameter, and in addition the + parameter <smbconfoption name="dfree cache time"/> was added to allow the output of this script to be cached + for systems under heavy load. + </para> + + <para> + The external program will be passed a single parameter indicating a directory in the filesystem being queried. + This will typically consist of the string <filename moreinfo="none">./</filename>. The script should return + two integers in ASCII. The first should be the total disk space in blocks, and the second should be the number + of available blocks. An optional third return value can give the block size in bytes. The default blocksize is + 1024 bytes. + </para> + + <para> + Note: Your script should <emphasis>NOT</emphasis> be setuid or setgid and should be owned by (and writeable + only by) root! + </para> + + <para> + Where the script dfree (which must be made executable) could be: +<programlisting format="linespecific"> +#!/bin/sh +df $1 | tail -1 | awk '{print $(NF-4),$(NF-2)}' +</programlisting> + or perhaps (on Sys V based systems): +<programlisting format="linespecific"> +#!/bin/sh +/usr/bin/df -k $1 | tail -1 | awk '{print $3" "$5}' +</programlisting> + Note that you may have to replace the command names with full path names on some systems. + </para> + + <para> + By default internal routines for determining the disk capacity and remaining space will be used. + </para> + +</description> +<value type="example">/usr/local/samba/bin/dfree</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/dmapisupport.xml b/docs-xml/smbdotconf/misc/dmapisupport.xml new file mode 100644 index 0000000000..fbd145d048 --- /dev/null +++ b/docs-xml/smbdotconf/misc/dmapisupport.xml @@ -0,0 +1,29 @@ +<samba:parameter name="dmapi support" + context="S" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies whether Samba should use DMAPI to + determine whether a file is offline or not. This would typically + be used in conjunction with a hierarchical storage system that + automatically migrates files to tape. + </para> + + <para>Note that Samba infers the status of a file by examining the + events that a DMAPI application has registered interest in. This + heuristic is satisfactory for a number of hierarchical storage + systems, but there may be system for which it will fail. In this + case, Samba may erroneously report files to be offline. + </para> + + <para>This parameter is only available if a supported DMAPI + implementation was found at compilation time. It will only be used + if DMAPI is found to enabled on the system at run time. + </para> + + <para> + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/dontdescend.xml b/docs-xml/smbdotconf/misc/dontdescend.xml new file mode 100644 index 0000000000..e12593939d --- /dev/null +++ b/docs-xml/smbdotconf/misc/dontdescend.xml @@ -0,0 +1,20 @@ +<samba:parameter name="dont descend" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>There are certain directories on some systems + (e.g., the <filename moreinfo="none">/proc</filename> tree under Linux) that are either not + of interest to clients or are infinitely deep (recursive). This + parameter allows you to specify a comma-delimited list of directories + that the server should always show as empty.</para> + + <para>Note that Samba can be very fussy about the exact format + of the "dont descend" entries. For example you may need <filename moreinfo="none"> + ./proc</filename> instead of just <filename moreinfo="none">/proc</filename>. + Experimentation is the best policy :-) </para> +</description> + +<value type="default"></value> +<value type="example">/proc,/dev</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/dosfilemode.xml b/docs-xml/smbdotconf/misc/dosfilemode.xml new file mode 100644 index 0000000000..ae3b475107 --- /dev/null +++ b/docs-xml/smbdotconf/misc/dosfilemode.xml @@ -0,0 +1,17 @@ +<samba:parameter name="dos filemode" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> The default behavior in Samba is to provide + UNIX-like behavior where only the owner of a file/directory is + able to change the permissions on it. However, this behavior + is often confusing to DOS/Windows users. Enabling this parameter + allows a user who has write access to the file (by whatever + means) to modify the permissions (including ACL) on it. Note that a user + belonging to the group owning the file will not be allowed to + change permissions if the group is only granted read access. + Ownership of the file/directory may also be changed.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/dosfiletimeresolution.xml b/docs-xml/smbdotconf/misc/dosfiletimeresolution.xml new file mode 100644 index 0000000000..130f0fd91e --- /dev/null +++ b/docs-xml/smbdotconf/misc/dosfiletimeresolution.xml @@ -0,0 +1,25 @@ +<samba:parameter name="dos filetime resolution" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Under the DOS and Windows FAT filesystem, the finest + granularity on time resolution is two seconds. Setting this parameter + for a share causes Samba to round the reported time down to the + nearest two second boundary when a query call that requires one second + resolution is made to <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>.</para> + + <para>This option is mainly used as a compatibility option for Visual + C++ when used against Samba shares. If oplocks are enabled on a + share, Visual C++ uses two different time reading calls to check if a + file has changed since it was last read. One of these calls uses a + one-second granularity, the other uses a two second granularity. As + the two second call rounds any odd second down, then if the file has a + timestamp of an odd number of seconds then the two timestamps will not + match and Visual C++ will keep reporting the file has changed. Setting + this option causes the two timestamps to match, and Visual C++ is + happy.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/dosfiletimes.xml b/docs-xml/smbdotconf/misc/dosfiletimes.xml new file mode 100644 index 0000000000..90f93a03e8 --- /dev/null +++ b/docs-xml/smbdotconf/misc/dosfiletimes.xml @@ -0,0 +1,22 @@ +<samba:parameter name="dos filetimes" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Under DOS and Windows, if a user can write to a + file they can change the timestamp on it. Under POSIX semantics, + only the owner of the file or root may change the timestamp. By + default, Samba runs with POSIX semantics and refuses to change the + timestamp on a file if the user <command moreinfo="none">smbd</command> is acting + on behalf of is not the file owner. Setting this option to <constant> + yes</constant> allows DOS semantics and <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will change the file + timestamp as DOS requires. Due to changes in Microsoft Office 2000 and beyond, + the default for this parameter has been changed from "no" to "yes" in Samba 3.0.14 + and above. Microsoft Excel will display dialog box warnings about the file being + changed by another user if this parameter is not set to "yes" and files are being + shared between users. + </para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/fakedirectorycreatetimes.xml b/docs-xml/smbdotconf/misc/fakedirectorycreatetimes.xml new file mode 100644 index 0000000000..974b6f0f30 --- /dev/null +++ b/docs-xml/smbdotconf/misc/fakedirectorycreatetimes.xml @@ -0,0 +1,34 @@ +<samba:parameter name="fake directory create times" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>NTFS and Windows VFAT file systems keep a create + time for all files and directories. This is not the same as the + ctime - status change time - that Unix keeps, so Samba by default + reports the earliest of the various times Unix does keep. Setting + this parameter for a share causes Samba to always report midnight + 1-1-1980 as the create time for directories.</para> + + <para>This option is mainly used as a compatibility option for + Visual C++ when used against Samba shares. Visual C++ generated + makefiles have the object directory as a dependency for each object + file, and a make rule to create the directory. Also, when NMAKE + compares timestamps it uses the creation time when examining a + directory. Thus the object directory will be created if it does not + exist, but once it does exist it will always have an earlier + timestamp than the object files it contains.</para> + + <para>However, Unix time semantics mean that the create time + reported by Samba will be updated whenever a file is created or + or deleted in the directory. NMAKE finds all object files in + the object directory. The timestamp of the last one built is then + compared to the timestamp of the object directory. If the + directory's timestamp if newer, then all object files + will be rebuilt. Enabling this option + ensures directories always predate their contents and an NMAKE build + will proceed as expected.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/followsymlinks.xml b/docs-xml/smbdotconf/misc/followsymlinks.xml new file mode 100644 index 0000000000..c0fd920bf9 --- /dev/null +++ b/docs-xml/smbdotconf/misc/followsymlinks.xml @@ -0,0 +1,20 @@ +<samba:parameter name="follow symlinks" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter allows the Samba administrator to stop <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> from following symbolic links in a particular share. Setting this + parameter to <constant>no</constant> prevents any file or directory that is a symbolic link from being + followed (the user will get an error). This option is very useful to stop users from adding a symbolic + link to <filename moreinfo="none">/etc/passwd</filename> in their home directory for instance. However + it will slow filename lookups down slightly. + </para> + + <para> + This option is enabled (i.e. <command moreinfo="none">smbd</command> will follow symbolic links) by default. + </para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/fstype.xml b/docs-xml/smbdotconf/misc/fstype.xml new file mode 100644 index 0000000000..c7df18c38b --- /dev/null +++ b/docs-xml/smbdotconf/misc/fstype.xml @@ -0,0 +1,16 @@ +<samba:parameter name="fstype" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter allows the administrator to configure the string that specifies the type of filesystem a share + is using that is reported by <citerefentry><refentrytitle>smbd</refentrytitle> <manvolnum>8</manvolnum></citerefentry> + when a client queries the filesystem type for a share. The default type is <constant>NTFS</constant> for compatibility + with Windows NT but this can be changed to other strings such as <constant>Samba</constant> or <constant>FAT</constant> + if required. + </para> +</description> +<value type="default">NTFS</value> +<value type="example">Samba</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/homedirmap.xml b/docs-xml/smbdotconf/misc/homedirmap.xml new file mode 100644 index 0000000000..37b46ee0b6 --- /dev/null +++ b/docs-xml/smbdotconf/misc/homedirmap.xml @@ -0,0 +1,28 @@ +<samba:parameter name="homedir map" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para> + If <smbconfoption name="nis homedir"/> is <constant>yes</constant>, and <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> is also acting as a Win95/98 <parameter moreinfo="none">logon server</parameter> + then this parameter specifies the NIS (or YP) map from which the server for the user's home directory should be extracted. + At present, only the Sun auto.home map format is understood. The form of the map is: +<programlisting> +<command moreinfo="none">username server:/some/file/system</command> +</programlisting> + and the program will extract the servername from before the first ':'. There should probably be a better parsing system + that copes with different map formats and also Amd (another automounter) maps. + </para> + + <note><para> + A working NIS client is required on the system for this option to work. + </para></note> +</description> +<related>nis homedir</related> +<related>domain logons</related> + +<value type="default"></value> +<value type="example">amd.homedir</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/include.xml b/docs-xml/smbdotconf/misc/include.xml new file mode 100644 index 0000000000..1a08b49464 --- /dev/null +++ b/docs-xml/smbdotconf/misc/include.xml @@ -0,0 +1,25 @@ +<samba:parameter name="include" + context="G" + type="string" + hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This allows you to include one config file inside another. The file is included literally, as though typed + in place. + </para> + + <para> + It takes the standard substitutions, except <parameter moreinfo="none">%u</parameter>, + <parameter moreinfo="none">%P</parameter> and <parameter moreinfo="none">%S</parameter>. + </para> +</description> + + <para> + Note: This option can not be set inside registry + configurations. + </para> + +<value type="default"></value> +<value type="example">/usr/local/samba/lib/admin_smb.conf</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/kernelchangenotify.xml b/docs-xml/smbdotconf/misc/kernelchangenotify.xml new file mode 100644 index 0000000000..ef932201a1 --- /dev/null +++ b/docs-xml/smbdotconf/misc/kernelchangenotify.xml @@ -0,0 +1,17 @@ +<samba:parameter name="kernel change notify" + context="S" + type="boolean" + advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies whether Samba should ask the + kernel for change notifications in directories so that + SMB clients can refresh whenever the data on the server changes. + </para> + + <para>This parameter is only used when your kernel supports + change notification to user programs using the inotify interface. + </para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/lockdirectory.xml b/docs-xml/smbdotconf/misc/lockdirectory.xml new file mode 100644 index 0000000000..cbe10d5b8d --- /dev/null +++ b/docs-xml/smbdotconf/misc/lockdirectory.xml @@ -0,0 +1,21 @@ +<samba:parameter name="lock directory" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>lock dir</synonym> +<description> + <para>This option specifies the directory where lock + files will be placed. The lock files are used to implement the + <smbconfoption name="max connections"/> option. + </para> + + <para> + Note: This option can not be set inside registry + configurations. + </para> +</description> + +<value type="default">${prefix}/var/locks</value> +<value type="example">/var/run/samba/locks</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/magicoutput.xml b/docs-xml/smbdotconf/misc/magicoutput.xml new file mode 100644 index 0000000000..47e514fdce --- /dev/null +++ b/docs-xml/smbdotconf/misc/magicoutput.xml @@ -0,0 +1,18 @@ +<samba:parameter name="magic output" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter specifies the name of a file which will contain output created by a magic script (see the + <smbconfoption name="magic script"/> parameter below). + </para> + + <warning><para>If two clients use the same <parameter moreinfo="none">magic script + </parameter> in the same directory the output file content is undefined. + </para></warning> +</description> + +<value type="default"><magic script name>.out</value> +<value type="example">myfile.txt</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/magicscript.xml b/docs-xml/smbdotconf/misc/magicscript.xml new file mode 100644 index 0000000000..b621f00c38 --- /dev/null +++ b/docs-xml/smbdotconf/misc/magicscript.xml @@ -0,0 +1,30 @@ +<samba:parameter name="magic script" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the name of a file which, + if opened, will be executed by the server when the file is closed. + This allows a UNIX script to be sent to the Samba host and + executed on behalf of the connected user.</para> + + <para>Scripts executed in this way will be deleted upon + completion assuming that the user has the appropriate level + of privilege and the file permissions allow the deletion.</para> + + <para>If the script generates output, output will be sent to + the file specified by the <smbconfoption name="magic output"/> + parameter (see above).</para> + + <para>Note that some shells are unable to interpret scripts + containing CR/LF instead of CR as + the end-of-line marker. Magic scripts must be executable + <emphasis>as is</emphasis> on the host, which for some hosts and + some shells will require filtering at the DOS end.</para> + + <para>Magic scripts are <emphasis>EXPERIMENTAL</emphasis> and + should <emphasis>NOT</emphasis> be relied upon.</para> +</description> +<value type="default"></value> +<value type="example">user.csh</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/messagecommand.xml b/docs-xml/smbdotconf/misc/messagecommand.xml new file mode 100644 index 0000000000..91df58ab5d --- /dev/null +++ b/docs-xml/smbdotconf/misc/messagecommand.xml @@ -0,0 +1,79 @@ +<samba:parameter name="message command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This specifies what command to run when the + server receives a WinPopup style message.</para> + + <para>This would normally be a command that would + deliver the message somehow. How this is to be done is + up to your imagination.</para> + + <para>An example is: +<programlisting> +<command moreinfo="none">message command = csh -c 'xedit %s;rm %s' &</command> +</programlisting> + </para> + + <para>This delivers the message using <command moreinfo="none">xedit</command>, then + removes it afterwards. <emphasis>NOTE THAT IT IS VERY IMPORTANT + THAT THIS COMMAND RETURN IMMEDIATELY</emphasis>. That's why I + have the '&' on the end. If it doesn't return immediately then + your PCs may freeze when sending messages (they should recover + after 30 seconds, hopefully).</para> + + <para>All messages are delivered as the global guest user. + The command takes the standard substitutions, although <parameter moreinfo="none"> + %u</parameter> won't work (<parameter moreinfo="none">%U</parameter> may be better + in this case).</para> + + <para>Apart from the standard substitutions, some additional + ones apply. In particular:</para> + + <itemizedlist> + <listitem> + <para><parameter moreinfo="none">%s</parameter> = the filename containing + the message.</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">%t</parameter> = the destination that + the message was sent to (probably the server name).</para> + </listitem> + + <listitem> + <para><parameter moreinfo="none">%f</parameter> = who the message + is from.</para> + </listitem> + </itemizedlist> + + <para>You could make this command send mail, or whatever else + takes your fancy. Please let us know of any really interesting + ideas you have.</para> + + <para> + Here's a way of sending the messages as mail to root: +<programlisting> +<command moreinfo="none">message command = /bin/mail -s 'message from %f on %m' root < %s; rm %s</command> +</programlisting> + </para> + + <para>If you don't have a message command then the message + won't be delivered and Samba will tell the sender there was + an error. Unfortunately WfWg totally ignores the error code + and carries on regardless, saying that the message was delivered. + </para> + + <para> + If you want to silently delete it then try: +<programlisting> +<command moreinfo="none">message command = rm %s</command> +</programlisting> + </para> + +</description> +<value type="default"></value> +<value type="example">csh -c 'xedit %s; rm %s' &</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/nishomedir.xml b/docs-xml/smbdotconf/misc/nishomedir.xml new file mode 100644 index 0000000000..45c451197e --- /dev/null +++ b/docs-xml/smbdotconf/misc/nishomedir.xml @@ -0,0 +1,33 @@ +<samba:parameter name="nis homedir" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Get the home share server from a NIS map. For + UNIX systems that use an automounter, the user's home directory + will often be mounted on a workstation on demand from a remote + server. </para> + + <para>When the Samba logon server is not the actual home directory + server, but is mounting the home directories via NFS then two + network hops would be required to access the users home directory + if the logon server told the client to use itself as the SMB server + for home directories (one over SMB and one over NFS). This can + be very slow.</para> + + <para>This option allows Samba to return the home share as + being on a different server to the logon server and as + long as a Samba daemon is running on the home directory server, + it will be mounted on the Samba client directly from the directory + server. When Samba is returning the home share to the client, it + will consult the NIS map specified in + <smbconfoption name="homedir map"/> and return the server + listed there.</para> + + <para>Note that for this option to work there must be a working + NIS system and the Samba server with this option must also + be a logon server.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/panicaction.xml b/docs-xml/smbdotconf/misc/panicaction.xml new file mode 100644 index 0000000000..b8ffa70458 --- /dev/null +++ b/docs-xml/smbdotconf/misc/panicaction.xml @@ -0,0 +1,17 @@ +<samba:parameter name="panic action" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a Samba developer option that allows a + system command to be called when either <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> or <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> crashes. This is usually used to + draw attention to the fact that a problem occurred. + </para> +</description> + +<value type="default"></value> +<value type="example">"/bin/sleep 90000"</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/piddirectory.xml b/docs-xml/smbdotconf/misc/piddirectory.xml new file mode 100644 index 0000000000..c9f05338ac --- /dev/null +++ b/docs-xml/smbdotconf/misc/piddirectory.xml @@ -0,0 +1,14 @@ +<samba:parameter name="pid directory" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This option specifies the directory where pid files will be placed. + </para> +</description> + +<value type="default">${prefix}/var/locks</value> +<value type="example">pid directory = /var/run/</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/postexec.xml b/docs-xml/smbdotconf/misc/postexec.xml new file mode 100644 index 0000000000..3f0cb5073a --- /dev/null +++ b/docs-xml/smbdotconf/misc/postexec.xml @@ -0,0 +1,21 @@ +<samba:parameter name="postexec" + context="S" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option specifies a command to be run + whenever the service is disconnected. It takes the usual + substitutions. The command may be run as the root on some + systems.</para> + + <para>An interesting example may be to unmount server + resources:</para> + +<para><command moreinfo="none">postexec = /etc/umount /cdrom</command></para> +</description> +<related>preexec</related> + +<value type="default"></value> +<value type="example">echo \"%u disconnected from %S from %m (%I)\" >> /tmp/log</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/preexec.xml b/docs-xml/smbdotconf/misc/preexec.xml new file mode 100644 index 0000000000..6608c83050 --- /dev/null +++ b/docs-xml/smbdotconf/misc/preexec.xml @@ -0,0 +1,29 @@ +<samba:parameter name="preexec" + context="S" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <synonym>exec</synonym> +<description> + <para>This option specifies a command to be run whenever + the service is connected to. It takes the usual substitutions.</para> + + <para>An interesting example is to send the users a welcome + message every time they log in. Maybe a message of the day? Here + is an example:</para> + + <para> + <command moreinfo="none">preexec = csh -c 'echo \"Welcome to %S!\" | + /usr/local/samba/bin/smbclient -M %m -I %I' & </command> + </para> + + <para>Of course, this could get annoying after a while :-)</para> + + <para> + See also <smbconfoption name="preexec close"/> and <smbconfoption name="postexec"/>. + </para> +</description> + +<value type="default"></value> +<value type="example">echo \"%u connected to %S from %m (%I)\" >> /tmp/log</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/preexecclose.xml b/docs-xml/smbdotconf/misc/preexecclose.xml new file mode 100644 index 0000000000..7a477e16fe --- /dev/null +++ b/docs-xml/smbdotconf/misc/preexecclose.xml @@ -0,0 +1,14 @@ +<samba:parameter name="preexec close" + context="S" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This boolean option controls whether a non-zero return code from <smbconfoption name="preexec"/> + should close the service being connected to. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/preload.xml b/docs-xml/smbdotconf/misc/preload.xml new file mode 100644 index 0000000000..94905a67ef --- /dev/null +++ b/docs-xml/smbdotconf/misc/preload.xml @@ -0,0 +1,22 @@ +<samba:parameter name="preload" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>auto services</synonym> +<description> + <para>This is a list of services that you want to be + automatically added to the browse lists. This is most useful + for homes and printers services that would otherwise not be + visible.</para> + + <para> + Note that if you just want all printers in your + printcap file loaded then the <smbconfoption name="load printers"/> + option is easier. + </para> +</description> + +<value type="default"></value> +<value type="example">fred lp colorlp</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/registryshares.xml b/docs-xml/smbdotconf/misc/registryshares.xml new file mode 100644 index 0000000000..76c83e194c --- /dev/null +++ b/docs-xml/smbdotconf/misc/registryshares.xml @@ -0,0 +1,24 @@ +<samba:parameter name="registry shares" + context="G" + type="bool" + advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This turns on or off support for share definitions read from + registry. Shares defined in <emphasis>smb.conf</emphasis> take + precedence over shares with the same name defined in + registry. See the section on registry-based configuration + for details. + </para> + + <para> + Note that this parameter defaults to <emphasis>no</emphasis>, + but it is set to <emphasis>yes</emphasis> when + <parameter>config backend</parameter> is set + to <emphasis>registry</emphasis>. + </para> +</description> +<value type="default">no</value> +<value type="example">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/remoteannounce.xml b/docs-xml/smbdotconf/misc/remoteannounce.xml new file mode 100644 index 0000000000..f23968b501 --- /dev/null +++ b/docs-xml/smbdotconf/misc/remoteannounce.xml @@ -0,0 +1,42 @@ +<samba:parameter name="remote announce" + context="G" + advanced="1" developer="1" + type="list" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This option allows you to setup <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>to periodically announce itself + to arbitrary IP addresses with an arbitrary workgroup name. + </para> + + <para> + This is useful if you want your Samba server to appear in a remote workgroup for + which the normal browse propagation rules don't work. The remote workgroup can be + anywhere that you can send IP packets to. + </para> + + <para> + For example: +<programlisting> +<command moreinfo="none">remote announce = 192.168.2.255/SERVERS 192.168.4.255/STAFF</command> +</programlisting> + the above line would cause <command moreinfo="none">nmbd</command> to announce itself + to the two given IP addresses using the given workgroup names. If you leave out the + workgroup name then the one given in the <smbconfoption name="workgroup"/> parameter + is used instead. + </para> + + <para> + The IP addresses you choose would normally be the broadcast addresses of the remote + networks, but can also be the IP addresses of known browse masters if your network + config is that stable. + </para> + + <para> + See the chapter on Network Browsing in the Samba-HOWTO book. + </para> +</description> + +<value type="default"></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/remotebrowsesync.xml b/docs-xml/smbdotconf/misc/remotebrowsesync.xml new file mode 100644 index 0000000000..c966c95be0 --- /dev/null +++ b/docs-xml/smbdotconf/misc/remotebrowsesync.xml @@ -0,0 +1,50 @@ +<samba:parameter name="remote browse sync" + context="G" + advanced="1" developer="1" + type="list" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This option allows you to setup <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> to periodically request + synchronization of browse lists with the master browser of a Samba + server that is on a remote segment. This option will allow you to + gain browse lists for multiple workgroups across routed networks. This + is done in a manner that does not work with any non-Samba servers. + </para> + + <para> + This is useful if you want your Samba server and all local + clients to appear in a remote workgroup for which the normal browse + propagation rules don't work. The remote workgroup can be anywhere + that you can send IP packets to. + </para> + + <para> + For example: +<programlisting> +<parameter>remote browse sync = 192.168.2.255 192.168.4.255</parameter> +</programlisting> + the above line would cause <command>nmbd</command> to request the master browser on the + specified subnets or addresses to synchronize their browse lists with + the local server. + </para> + + <para> + The IP addresses you choose would normally be the broadcast + addresses of the remote networks, but can also be the IP addresses + of known browse masters if your network config is that stable. If + a machine IP address is given Samba makes NO attempt to validate + that the remote machine is available, is listening, nor that it + is in fact the browse master on its segment. + </para> + + <para> + The <smbconfoption name="remote browse sync"/> may be used on networks + where there is no WINS server, and may be used on disjoint networks where + each network has its own WINS server. + </para> +</description> + +<value type="default"></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/resetonzerovc.xml b/docs-xml/smbdotconf/misc/resetonzerovc.xml new file mode 100644 index 0000000000..3276cf5143 --- /dev/null +++ b/docs-xml/smbdotconf/misc/resetonzerovc.xml @@ -0,0 +1,28 @@ +<samba:parameter name="reset on zero vc" + context="G" + type="boolean" + advanced="1" developer="0" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This boolean option controls whether an incoming session setup + should kill other connections coming from the same IP. This matches + the default Windows 2003 behaviour. + + Setting this parameter to yes becomes necessary when you have a flaky + network and windows decides to reconnect while the old connection + still has files with share modes open. These files become inaccessible + over the new connection. + + The client sends a zero VC on the new connection, and Windows 2003 + kills all other connections coming from the same IP. This way the + locked files are accessible again. + + Please be aware that enabling this option will kill connections behind + a masquerading router. + + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/rootpostexec.xml b/docs-xml/smbdotconf/misc/rootpostexec.xml new file mode 100644 index 0000000000..4aff4f0334 --- /dev/null +++ b/docs-xml/smbdotconf/misc/rootpostexec.xml @@ -0,0 +1,16 @@ +<samba:parameter name="root postexec" + context="S" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is the same as the <parameter moreinfo="none">postexec</parameter> + parameter except that the command is run as root. This is useful for + unmounting filesystems (such as CDROMs) after a connection is closed. + </para> +</description> + +<related>postexec</related> +<value type="default"></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/rootpreexec.xml b/docs-xml/smbdotconf/misc/rootpreexec.xml new file mode 100644 index 0000000000..89d10ec53b --- /dev/null +++ b/docs-xml/smbdotconf/misc/rootpreexec.xml @@ -0,0 +1,18 @@ +<samba:parameter name="root preexec" + context="S" + type="string" + advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is the same as the <parameter moreinfo="none">preexec</parameter> + parameter except that the command is run as root. This is useful for + mounting filesystems (such as CDROMs) when a connection is opened. + </para> +</description> + +<related>preexec</related> +<related>preexec close</related> + +<value type="default"></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/rootpreexecclose.xml b/docs-xml/smbdotconf/misc/rootpreexecclose.xml new file mode 100644 index 0000000000..e0f11b567a --- /dev/null +++ b/docs-xml/smbdotconf/misc/rootpreexecclose.xml @@ -0,0 +1,15 @@ +<samba:parameter name="root preexec close" + context="S" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is the same as the <parameter moreinfo="none">preexec close + </parameter> parameter except that the command is run as root.</para> +</description> + +<related>preexec</related> +<related>preexec close</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/setdirectory.xml b/docs-xml/smbdotconf/misc/setdirectory.xml new file mode 100644 index 0000000000..5e7b379a04 --- /dev/null +++ b/docs-xml/smbdotconf/misc/setdirectory.xml @@ -0,0 +1,19 @@ +<samba:parameter name="set directory" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + If <command moreinfo="none">set directory = no</command>, then users of the + service may not use the setdir command to change directory. + </para> + + <para> + The <command moreinfo="none">setdir</command> command is only implemented + in the Digital Pathworks client. See the Pathworks documentation + for details. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/socketaddress.xml b/docs-xml/smbdotconf/misc/socketaddress.xml new file mode 100644 index 0000000000..7566380e70 --- /dev/null +++ b/docs-xml/smbdotconf/misc/socketaddress.xml @@ -0,0 +1,18 @@ +<samba:parameter name="socket address" + context="G" + type="string" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option allows you to control what + address Samba will listen for connections on. This is used to + support multiple virtual interfaces on the one server, each + with a different configuration.</para> + + <para>By default Samba will accept connections on any + address.</para> +</description> + +<value type="default"></value> +<value type="example">192.168.2.20</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/timeoffset.xml b/docs-xml/smbdotconf/misc/timeoffset.xml new file mode 100644 index 0000000000..1afc514e60 --- /dev/null +++ b/docs-xml/smbdotconf/misc/timeoffset.xml @@ -0,0 +1,15 @@ +<samba:parameter name="time offset" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter is a setting in minutes to add + to the normal GMT to local time conversion. This is useful if + you are serving a lot of PCs that have incorrect daylight + saving time handling.</para> +</description> + +<value type="default">0</value> +<value type="example">60</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/usershareallowguests.xml b/docs-xml/smbdotconf/misc/usershareallowguests.xml new file mode 100644 index 0000000000..738f3a11ba --- /dev/null +++ b/docs-xml/smbdotconf/misc/usershareallowguests.xml @@ -0,0 +1,16 @@ +<samba:parameter name="usershare allow guests" + context="G" + basic="1" advanced="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls whether user defined shares are allowed + to be accessed by non-authenticated users or not. It is the equivalent + of allowing people who can create a share the option of setting + <parameter moreinfo="none">guest ok = yes</parameter> in a share + definition. Due to the security sensitive nature of this the default + is set to off.</para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/usersharemaxshares.xml b/docs-xml/smbdotconf/misc/usersharemaxshares.xml new file mode 100644 index 0000000000..ed76283e61 --- /dev/null +++ b/docs-xml/smbdotconf/misc/usersharemaxshares.xml @@ -0,0 +1,14 @@ +<samba:parameter name="usershare max shares" + context="G" + basic="1" advanced="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the number of user defined shares + that are allowed to be created by users belonging to the group owning the + usershare directory. If set to zero (the default) user defined shares are ignored. + </para> + +</description> +<value type="default">0</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/usershareowneronly.xml b/docs-xml/smbdotconf/misc/usershareowneronly.xml new file mode 100644 index 0000000000..4aab43a0da --- /dev/null +++ b/docs-xml/smbdotconf/misc/usershareowneronly.xml @@ -0,0 +1,19 @@ +<samba:parameter name="usershare owner only" + context="G" + basic="1" advanced="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls whether the pathname exported by + a user defined shares must be owned by the user creating the + user defined share or not. If set to True (the default) then + smbd checks that the directory path being shared is owned by + the user who owns the usershare file defining this share and + refuses to create the share if not. If set to False then no + such check is performed and any directory path may be exported + regardless of who owns it. + </para> + +</description> +<value type="default">True</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/usersharepath.xml b/docs-xml/smbdotconf/misc/usersharepath.xml new file mode 100644 index 0000000000..9e0bfe57d5 --- /dev/null +++ b/docs-xml/smbdotconf/misc/usersharepath.xml @@ -0,0 +1,33 @@ +<samba:parameter name="usershare path" + context="G" + basic="1" advanced="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the absolute path of the directory on the + filesystem used to store the user defined share definition files. + This directory must be owned by root, and have no access for + other, and be writable only by the group owner. In addition the + "sticky" bit must also be set, restricting rename and delete to + owners of a file (in the same way the /tmp directory is usually configured). + Members of the group owner of this directory are the users allowed to create + usershares. If this parameter is undefined then no user defined + shares are allowed. + </para> + <para> + For example, a valid usershare directory might be /usr/local/samba/lib/usershares, + set up as follows. + </para> + <para> + <programlisting> + ls -ld /usr/local/samba/lib/usershares/ + drwxrwx--T 2 root power_users 4096 2006-05-05 12:27 /usr/local/samba/lib/usershares/ + </programlisting> + </para> + <para> + In this case, only members of the group "power_users" can create user defined shares. + </para> + +</description> +<value type="default">NULL</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/usershareprefixallowlist.xml b/docs-xml/smbdotconf/misc/usershareprefixallowlist.xml new file mode 100644 index 0000000000..bacc2e9530 --- /dev/null +++ b/docs-xml/smbdotconf/misc/usershareprefixallowlist.xml @@ -0,0 +1,24 @@ +<samba:parameter name="usershare prefix allow list" + context="G" + basic="1" advanced="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies a list of absolute pathnames + the root of which are allowed to be exported by user defined share definitions. + If the pathname exported doesn't start with one of the strings in this + list the user defined share will not be allowed. This allows the Samba + administrator to restrict the directories on the system that can be + exported by user defined shares. + </para> + <para> + If there is a "usershare prefix deny list" and also a + "usershare prefix allow list" the deny list is processed + first, followed by the allow list, thus leading to the most + restrictive interpretation. + </para> + +</description> +<value type="default">NULL</value> +<value type="example">/home /data /space</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/usershareprefixdenylist.xml b/docs-xml/smbdotconf/misc/usershareprefixdenylist.xml new file mode 100644 index 0000000000..75d4ba9afc --- /dev/null +++ b/docs-xml/smbdotconf/misc/usershareprefixdenylist.xml @@ -0,0 +1,25 @@ +<samba:parameter name="usershare prefix deny list" + context="G" + basic="1" advanced="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies a list of absolute pathnames + the root of which are NOT allowed to be exported by user defined share definitions. + If the pathname exported starts with one of the strings in this + list the user defined share will not be allowed. Any pathname not + starting with one of these strings will be allowed to be exported + as a usershare. This allows the Samba administrator to restrict the + directories on the system that can be exported by user defined shares. + </para> + <para> + If there is a "usershare prefix deny list" and also a + "usershare prefix allow list" the deny list is processed + first, followed by the allow list, thus leading to the most + restrictive interpretation. + </para> + +</description> +<value type="default">NULL</value> +<value type="example">/etc /dev /private</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/usersharetemplateshare.xml b/docs-xml/smbdotconf/misc/usersharetemplateshare.xml new file mode 100644 index 0000000000..efe2e81d22 --- /dev/null +++ b/docs-xml/smbdotconf/misc/usersharetemplateshare.xml @@ -0,0 +1,24 @@ +<samba:parameter name="usershare template share" + context="G" + basic="1" advanced="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>User defined shares only have limited possible parameters + such as path, guest ok etc. This parameter allows usershares to + "cloned" from an existing share. If "usershare template share" + is set to the name of an existing share, then all usershares + created have their defaults set from the parameters set on this + share. + </para> + <para> + The target share may be set to be invalid for real file + sharing by setting the parameter "-valid = False" on the template + share definition. This causes it not to be seen as a real exported + share but to be able to be used as a template for usershares. + </para> + +</description> +<value type="default">NULL</value> +<value type="example">template_share</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/utmp.xml b/docs-xml/smbdotconf/misc/utmp.xml new file mode 100644 index 0000000000..67c02cc64c --- /dev/null +++ b/docs-xml/smbdotconf/misc/utmp.xml @@ -0,0 +1,25 @@ +<samba:parameter name="utmp" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This boolean parameter is only available if Samba has been configured and compiled + with the option <command moreinfo="none">--with-utmp</command>. If set to + <constant>yes</constant> then Samba will attempt to add utmp or utmpx records + (depending on the UNIX system) whenever a connection is made to a Samba server. + Sites may use this to record the user connecting to a Samba share. + </para> + + <para> + Due to the requirements of the utmp record, we are required to create a unique + identifier for the incoming user. Enabling this option creates an n^2 algorithm + to find this number. This may impede performance on large installations. + </para> +</description> + +<related>utmp directory</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/utmpdirectory.xml b/docs-xml/smbdotconf/misc/utmpdirectory.xml new file mode 100644 index 0000000000..b02fc93bf0 --- /dev/null +++ b/docs-xml/smbdotconf/misc/utmpdirectory.xml @@ -0,0 +1,21 @@ +<samba:parameter name="utmp directory" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter is only available if Samba has + been configured and compiled with the option <command moreinfo="none"> + --with-utmp</command>. It specifies a directory pathname that is + used to store the utmp or utmpx files (depending on the UNIX system) that + record user connections to a Samba server. By default this is + not set, meaning the system will use whatever utmp file the + native system is set to use (usually + <filename moreinfo="none">/var/run/utmp</filename> on Linux).</para> +</description> + +<related>utmp</related> + +<value type="default"><comment>Determined automatically</comment></value> +<value type="example">/var/run/utmp</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/valid.xml b/docs-xml/smbdotconf/misc/valid.xml new file mode 100644 index 0000000000..2f92f6367c --- /dev/null +++ b/docs-xml/smbdotconf/misc/valid.xml @@ -0,0 +1,18 @@ +<samba:parameter name="-valid" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> This parameter indicates whether a share is + valid and thus can be used. When this parameter is set to false, + the share will be in no way visible nor accessible. + </para> + + <para> + This option should not be + used by regular users but might be of help to developers. + Samba uses this option internally to mark shares as deleted. + </para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/volume.xml b/docs-xml/smbdotconf/misc/volume.xml new file mode 100644 index 0000000000..d3385e704c --- /dev/null +++ b/docs-xml/smbdotconf/misc/volume.xml @@ -0,0 +1,12 @@ +<samba:parameter name="volume" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This allows you to override the volume label + returned for a share. Useful for CDROMs with installation programs + that insist on a particular volume label.</para> +</description> + +<value type="default"><comment>the name of the share</comment></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/widelinks.xml b/docs-xml/smbdotconf/misc/widelinks.xml new file mode 100644 index 0000000000..fb707c1950 --- /dev/null +++ b/docs-xml/smbdotconf/misc/widelinks.xml @@ -0,0 +1,18 @@ +<samba:parameter name="wide links" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls whether or not links + in the UNIX file system may be followed by the server. Links + that point to areas within the directory tree exported by the + server are always allowed; this parameter controls access only + to areas that are outside the directory tree being exported.</para> + + <para>Note that setting this parameter can have a negative + effect on your server performance due to the extra system calls + that Samba has to do in order to perform the link checks.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/misc/wtmpdirectory.xml b/docs-xml/smbdotconf/misc/wtmpdirectory.xml new file mode 100644 index 0000000000..f58b522573 --- /dev/null +++ b/docs-xml/smbdotconf/misc/wtmpdirectory.xml @@ -0,0 +1,23 @@ +<samba:parameter name="wtmp directory" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter is only available if Samba has been configured and compiled with the option <command moreinfo="none"> + --with-utmp</command>. It specifies a directory pathname that is used to store the wtmp or wtmpx files (depending on + the UNIX system) that record user connections to a Samba server. The difference with the utmp directory is the fact + that user info is kept after a user has logged out. + </para> + + <para> + By default this is not set, meaning the system will use whatever utmp file the native system is set to use (usually + <filename moreinfo="none">/var/run/wtmp</filename> on Linux). + </para> +</description> + +<related>utmp</related> +<value type="default"/> +<value type="example">/var/log/wtmp</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/addportcommand.xml b/docs-xml/smbdotconf/printing/addportcommand.xml new file mode 100644 index 0000000000..294ea8e188 --- /dev/null +++ b/docs-xml/smbdotconf/printing/addportcommand.xml @@ -0,0 +1,26 @@ +<samba:parameter name="add port command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Samba 3.0.23 introduced support for adding printer ports + remotely using the Windows "Add Standard TCP/IP Port Wizard". + This option defines an external program to be executed when + smbd receives a request to add a new Port to the system. + The script is passed two parameters:</para> + + <itemizedlist> + <listitem><para><parameter moreinfo="none">port name</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">device URI</parameter></para></listitem> + </itemizedlist> + + <para>The deviceURI is in the for of socket://<hostname>[:<portnumber>] + or lpd://<hostname>/<queuename>.</para> +</description> + +<related>enum ports command</related> + +<value type="default"></value> +<value type="example">/etc/samba/scripts/addport.sh</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/addprintercommand.xml b/docs-xml/smbdotconf/printing/addprintercommand.xml new file mode 100644 index 0000000000..ed3c5aa3be --- /dev/null +++ b/docs-xml/smbdotconf/printing/addprintercommand.xml @@ -0,0 +1,62 @@ +<samba:parameter name="add printer command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>With the introduction of MS-RPC based printing + support for Windows NT/2000 clients in Samba 2.2, The MS Add + Printer Wizard (APW) icon is now also available in the + "Printers..." folder displayed a share listing. The APW + allows for printers to be add remotely to a Samba or Windows + NT/2000 print server.</para> + + <para>For a Samba host this means that the printer must be + physically added to the underlying printing system. The <parameter moreinfo="none">add + printer command</parameter> defines a script to be run which + will perform the necessary operations for adding the printer + to the print system and to add the appropriate service definition + to the <filename moreinfo="none">smb.conf</filename> file in order that it can be + shared by <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>.</para> + + <para>The <parameter moreinfo="none">addprinter command</parameter> is + automatically invoked with the following parameter (in + order):</para> + + <itemizedlist> + <listitem><para><parameter moreinfo="none">printer name</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">share name</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">port name</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">driver name</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">location</parameter></para></listitem> + <listitem><para><parameter moreinfo="none">Windows 9x driver location</parameter></para></listitem> + </itemizedlist> + + <para>All parameters are filled in from the PRINTER_INFO_2 structure sent + by the Windows NT/2000 client with one exception. The "Windows 9x + driver location" parameter is included for backwards compatibility + only. The remaining fields in the structure are generated from answers + to the APW questions.</para> + + <para>Once the <parameter moreinfo="none">addprinter command</parameter> has + been executed, <command moreinfo="none">smbd</command> will reparse the <filename moreinfo="none"> + smb.conf</filename> to determine if the share defined by the APW + exists. If the sharename is still invalid, then <command moreinfo="none">smbd + </command> will return an ACCESS_DENIED error to the client.</para> + + <para> + The "add printer command" program can output a single line of text, + which Samba will set as the port the new printer is connected to. + If this line isn't output, Samba won't reload its printer shares. + </para> + +</description> + +<related>deleteprinter command</related> +<related>printing</related> +<related>show add printer wizard</related> + +<value type="default"></value> +<value type="example">/usr/bin/addprinter</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/cupsoptions.xml b/docs-xml/smbdotconf/printing/cupsoptions.xml new file mode 100644 index 0000000000..616e273266 --- /dev/null +++ b/docs-xml/smbdotconf/printing/cupsoptions.xml @@ -0,0 +1,35 @@ +<samba:parameter name="cups options" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter is only applicable if <smbconfoption name="printing"/> is + set to <constant>cups</constant>. Its value is a free form string of options + passed directly to the cups library. + </para> + + <para> + You can pass any generic print option known to CUPS (as listed + in the CUPS "Software Users' Manual"). You can also pass any printer + specific option (as listed in "lpoptions -d printername -l") + valid for the target queue. + Multiple parameters should be space-delimited name/value pairs according to + the PAPI text option ABNF specification. Collection values + ("name={a=... b=... c=...}") are stored with the curley brackets intact. + </para> + + <para> + You should set this parameter to <constant>raw</constant> if your CUPS server + <filename>error_log</filename> file contains messages such as + "Unsupported format 'application/octet-stream'" when printing from a Windows client + through Samba. It is no longer necessary to enable + system wide raw printing in <filename>/etc/cups/mime.{convs,types}</filename>. + </para> + +</description> + +<value type="default">""</value> +<value type="example">"raw media=a4"</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/cupsserver.xml b/docs-xml/smbdotconf/printing/cupsserver.xml new file mode 100644 index 0000000000..b31db33eac --- /dev/null +++ b/docs-xml/smbdotconf/printing/cupsserver.xml @@ -0,0 +1,26 @@ +<samba:parameter name="cups server" + context="G" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter is only applicable if <smbconfoption name="printing"/> is set to <constant>cups</constant>. + </para> + + <para> + If set, this option overrides the ServerName option in the CUPS <filename>client.conf</filename>. This is + necessary if you have virtual samba servers that connect to different CUPS daemons. + </para> + + <para>Optionally, a port can be specified by separating the server name + and port number with a colon. If no port was specified, + the default port for IPP (631) will be used. + </para> + +</description> + +<value type="default">""</value> +<value type="example">mycupsserver</value> +<value type="example">mycupsserver:1631</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/defaultdevmode.xml b/docs-xml/smbdotconf/printing/defaultdevmode.xml new file mode 100644 index 0000000000..218ddcb356 --- /dev/null +++ b/docs-xml/smbdotconf/printing/defaultdevmode.xml @@ -0,0 +1,38 @@ +<samba:parameter name="default devmode" + context="S" + type="boolean" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter is only applicable to <smbconfoption name="printable"/> services. + When smbd is serving Printer Drivers to Windows NT/2k/XP clients, each printer on the Samba + server has a Device Mode which defines things such as paper size and + orientation and duplex settings. The device mode can only correctly be + generated by the printer driver itself (which can only be executed on a + Win32 platform). Because smbd is unable to execute the driver code + to generate the device mode, the default behavior is to set this field + to NULL. + </para> + + <para>Most problems with serving printer drivers to Windows NT/2k/XP clients + can be traced to a problem with the generated device mode. Certain drivers + will do things such as crashing the client's Explorer.exe with a NULL devmode. + However, other printer drivers can cause the client's spooler service + (spoolsv.exe) to die if the devmode was not created by the driver itself + (i.e. smbd generates a default devmode). + </para> + + <para>This parameter should be used with care and tested with the printer + driver in question. It is better to leave the device mode to NULL + and let the Windows client set the correct values. Because drivers do not + do this all the time, setting <command moreinfo="none">default devmode = yes</command> + will instruct smbd to generate a default one. + </para> + + <para>For more information on Windows NT/2k printing and Device Modes, + see the <ulink url="http://msdn.microsoft.com/">MSDN documentation</ulink>. +</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/deleteprintercommand.xml b/docs-xml/smbdotconf/printing/deleteprintercommand.xml new file mode 100644 index 0000000000..b48ab5700d --- /dev/null +++ b/docs-xml/smbdotconf/printing/deleteprintercommand.xml @@ -0,0 +1,36 @@ +<samba:parameter name="deleteprinter command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>With the introduction of MS-RPC based printer + support for Windows NT/2000 clients in Samba 2.2, it is now + possible to delete printer at run time by issuing the + DeletePrinter() RPC call.</para> + + <para>For a Samba host this means that the printer must be + physically deleted from underlying printing system. The + <smbconfoption name="deleteprinter command"/> defines a script to be run which + will perform the necessary operations for removing the printer + from the print system and from <filename moreinfo="none">smb.conf</filename>. + </para> + + <para>The <smbconfoption name="deleteprinter command"/> is + automatically called with only one parameter: <smbconfoption name="printer name"/>. + </para> + + <para>Once the <smbconfoption name="deleteprinter command"/> has + been executed, <command moreinfo="none">smbd</command> will reparse the <filename moreinfo="none"> + smb.conf</filename> to associated printer no longer exists. + If the sharename is still valid, then <command moreinfo="none">smbd + </command> will return an ACCESS_DENIED error to the client.</para> +</description> + +<related>addprinter command</related> +<related>printing</related> +<related>show add printer wizard</related> + +<value type="default"></value> +<value type="example">/usr/bin/removeprinter</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/disablespoolss.xml b/docs-xml/smbdotconf/printing/disablespoolss.xml new file mode 100644 index 0000000000..9367eae8b3 --- /dev/null +++ b/docs-xml/smbdotconf/printing/disablespoolss.xml @@ -0,0 +1,23 @@ +<samba:parameter name="disable spoolss" + context="G" + type="boolean" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Enabling this parameter will disable Samba's support + for the SPOOLSS set of MS-RPC's and will yield identical behavior + as Samba 2.0.x. Windows NT/2000 clients will downgrade to using + Lanman style printing commands. Windows 9x/ME will be unaffected by + the parameter. However, this will also disable the ability to upload + printer drivers to a Samba server via the Windows NT Add Printer + Wizard or by using the NT printer properties dialog window. It will + also disable the capability of Windows NT/2000 clients to download + print drivers from the Samba host upon demand. + <emphasis>Be very careful about enabling this parameter.</emphasis> +</para> +</description> + +<related>use client driver</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/enumportscommand.xml b/docs-xml/smbdotconf/printing/enumportscommand.xml new file mode 100644 index 0000000000..41db739544 --- /dev/null +++ b/docs-xml/smbdotconf/printing/enumportscommand.xml @@ -0,0 +1,25 @@ +<samba:parameter name="enumports command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The concept of a "port" is fairly foreign + to UNIX hosts. Under Windows NT/2000 print servers, a port + is associated with a port monitor and generally takes the form of + a local port (i.e. LPT1:, COM1:, FILE:) or a remote port + (i.e. LPD Port Monitor, etc...). By default, Samba has only one + port defined--<constant>"Samba Printer Port"</constant>. Under + Windows NT/2000, all printers must have a valid port name. + If you wish to have a list of ports displayed (<command moreinfo="none">smbd + </command> does not use a port name for anything) other than + the default <constant>"Samba Printer Port"</constant>, you + can define <parameter moreinfo="none">enumports command</parameter> to point to + a program which should generate a list of ports, one per line, + to standard output. This listing will then be used in response + to the level 1 and 2 EnumPorts() RPC.</para> +</description> + +<value type="default"></value> +<value type="example">/usr/bin/listports</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/forceprintername.xml b/docs-xml/smbdotconf/printing/forceprintername.xml new file mode 100644 index 0000000000..453feedc78 --- /dev/null +++ b/docs-xml/smbdotconf/printing/forceprintername.xml @@ -0,0 +1,39 @@ +<samba:parameter name="force printername" + context="S" + type="boolean" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>When printing from Windows NT (or later), + each printer in <filename>smb.conf</filename> has two + associated names which can be used by the client. The first + is the sharename (or shortname) defined in smb.conf. This + is the only printername available for use by Windows 9x clients. + The second name associated with a printer can be seen when + browsing to the "Printers" (or "Printers and Faxes") folder + on the Samba server. This is referred to simply as the printername + (not to be confused with the <parameter>printer name</parameter> option). + </para> + + <para>When assigning a new driver to a printer on a remote + Windows compatible print server such as Samba, the Windows client + will rename the printer to match the driver name just uploaded. + This can result in confusion for users when multiple + printers are bound to the same driver. To prevent Samba from + allowing the printer's printername to differ from the sharename + defined in smb.conf, set <parameter>force printername = yes</parameter>. + </para> + + <para>Be aware that enabling this parameter may affect migrating + printers from a Windows server to Samba since Windows has no way to + force the sharename and printername to match.</para> + + <para>It is recommended that this parameter's value not be changed + once the printer is in use by clients as this could cause a user + not be able to delete printer connections from their local Printers + folder.</para> + +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/iprintserver.xml b/docs-xml/smbdotconf/printing/iprintserver.xml new file mode 100644 index 0000000000..81c7ca55a2 --- /dev/null +++ b/docs-xml/smbdotconf/printing/iprintserver.xml @@ -0,0 +1,19 @@ +<samba:parameter name="iprint server" + context="G" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter is only applicable if <smbconfoption name="printing"/> is set to <constant>iprint</constant>. + </para> + + <para> + If set, this option overrides the ServerName option in the CUPS <filename>client.conf</filename>. This is + necessary if you have virtual samba servers that connect to different CUPS daemons. + </para> +</description> + +<value type="default">""</value> +<value type="example">MYCUPSSERVER</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/loadprinters.xml b/docs-xml/smbdotconf/printing/loadprinters.xml new file mode 100644 index 0000000000..7e40ebee18 --- /dev/null +++ b/docs-xml/smbdotconf/printing/loadprinters.xml @@ -0,0 +1,14 @@ +<samba:parameter name="load printers" + context="G" + type="boolean" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>A boolean variable that controls whether all + printers in the printcap will be loaded for browsing by default. + See the <smbconfoption name="printers"/> section for + more details.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/lppausecommand.xml b/docs-xml/smbdotconf/printing/lppausecommand.xml new file mode 100644 index 0000000000..0bb66226f2 --- /dev/null +++ b/docs-xml/smbdotconf/printing/lppausecommand.xml @@ -0,0 +1,39 @@ +<samba:parameter name="lppause command" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the command to be + executed on the server host in order to stop printing or spooling + a specific print job.</para> + + <para>This command should be a program or script which takes + a printer name and job number to pause the print job. One way + of implementing this is by using job priorities, where jobs + having a too low priority won't be sent to the printer.</para> + + <para>If a <parameter moreinfo="none">%p</parameter> is given then the printer name + is put in its place. A <parameter moreinfo="none">%j</parameter> is replaced with + the job number (an integer). On HPUX (see <parameter moreinfo="none">printing=hpux + </parameter>), if the <parameter moreinfo="none">-p%p</parameter> option is added + to the lpq command, the job will show up with the correct status, i.e. + if the job priority is lower than the set fence priority it will + have the PAUSED status, whereas if the priority is equal or higher it + will have the SPOOLED or PRINTING status.</para> + + <para>Note that it is good practice to include the absolute path + in the lppause command as the PATH may not be available to the server.</para> +</description> + +<related>printing</related> + +<value type="default"><comment>Currently no default value is given to + this string, unless the value of the <smbconfoption name="printing"/> + parameter is <constant>SYSV</constant>, in which case the default is : + <command moreinfo="none">lp -i %p-%j -H hold</command> or if the value of the + <parameter moreinfo="none">printing</parameter> parameter is + <constant>SOFTQ</constant>, then the default is: + <command moreinfo="none">qstat -s -j%j -h</command>. </comment></value> +<value type="example">/usr/bin/lpalt %p-%j -p0</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/lpqcachetime.xml b/docs-xml/smbdotconf/printing/lpqcachetime.xml new file mode 100644 index 0000000000..5a64937906 --- /dev/null +++ b/docs-xml/smbdotconf/printing/lpqcachetime.xml @@ -0,0 +1,29 @@ +<samba:parameter name="lpq cache time" + context="G" + type="integer" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This controls how long lpq info will be cached + for to prevent the <command moreinfo="none">lpq</command> command being called too + often. A separate cache is kept for each variation of the <command moreinfo="none"> + lpq</command> command used by the system, so if you use different + <command moreinfo="none">lpq</command> commands for different users then they won't + share cache information.</para> + + <para>The cache files are stored in <filename moreinfo="none">/tmp/lpq.xxxx</filename> + where xxxx is a hash of the <command moreinfo="none">lpq</command> command in use.</para> + + <para>The default is 30 seconds, meaning that the cached results + of a previous identical <command moreinfo="none">lpq</command> command will be used + if the cached data is less than 30 seconds old. A large value may + be advisable if your <command moreinfo="none">lpq</command> command is very slow.</para> + +<para>A value of 0 will disable caching completely.</para> +</description> + +<related>printing</related> + +<value type="default">30</value> +<value type="example">10</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/lpqcommand.xml b/docs-xml/smbdotconf/printing/lpqcommand.xml new file mode 100644 index 0000000000..8c06b75898 --- /dev/null +++ b/docs-xml/smbdotconf/printing/lpqcommand.xml @@ -0,0 +1,42 @@ +<samba:parameter name="lpq command" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>This parameter specifies the command to be + executed on the server host in order to obtain <command moreinfo="none">lpq + </command>-style printer status information.</para> + + <para>This command should be a program or script which + takes a printer name as its only parameter and outputs printer + status information.</para> + + <para>Currently nine styles of printer status information + are supported; BSD, AIX, LPRNG, PLP, SYSV, HPUX, QNX, CUPS, and SOFTQ. + This covers most UNIX systems. You control which type is expected + using the <parameter moreinfo="none">printing =</parameter> option.</para> + + <para>Some clients (notably Windows for Workgroups) may not + correctly send the connection number for the printer they are + requesting status information about. To get around this, the + server reports on the first printer service connected to by the + client. This only happens if the connection number sent is invalid.</para> + + <para>If a <parameter moreinfo="none">%p</parameter> is given then the printer name + is put in its place. Otherwise it is placed at the end of the + command.</para> + + <para>Note that it is good practice to include the absolute path + in the <parameter moreinfo="none">lpq command</parameter> as the <envar>$PATH + </envar> may not be available to the server. When compiled with + the CUPS libraries, no <parameter moreinfo="none">lpq command</parameter> is + needed because smbd will make a library call to obtain the + print queue listing.</para> +</description> + +<related>printing</related> + +<value type="example">/usr/bin/lpq -P%p</value> +<value type="default"></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/lpresumecommand.xml b/docs-xml/smbdotconf/printing/lpresumecommand.xml new file mode 100644 index 0000000000..706a999b1f --- /dev/null +++ b/docs-xml/smbdotconf/printing/lpresumecommand.xml @@ -0,0 +1,38 @@ +<samba:parameter name="lpresume command" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the command to be + executed on the server host in order to restart or continue + printing or spooling a specific print job.</para> + + <para>This command should be a program or script which takes + a printer name and job number to resume the print job. See + also the <smbconfoption name="lppause command"/> parameter.</para> + + <para>If a <parameter moreinfo="none">%p</parameter> is given then the printer name + is put in its place. A <parameter moreinfo="none">%j</parameter> is replaced with + the job number (an integer).</para> + + <para>Note that it is good practice to include the absolute path + in the <parameter moreinfo="none">lpresume command</parameter> as the PATH may not + be available to the server.</para> + + <para>See also the <smbconfoption name="printing"/> parameter.</para> + + <para>Default: Currently no default value is given + to this string, unless the value of the <parameter moreinfo="none">printing</parameter> + parameter is <constant>SYSV</constant>, in which case the default is:</para> + + <para><command moreinfo="none">lp -i %p-%j -H resume</command></para> + + <para>or if the value of the <parameter moreinfo="none">printing</parameter> parameter + is <constant>SOFTQ</constant>, then the default is:</para> + + <para><command moreinfo="none">qstat -s -j%j -r</command></para> +</description> + +<value type="example">/usr/bin/lpalt %p-%j -p2</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/lprmcommand.xml b/docs-xml/smbdotconf/printing/lprmcommand.xml new file mode 100644 index 0000000000..0b8375f94d --- /dev/null +++ b/docs-xml/smbdotconf/printing/lprmcommand.xml @@ -0,0 +1,36 @@ +<samba:parameter name="lprm command" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the command to be + executed on the server host in order to delete a print job.</para> + + <para>This command should be a program or script which takes + a printer name and job number, and deletes the print job.</para> + + <para>If a <parameter moreinfo="none">%p</parameter> is given then the printer name + is put in its place. A <parameter moreinfo="none">%j</parameter> is replaced with + the job number (an integer).</para> + + <para>Note that it is good practice to include the absolute + path in the <parameter moreinfo="none">lprm command</parameter> as the PATH may not be + available to the server.</para> + + <para> + Examples of use are: +<programlisting> +lprm command = /usr/bin/lprm -P%p %j + +or + +lprm command = /usr/bin/cancel %p-%j +</programlisting> + </para> + +</description> +<related>printing</related> + +<value type="default"> determined by printing parameter</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/maxprintjobs.xml b/docs-xml/smbdotconf/printing/maxprintjobs.xml new file mode 100644 index 0000000000..51801620e8 --- /dev/null +++ b/docs-xml/smbdotconf/printing/maxprintjobs.xml @@ -0,0 +1,16 @@ +<samba:parameter name="max print jobs" + context="S" + print="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter limits the maximum number of + jobs allowable in a Samba printer queue at any given moment. + If this number is exceeded, <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will remote "Out of Space" to the client. + </para> +</description> + +<value type="default">1000</value> +<value type="example">5000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/maxreportedprintjobs.xml b/docs-xml/smbdotconf/printing/maxreportedprintjobs.xml new file mode 100644 index 0000000000..34a5eb71c1 --- /dev/null +++ b/docs-xml/smbdotconf/printing/maxreportedprintjobs.xml @@ -0,0 +1,19 @@ +<samba:parameter name="max reported print jobs" + context="S" + type="integer" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter limits the maximum number of jobs displayed in a port monitor for + Samba printer queue at any given moment. If this number is exceeded, the excess + jobs will not be shown. A value of zero means there is no limit on the number of + print jobs reported. + </para> +</description> + +<related>max print jobs</related> + +<value type="default">0</value> +<value type="example">1000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/os2drivermap.xml b/docs-xml/smbdotconf/printing/os2drivermap.xml new file mode 100644 index 0000000000..a578d3af44 --- /dev/null +++ b/docs-xml/smbdotconf/printing/os2drivermap.xml @@ -0,0 +1,24 @@ +<samba:parameter name="os2 driver map" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The parameter is used to define the absolute + path to a file containing a mapping of Windows NT printer driver + names to OS/2 printer driver names. The format is:</para> + + <para><nt driver name> = <os2 driver name>.<device name></para> + + <para>For example, a valid entry using the HP LaserJet 5 + printer driver would appear as <command moreinfo="none">HP LaserJet 5L = LASERJET.HP + LaserJet 5L</command>.</para> + + <para> + The need for the file is due to the printer driver namespace problem described in + the chapter on Classical Printing in the Samba3-HOWTO book. For more + details on OS/2 clients, please refer to chapter on other clients in the Samba3-HOWTO book. + </para> +</description> +<value type="default"/> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/printable.xml b/docs-xml/smbdotconf/printing/printable.xml new file mode 100644 index 0000000000..73aa533ed3 --- /dev/null +++ b/docs-xml/smbdotconf/printing/printable.xml @@ -0,0 +1,18 @@ +<samba:parameter name="printable" + context="S" + print="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>print ok</synonym> +<description> + <para>If this parameter is <constant>yes</constant>, then + clients may open, write to and submit spool files on the directory + specified for the service. </para> + + <para>Note that a printable service will ALWAYS allow writing + to the service path (user privileges permitting) via the spooling + of print data. The <smbconfoption name="read only"/> parameter controls only non-printing access to + the resource.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/printcapcachetime.xml b/docs-xml/smbdotconf/printing/printcapcachetime.xml new file mode 100644 index 0000000000..7dcd1b62d4 --- /dev/null +++ b/docs-xml/smbdotconf/printing/printcapcachetime.xml @@ -0,0 +1,21 @@ +<samba:parameter name="printcap cache time" + context="G" + type="integer" + print="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option specifies the number of seconds before the printing + subsystem is again asked for the known printers. If the value + is greater than 60 the initial waiting time is set to 60 seconds + to allow an earlier first rescan of the printing subsystem. + </para> + + <para>Setting this parameter to 0 disables any rescanning for new + or removed printers after the initial startup. + </para> +</description> + + +<value type="default">750</value> +<value type="example">600</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/printcapname.xml b/docs-xml/smbdotconf/printing/printcapname.xml new file mode 100644 index 0000000000..90c575f31c --- /dev/null +++ b/docs-xml/smbdotconf/printing/printcapname.xml @@ -0,0 +1,55 @@ +<samba:parameter name="printcap name" + context="S" + type="string" + print="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>printcap</synonym> +<description> + <para> + This parameter may be used to override the compiled-in default printcap name used by the server (usually + <filename moreinfo="none"> /etc/printcap</filename>). See the discussion of the <link + linkend="PRINTERSSECT">[printers]</link> section above for reasons why you might want to do this. + </para> + + <para> + To use the CUPS printing interface set <command moreinfo="none">printcap name = cups </command>. This should + be supplemented by an addtional setting <smbconfoption name="printing">cups</smbconfoption> in the [global] + section. <command moreinfo="none">printcap name = cups</command> will use the "dummy" printcap + created by CUPS, as specified in your CUPS configuration file. + </para> + + <para> + On System V systems that use <command moreinfo="none">lpstat</command> to + list available printers you can use <command moreinfo="none">printcap name = lpstat + </command> to automatically obtain lists of available printers. This + is the default for systems that define SYSV at configure time in + Samba (this includes most System V based systems). If <parameter moreinfo="none"> + printcap name</parameter> is set to <command moreinfo="none">lpstat</command> on + these systems then Samba will launch <command moreinfo="none">lpstat -v</command> and + attempt to parse the output to obtain a printer list. + </para> + + <para> + A minimal printcap file would look something like this: +<programlisting format="linespecific"> +print1|My Printer 1 +print2|My Printer 2 +print3|My Printer 3 +print4|My Printer 4 +print5|My Printer 5 +</programlisting> + where the '|' separates aliases of a printer. The fact that the second alias has a space in + it gives a hint to Samba that it's a comment. + </para> + + <note><para> + Under AIX the default printcap name is <filename moreinfo="none">/etc/qconfig</filename>. Samba will + assume the file is in AIX <filename moreinfo="none">qconfig</filename> format if the string <filename + moreinfo="none">qconfig</filename> appears in the printcap filename. + </para></note> + +</description> + +<value type="default">/etc/printcap</value> +<value type="example">/etc/myprintcap</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/printcommand.xml b/docs-xml/smbdotconf/printing/printcommand.xml new file mode 100644 index 0000000000..461d6de8e3 --- /dev/null +++ b/docs-xml/smbdotconf/printing/printcommand.xml @@ -0,0 +1,88 @@ +<samba:parameter name="print command" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>After a print job has finished spooling to + a service, this command will be used via a <command moreinfo="none">system()</command> + call to process the spool file. Typically the command specified will + submit the spool file to the host's printing subsystem, but there + is no requirement that this be the case. The server will not remove + the spool file, so whatever command you specify should remove the + spool file when it has been processed, otherwise you will need to + manually remove old spool files.</para> + + <para>The print command is simply a text string. It will be used + verbatim after macro substitutions have been made:</para> + + <para>%s, %f - the path to the spool + file name</para> + + <para>%p - the appropriate printer + name</para> + + <para>%J - the job + name as transmitted by the client.</para> + + <para>%c - The number of printed pages + of the spooled job (if known).</para> + + <para>%z - the size of the spooled + print job (in bytes)</para> + + <para>The print command <emphasis>MUST</emphasis> contain at least + one occurrence of <parameter moreinfo="none">%s</parameter> or <parameter moreinfo="none">%f + </parameter> - the <parameter moreinfo="none">%p</parameter> is optional. At the time + a job is submitted, if no printer name is supplied the <parameter moreinfo="none">%p + </parameter> will be silently removed from the printer command.</para> + + <para>If specified in the [global] section, the print command given + will be used for any printable service that does not have its own + print command specified.</para> + + <para>If there is neither a specified print command for a + printable service nor a global print command, spool files will + be created but not processed and (most importantly) not removed.</para> + + <para>Note that printing may fail on some UNIXes from the + <constant>nobody</constant> account. If this happens then create + an alternative guest account that can print and set the <smbconfoption name="guest account"/> + in the [global] section.</para> + + <para>You can form quite complex print commands by realizing + that they are just passed to a shell. For example the following + will log a print job, print the file, then remove it. Note that + ';' is the usual separator for command in shell scripts.</para> + + <para><command moreinfo="none">print command = echo Printing %s >> + /tmp/print.log; lpr -P %p %s; rm %s</command></para> + + <para>You may have to vary this command considerably depending + on how you normally print files on your system. The default for + the parameter varies depending on the setting of the <smbconfoption name="printing"/> + parameter.</para> + + <para>Default: For <command moreinfo="none">printing = BSD, AIX, QNX, LPRNG + or PLP :</command></para> + <para><command moreinfo="none">print command = lpr -r -P%p %s</command></para> + + <para>For <command moreinfo="none">printing = SYSV or HPUX :</command></para> + <para><command moreinfo="none">print command = lp -c -d%p %s; rm %s</command></para> + + <para>For <command moreinfo="none">printing = SOFTQ :</command></para> + <para><command moreinfo="none">print command = lp -d%p -s %s; rm %s</command></para> + + <para>For printing = CUPS : If SAMBA is compiled against + libcups, then <smbconfoption name="printcap">cups</smbconfoption> + uses the CUPS API to + submit jobs, etc. Otherwise it maps to the System V + commands with the -oraw option for printing, i.e. it + uses <command moreinfo="none">lp -c -d%p -oraw; rm %s</command>. + With <command moreinfo="none">printing = cups</command>, + and if SAMBA is compiled against libcups, any manually + set print command will be ignored.</para> +</description> + +<value type="example">/usr/local/samba/bin/myprintscript %p %s</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/printername.xml b/docs-xml/smbdotconf/printing/printername.xml new file mode 100644 index 0000000000..fad127cad1 --- /dev/null +++ b/docs-xml/smbdotconf/printing/printername.xml @@ -0,0 +1,26 @@ +<samba:parameter name="printer name" + context="S" + print="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <synonym>printer</synonym> +<description> + <para> + This parameter specifies the name of the printer to which print jobs spooled through a printable service + will be sent. + </para> + + <para> + If specified in the [global] section, the printer name given will be used for any printable service that + does not have its own printer name specified. + </para> + + <para> + The default value of the <smbconfoption name="printer name"/> may be <literal>lp</literal> on many + systems. + </para> +</description> + +<value type="default">none</value> +<value type="example">laserwriter</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/printing.xml b/docs-xml/smbdotconf/printing/printing.xml new file mode 100644 index 0000000000..3be0f42939 --- /dev/null +++ b/docs-xml/smbdotconf/printing/printing.xml @@ -0,0 +1,36 @@ +<samba:parameter name="printing" + context="S" + type="enum" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameters controls how printer status information is + interpreted on your system. It also affects the default values for + the <parameter moreinfo="none">print command</parameter>, <parameter + moreinfo="none">lpq command</parameter>, <parameter + moreinfo="none">lppause command </parameter>, <parameter + moreinfo="none">lpresume command</parameter>, and <parameter + moreinfo="none">lprm command</parameter> if specified in the + [global] section.</para> + + <para>Currently nine printing styles are supported. They are + <constant>BSD</constant>, <constant>AIX</constant>, + <constant>LPRNG</constant>, <constant>PLP</constant>, + <constant>SYSV</constant>, <constant>HPUX</constant>, + <constant>QNX</constant>, <constant>SOFTQ</constant>, + and <constant>CUPS</constant>.</para> + + <para>To see what the defaults are for the other print + commands when using the various options use the <citerefentry><refentrytitle>testparm</refentrytitle> + <manvolnum>1</manvolnum></citerefentry> program.</para> + + <para>This option can be set on a per printer basis. Please be + aware however, that you must place any of the various printing + commands (e.g. print command, lpq command, etc...) after defining + the value for the <parameter>printing</parameter> option since it will + reset the printing commands to default values.</para> + + <para>See also the discussion in the <link linkend="PRINTERSSECT"> + [printers]</link> section.</para> +</description> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/printjobusername.xml b/docs-xml/smbdotconf/printing/printjobusername.xml new file mode 100644 index 0000000000..8f72fee8c3 --- /dev/null +++ b/docs-xml/smbdotconf/printing/printjobusername.xml @@ -0,0 +1,16 @@ +<samba:parameter name="printjob username" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies which user information will be + passed to the printing system. Usually, the username is sent, + but in some cases, e.g. the domain prefix is useful, too.</para> +</description> + +<related>printing</related> + +<value type="example">%D\%U</value> +<value type="default">%U</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/queuepausecommand.xml b/docs-xml/smbdotconf/printing/queuepausecommand.xml new file mode 100644 index 0000000000..aee822ea80 --- /dev/null +++ b/docs-xml/smbdotconf/printing/queuepausecommand.xml @@ -0,0 +1,28 @@ +<samba:parameter name="queuepause command" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the command to be + executed on the server host in order to pause the printer queue.</para> + + <para>This command should be a program or script which takes + a printer name as its only parameter and stops the printer queue, + such that no longer jobs are submitted to the printer.</para> + + <para>This command is not supported by Windows for Workgroups, + but can be issued from the Printers window under Windows 95 + and NT.</para> + + <para>If a <parameter moreinfo="none">%p</parameter> is given then the printer name + is put in its place. Otherwise it is placed at the end of the command. + </para> + + <para>Note that it is good practice to include the absolute + path in the command as the PATH may not be available to the + server.</para> +</description> + +<value type="example">disable %p</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/queueresumecommand.xml b/docs-xml/smbdotconf/printing/queueresumecommand.xml new file mode 100644 index 0000000000..f6593c2289 --- /dev/null +++ b/docs-xml/smbdotconf/printing/queueresumecommand.xml @@ -0,0 +1,31 @@ +<samba:parameter name="queueresume command" + context="S" + type="string" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the command to be + executed on the server host in order to resume the printer queue. It + is the command to undo the behavior that is caused by the + previous parameter (<smbconfoption name="queuepause command"/>).</para> + + <para>This command should be a program or script which takes + a printer name as its only parameter and resumes the printer queue, + such that queued jobs are resubmitted to the printer.</para> + + <para>This command is not supported by Windows for Workgroups, + but can be issued from the Printers window under Windows 95 + and NT.</para> + + <para>If a <parameter moreinfo="none">%p</parameter> is given then the printer name + is put in its place. Otherwise it is placed at the end of the + command.</para> + + <para>Note that it is good practice to include the absolute + path in the command as the PATH may not be available to the + server.</para> +</description> + +<value type="default"></value> +<value type="example">enable %p</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/showaddprinterwizard.xml b/docs-xml/smbdotconf/printing/showaddprinterwizard.xml new file mode 100644 index 0000000000..293cf9d1aa --- /dev/null +++ b/docs-xml/smbdotconf/printing/showaddprinterwizard.xml @@ -0,0 +1,36 @@ +<samba:parameter name="show add printer wizard" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>With the introduction of MS-RPC based printing support + for Windows NT/2000 client in Samba 2.2, a "Printers..." folder will + appear on Samba hosts in the share listing. Normally this folder will + contain an icon for the MS Add Printer Wizard (APW). However, it is + possible to disable this feature regardless of the level of privilege + of the connected user.</para> + + <para>Under normal circumstances, the Windows NT/2000 client will + open a handle on the printer server with OpenPrinterEx() asking for + Administrator privileges. If the user does not have administrative + access on the print server (i.e is not root or a member of the + <parameter moreinfo="none">printer admin</parameter> group), the OpenPrinterEx() + call fails and the client makes another open call with a request for + a lower privilege level. This should succeed, however the APW + icon will not be displayed.</para> + + <para>Disabling the <parameter moreinfo="none">show add printer wizard</parameter> + parameter will always cause the OpenPrinterEx() on the server + to fail. Thus the APW icon will never be displayed. +</para> +<note><para>This does not prevent the same user from having + administrative privilege on an individual printer.</para></note> +</description> + +<related>addprinter command</related> +<related>deleteprinter command</related> +<related>printer admin</related> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/printing/useclientdriver.xml b/docs-xml/smbdotconf/printing/useclientdriver.xml new file mode 100644 index 0000000000..99e8556811 --- /dev/null +++ b/docs-xml/smbdotconf/printing/useclientdriver.xml @@ -0,0 +1,40 @@ +<samba:parameter name="use client driver" + context="S" + type="boolean" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter applies only to Windows NT/2000 + clients. It has no effect on Windows 95/98/ME clients. When + serving a printer to Windows NT/2000 clients without first installing + a valid printer driver on the Samba host, the client will be required + to install a local printer driver. From this point on, the client + will treat the print as a local printer and not a network printer + connection. This is much the same behavior that will occur + when <command moreinfo="none">disable spoolss = yes</command>. + </para> + + <para>The differentiating factor is that under normal + circumstances, the NT/2000 client will attempt to open the network + printer using MS-RPC. The problem is that because the client + considers the printer to be local, it will attempt to issue the + OpenPrinterEx() call requesting access rights associated with the + logged on user. If the user possesses local administator rights but + not root privilege on the Samba host (often the case), the + OpenPrinterEx() call will fail. The result is that the client will + now display an "Access Denied; Unable to connect" message + in the printer queue window (even though jobs may successfully be + printed). </para> + + <para>If this parameter is enabled for a printer, then any attempt + to open the printer with the PRINTER_ACCESS_ADMINISTER right is mapped + to PRINTER_ACCESS_USE instead. Thus allowing the OpenPrinterEx() + call to succeed. <emphasis>This parameter MUST not be able enabled + on a print share which has valid print driver installed on the Samba + server.</emphasis></para> +</description> + +<related>disable spoolss</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/aclcheckpermissions.xml b/docs-xml/smbdotconf/protocol/aclcheckpermissions.xml new file mode 100644 index 0000000000..6916261759 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/aclcheckpermissions.xml @@ -0,0 +1,30 @@ +<samba:parameter name="acl check permissions" + context="S" + type="boolean" + advanced="1" wizard="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean parameter controls what <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>does on receiving a protocol request of "open for delete" + from a Windows client. If a Windows client doesn't have permissions to delete a file then they + expect this to be denied at open time. POSIX systems normally only detect restrictions on delete by + actually attempting to delete the file or directory. As Windows clients can (and do) "back out" a + delete request by unsetting the "delete on close" bit Samba cannot delete the file immediately + on "open for delete" request as we cannot restore such a deleted file. With this parameter set to + true (the default) then smbd checks the file system permissions directly on "open for delete" and denies the + request without actually deleting the file if the file system permissions would seem to deny it. + This is not perfect, as it's possible a user could have deleted a file without Samba being able to + check the permissions correctly, but it is close enough to Windows semantics for mostly correct + behaviour. Samba will correctly check POSIX ACL semantics in this case. + </para> + <para>If this parameter is set to "false" Samba doesn't check permissions on "open for delete" + and allows the open. If the user doesn't have permission to delete the file this will only be + discovered at close time, which is too late for the Windows user tools to display an error message + to the user. The symptom of this is files that appear to have been deleted "magically" re-appearing + on a Windows explorer refersh. This is an extremely advanced protocol option which should not + need to be changed. This parameter was introduced in its final form in 3.0.21, an earlier version + with slightly different semantics was introduced in 3.0.20. That older version is not documented here. + </para> +</description> +<value type="default">True</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/aclmapfullcontrol.xml b/docs-xml/smbdotconf/protocol/aclmapfullcontrol.xml new file mode 100644 index 0000000000..c38ac3cfbf --- /dev/null +++ b/docs-xml/smbdotconf/protocol/aclmapfullcontrol.xml @@ -0,0 +1,17 @@ +<samba:parameter name="acl map full control" + context="S" + type="boolean" + advanced="1" wizard="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This boolean parameter controls whether <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>maps a POSIX ACE entry of "rwx" (read/write/execute), the maximum + allowed POSIX permission set, into a Windows ACL of "FULL CONTROL". If this parameter is set to true any POSIX + ACE entry of "rwx" will be returned in a Windows ACL as "FULL CONTROL", is this parameter is set to false any + POSIX ACE entry of "rwx" will be returned as the specific Windows ACL bits representing read, write and + execute. + </para> +</description> +<value type="default">True</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/announceas.xml b/docs-xml/smbdotconf/protocol/announceas.xml new file mode 100644 index 0000000000..8891496194 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/announceas.xml @@ -0,0 +1,21 @@ +<samba:parameter name="announce as" + context="G" + type="string" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This specifies what type of server <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will announce itself as, to a network neighborhood browse + list. By default this is set to Windows NT. The valid options + are : "NT Server" (which can also be written as "NT"), + "NT Workstation", "Win95" or "WfW" meaning Windows NT Server, + Windows NT Workstation, Windows 95 and Windows for Workgroups + respectively. Do not change this parameter unless you have a + specific need to stop Samba appearing as an NT server as this + may prevent Samba servers from participating as browser servers + correctly.</para> +</description> + +<value type="default">NT Server</value> +<value type="example">Win95</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/announceversion.xml b/docs-xml/smbdotconf/protocol/announceversion.xml new file mode 100644 index 0000000000..ecdcd4c734 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/announceversion.xml @@ -0,0 +1,14 @@ +<samba:parameter name="announce version" + context="G" + developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This specifies the major and minor version numbers + that nmbd will use when announcing itself as a server. The default + is 4.9. Do not change this parameter unless you have a specific + need to set a Samba server to be a downlevel server.</para> +</description> +<value type="default">4.9</value> +<value type="example">2.0</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/clientusespnego.xml b/docs-xml/smbdotconf/protocol/clientusespnego.xml new file mode 100644 index 0000000000..c688a656f4 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/clientusespnego.xml @@ -0,0 +1,15 @@ +<samba:parameter name="client use spnego" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> This variable controls whether Samba clients will try + to use Simple and Protected NEGOciation (as specified by rfc2478) with + supporting servers (including WindowsXP, Windows2000 and Samba + 3.0) to agree upon an authentication + mechanism. This enables Kerberos authentication in particular.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/defersharingviolations.xml b/docs-xml/smbdotconf/protocol/defersharingviolations.xml new file mode 100644 index 0000000000..f54916c776 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/defersharingviolations.xml @@ -0,0 +1,26 @@ +<samba:parameter name="defer sharing violations" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Windows allows specifying how a file will be shared with + other processes when it is opened. Sharing violations occur when + a file is opened by a different process using options that violate + the share settings specified by other processes. This parameter causes + smbd to act as a Windows server does, and defer returning a "sharing + violation" error message for up to one second, allowing the client + to close the file causing the violation in the meantime. + </para> + + <para>UNIX by default does not have this behaviour.</para> + + <para> + There should be no reason to turn off this parameter, as it is + designed to enable Samba to more correctly emulate Windows. + </para> +</description> + +<value type="default">True</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/disablenetbios.xml b/docs-xml/smbdotconf/protocol/disablenetbios.xml new file mode 100644 index 0000000000..e78cb8c4f7 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/disablenetbios.xml @@ -0,0 +1,16 @@ +<samba:parameter name="disable netbios" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Enabling this parameter will disable netbios support + in Samba. Netbios is the only available form of browsing in + all windows versions except for 2000 and XP. </para> + + <note><para>Clients that only support netbios won't be able to + see your samba server when netbios support is disabled. + </para></note> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/easupport.xml b/docs-xml/smbdotconf/protocol/easupport.xml new file mode 100644 index 0000000000..ba210fdac7 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/easupport.xml @@ -0,0 +1,17 @@ +<samba:parameter name="ea support" + context="S" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean parameter controls whether <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will allow clients to attempt to store OS/2 style Extended + attributes on a share. In order to enable this parameter the underlying filesystem exported by + the share must support extended attributes (such as provided on XFS and EXT3 on Linux, with the + correct kernel patches). On Linux the filesystem must have been mounted with the mount + option user_xattr in order for extended attributes to work, also + extended attributes must be compiled into the Linux kernel.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/enableasusupport.xml b/docs-xml/smbdotconf/protocol/enableasusupport.xml new file mode 100644 index 0000000000..cd4f30fb8d --- /dev/null +++ b/docs-xml/smbdotconf/protocol/enableasusupport.xml @@ -0,0 +1,17 @@ +<samba:parameter name="enable asu support" + context="G" + advanced="1" developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Hosts running the "Advanced Server for Unix (ASU)" product + require some special accomodations such as creating a builting [ADMIN$] + share that only supports IPC connections. The has been the default + behavior in smbd for many years. However, certain Microsoft applications + such as the Print Migrator tool require that the remote server support + an [ADMIN$} file share. Disabling this parameter allows for creating + an [ADMIN$] file share in smb.conf.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/eventloglist.xml b/docs-xml/smbdotconf/protocol/eventloglist.xml new file mode 100644 index 0000000000..e98559bc17 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/eventloglist.xml @@ -0,0 +1,22 @@ +<samba:parameter name="eventlog list" + type="string" + context="G" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option defines a list of log names that Samba will + report to the Microsoft EventViewer utility. The listed + eventlogs will be associated with tdb file on disk in the + <filename>$(lockdir)/eventlog</filename>. + </para> + + <para> + The administrator must use an external process to parse the normal + Unix logs such as <filename>/var/log/messages</filename> + and write then entries to the eventlog tdb files. Refer to the + eventlogadm(8) utility for how to write eventlog entries. + </para> +</description> + +<value type="default"/> +<value type="example">Security Application Syslog Apache</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/largereadwrite.xml b/docs-xml/smbdotconf/protocol/largereadwrite.xml new file mode 100644 index 0000000000..12be741322 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/largereadwrite.xml @@ -0,0 +1,18 @@ +<samba:parameter name="large readwrite" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter determines whether or not + <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> supports the new 64k + streaming read and write varient SMB requests introduced with + Windows 2000. Note that due to Windows 2000 client redirector bugs + this requires Samba to be running on a 64-bit capable operating + system such as IRIX, Solaris or a Linux 2.4 kernel. Can improve + performance by 10% with Windows 2000 clients. Defaults to on. Not as + tested as some other Samba code paths.</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/mapaclinherit.xml b/docs-xml/smbdotconf/protocol/mapaclinherit.xml new file mode 100644 index 0000000000..ef0b4eb6d6 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/mapaclinherit.xml @@ -0,0 +1,17 @@ +<samba:parameter name="map acl inherit" + context="S" + type="boolean" + advanced="1" wizard="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean parameter controls whether <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will attempt to map the 'inherit' and 'protected' + access control entry flags stored in Windows ACLs into an extended attribute + called user.SAMBA_PAI. This parameter only takes effect if Samba is being run + on a platform that supports extended attributes (Linux and IRIX so far) and + allows the Windows 2000 ACL editor to correctly use inheritance with the Samba + POSIX ACL mapping code. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/maxmux.xml b/docs-xml/smbdotconf/protocol/maxmux.xml new file mode 100644 index 0000000000..71998c974f --- /dev/null +++ b/docs-xml/smbdotconf/protocol/maxmux.xml @@ -0,0 +1,13 @@ +<samba:parameter name="max mux" + context="G" + advanced="1" developer="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option controls the maximum number of + outstanding simultaneous SMB operations that Samba tells the client + it will allow. You should never need to set this parameter.</para> +</description> + +<value type="default">50</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/maxprotocol.xml b/docs-xml/smbdotconf/protocol/maxprotocol.xml new file mode 100644 index 0000000000..e785909147 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/maxprotocol.xml @@ -0,0 +1,48 @@ +<samba:parameter name="max protocol" + context="G" + type="enum" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The value of the parameter (a string) is the highest + protocol level that will be supported by the server.</para> + + <para>Possible values are :</para> + <itemizedlist> + <listitem> + <para><constant>CORE</constant>: Earliest version. No + concept of user names.</para> + </listitem> + + <listitem> + <para><constant>COREPLUS</constant>: Slight improvements on + CORE for efficiency.</para> + </listitem> + + <listitem> + <para><constant>LANMAN1</constant>: First <emphasis> + modern</emphasis> version of the protocol. Long filename + support.</para> + </listitem> + + <listitem> + <para><constant>LANMAN2</constant>: Updates to Lanman1 protocol.</para> + </listitem> + + <listitem> + <para><constant>NT1</constant>: Current up to date version of the protocol. + Used by Windows NT. Known as CIFS.</para> + </listitem> + </itemizedlist> + + <para>Normally this option should not be set as the automatic + negotiation phase in the SMB protocol takes care of choosing + the appropriate protocol.</para> +</description> + +<related>min protocol</related> +<synonym>protocol</synonym> + +<value type="default">NT1</value> +<value type="example">LANMAN1</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/maxttl.xml b/docs-xml/smbdotconf/protocol/maxttl.xml new file mode 100644 index 0000000000..00f735d3a9 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/maxttl.xml @@ -0,0 +1,14 @@ +<samba:parameter name="max ttl" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option tells <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> what the default 'time to live' + of NetBIOS names should be (in seconds) when <command moreinfo="none">nmbd</command> is + requesting a name using either a broadcast packet or from a WINS server. You should + never need to change this parameter. The default is 3 days.</para> +</description> +<value type="default">259200</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/maxwinsttl.xml b/docs-xml/smbdotconf/protocol/maxwinsttl.xml new file mode 100644 index 0000000000..09935cdd9b --- /dev/null +++ b/docs-xml/smbdotconf/protocol/maxwinsttl.xml @@ -0,0 +1,17 @@ +<samba:parameter name="max wins ttl" + type="integer" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option tells <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> when acting as a WINS server + (<smbconfoption name="wins support">yes</smbconfoption>) what the maximum + 'time to live' of NetBIOS names that <command moreinfo="none">nmbd</command> + will grant will be (in seconds). You should never need to change this + parameter. The default is 6 days (518400 seconds).</para> +</description> + +<related>min wins ttl</related> +<value type="default">518400</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/maxxmit.xml b/docs-xml/smbdotconf/protocol/maxxmit.xml new file mode 100644 index 0000000000..3804ae21e3 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/maxxmit.xml @@ -0,0 +1,16 @@ +<samba:parameter name="max xmit" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option controls the maximum packet size + that will be negotiated by Samba. The default is 16644, which + matches the behavior of Windows 2000. A value below 2048 is likely to cause problems. + You should never need to change this parameter from its default value. +</para> +</description> + +<value type="default">16644</value> +<value type="example">8192</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/minprotocol.xml b/docs-xml/smbdotconf/protocol/minprotocol.xml new file mode 100644 index 0000000000..0bec282467 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/minprotocol.xml @@ -0,0 +1,22 @@ +<samba:parameter name="min protocol" + context="G" + type="string" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The value of the parameter (a string) is the + lowest SMB protocol dialect than Samba will support. Please refer + to the <smbconfoption name="max protocol"/> + parameter for a list of valid protocol names and a brief description + of each. You may also wish to refer to the C source code in + <filename moreinfo="none">source/smbd/negprot.c</filename> for a listing of known protocol + dialects supported by clients.</para> + + <para>If you are viewing this parameter as a security measure, you should + also refer to the <smbconfoption name="lanman auth"/> parameter. Otherwise, you should never need + to change this parameter.</para> +</description> + +<value type="default">CORE</value> +<value type="example">NT1</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/minreceivefilesize.xml b/docs-xml/smbdotconf/protocol/minreceivefilesize.xml new file mode 100644 index 0000000000..2df6c178db --- /dev/null +++ b/docs-xml/smbdotconf/protocol/minreceivefilesize.xml @@ -0,0 +1,22 @@ +<samba:parameter name="min receivefile size" + type="integer" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> +<para>This option changes the behavior of <citerefentry><refentrytitle>smbd</refentrytitle> +<manvolnum>8</manvolnum></citerefentry> when processing SMBwriteX calls. Any incoming +SMBwriteX call on a non-signed SMB/CIFS connection greater than this value will not be processed in the normal way but will +be passed to any underlying kernel recvfile or splice system call (if there is no such +call Samba will emulate in user space). This allows zero-copy writes directly from network +socket buffers into the filesystem buffer cache, if available. It may improve performance +but user testing is recommended. If set to zero Samba processes SMBwriteX calls in the +normal way. To enable POSIX large write support (SMB/CIFS writes up to 16Mb) this option must be +nonzero. The maximum value is 128k. Values greater than 128k will be silently set to 128k.</para> +<para>Note this option will have NO EFFECT if set on a SMB signed connection.</para> +<para>The default is zero, which diables this option.</para> +</description> + +<related>min receivefile size</related> +<value type="default">0</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/minwinsttl.xml b/docs-xml/smbdotconf/protocol/minwinsttl.xml new file mode 100644 index 0000000000..38fbd7b0eb --- /dev/null +++ b/docs-xml/smbdotconf/protocol/minwinsttl.xml @@ -0,0 +1,16 @@ +<samba:parameter name="min wins ttl" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option tells <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> + when acting as a WINS server (<smbconfoption name="wins support">yes</smbconfoption>) what the minimum 'time to live' + of NetBIOS names that <command moreinfo="none">nmbd</command> will grant will be (in + seconds). You should never need to change this parameter. The default + is 6 hours (21600 seconds).</para> +</description> + +<value type="default">21600</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/nameresolveorder.xml b/docs-xml/smbdotconf/protocol/nameresolveorder.xml new file mode 100644 index 0000000000..9b1ad075b1 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/nameresolveorder.xml @@ -0,0 +1,70 @@ +<samba:parameter name="name resolve order" + context="G" + type="list" + advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option is used by the programs in the Samba + suite to determine what naming services to use and in what order + to resolve host names to IP addresses. Its main purpose to is to + control how netbios name resolution is performed. The option takes a space + separated string of name resolution options.</para> + + <para>The options are: "lmhosts", "host", + "wins" and "bcast". They cause names to be + resolved as follows:</para> + + <itemizedlist> + <listitem> + <para> + <constant>lmhosts</constant> : Lookup an IP address in the Samba lmhosts file. If the line in lmhosts has + no name type attached to the NetBIOS name (see the manpage for lmhosts for details) then + any name type matches for lookup. + </para> + </listitem> + + <listitem> + <para> + <constant>host</constant> : Do a standard host name to IP address resolution, using the system + <filename moreinfo="none">/etc/hosts </filename>, NIS, or DNS lookups. This method of name resolution is + operating system depended for instance on IRIX or Solaris this may be controlled by the <filename + moreinfo="none">/etc/nsswitch.conf</filename> file. Note that this method is used only if the NetBIOS name + type being queried is the 0x20 (server) name type or 0x1c (domain controllers). The latter case is only + useful for active directory domains and results in a DNS query for the SRV RR entry matching + _ldap._tcp.domain. + </para> + </listitem> + + <listitem> + <para><constant>wins</constant> : Query a name with + the IP address listed in the <smbconfoption name="WINSSERVER"><parameter moreinfo="none"> + wins server</parameter></smbconfoption> parameter. If no WINS server has + been specified this method will be ignored.</para> + </listitem> + + <listitem> + <para><constant>bcast</constant> : Do a broadcast on + each of the known local interfaces listed in the <smbconfoption name="interfaces"/> + parameter. This is the least reliable of the name resolution + methods as it depends on the target host being on a locally + connected subnet.</para> + </listitem> +</itemizedlist> + + <para>The example below will cause the local lmhosts file to be examined + first, followed by a broadcast attempt, followed by a normal + system hostname lookup.</para> + + <para>When Samba is functioning in ADS security mode (<command moreinfo="none">security = ads</command>) + it is advised to use following settings for <parameter moreinfo="none">name resolve order</parameter>:</para> + + <para><command moreinfo="none">name resolve order = wins bcast</command></para> + + <para>DC lookups will still be done via DNS, but fallbacks to netbios names will + not inundate your DNS servers with needless querys for DOMAIN<0x1c> lookups.</para> + +</description> + +<value type="default">lmhosts host wins bcast</value> +<value type="example">lmhosts bcast host</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/ntaclsupport.xml b/docs-xml/smbdotconf/protocol/ntaclsupport.xml new file mode 100644 index 0000000000..1e9cedf931 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/ntaclsupport.xml @@ -0,0 +1,17 @@ +<samba:parameter name="nt acl support" + context="S" + advanced="1" wizard="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean parameter controls whether <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will attempt to map + UNIX permissions into Windows NT access control lists. The UNIX + permissions considered are the the traditional UNIX owner and + group permissions, as well as POSIX ACLs set on any files or + directories. This parameter was formally a global parameter in + releases prior to 2.2.2.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/ntpipesupport.xml b/docs-xml/smbdotconf/protocol/ntpipesupport.xml new file mode 100644 index 0000000000..7c310846b2 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/ntpipesupport.xml @@ -0,0 +1,16 @@ +<samba:parameter name="nt pipe support" + context="G" + advanced="1" developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean parameter controls whether + <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will allow Windows NT + clients to connect to the NT SMB specific <constant>IPC$</constant> + pipes. This is a developer debugging option and can be left + alone.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/ntstatussupport.xml b/docs-xml/smbdotconf/protocol/ntstatussupport.xml new file mode 100644 index 0000000000..4dfc142e2e --- /dev/null +++ b/docs-xml/smbdotconf/protocol/ntstatussupport.xml @@ -0,0 +1,18 @@ +<samba:parameter name="nt status support" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean parameter controls whether <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will negotiate NT specific status + support with Windows NT/2k/XP clients. This is a developer debugging option and should be left alone. + If this option is set to <constant>no</constant> then Samba offers + exactly the same DOS error codes that versions prior to Samba 2.2.3 + reported.</para> + + <para>You should not need to ever disable this parameter.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/profileacls.xml b/docs-xml/smbdotconf/protocol/profileacls.xml new file mode 100644 index 0000000000..1c6f0c9ebf --- /dev/null +++ b/docs-xml/smbdotconf/protocol/profileacls.xml @@ -0,0 +1,41 @@ +<samba:parameter name="profile acls" + context="S" + type="boolean" + advanced="1" wizard="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This boolean parameter was added to fix the problems that people have been + having with storing user profiles on Samba shares from Windows 2000 or + Windows XP clients. New versions of Windows 2000 or Windows XP service + packs do security ACL checking on the owner and ability to write of the + profile directory stored on a local workstation when copied from a Samba + share. + </para> + + <para> + When not in domain mode with winbindd then the security info copied + onto the local workstation has no meaning to the logged in user (SID) on + that workstation so the profile storing fails. Adding this parameter + onto a share used for profile storage changes two things about the + returned Windows ACL. Firstly it changes the owner and group owner + of all reported files and directories to be BUILTIN\\Administrators, + BUILTIN\\Users respectively (SIDs S-1-5-32-544, S-1-5-32-545). Secondly + it adds an ACE entry of "Full Control" to the SID BUILTIN\\Users to + every returned ACL. This will allow any Windows 2000 or XP workstation + user to access the profile. + </para> + + <para> + Note that if you have multiple users logging + on to a workstation then in order to prevent them from being able to access + each others profiles you must remove the "Bypass traverse checking" advanced + user right. This will prevent access to other users profile directories as + the top level profile directory (named after the user) is created by the + workstation profile code and has an ACL restricting entry to the directory + tree to the owning user. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/readraw.xml b/docs-xml/smbdotconf/protocol/readraw.xml new file mode 100644 index 0000000000..2ca23075ee --- /dev/null +++ b/docs-xml/smbdotconf/protocol/readraw.xml @@ -0,0 +1,26 @@ +<samba:parameter name="read raw" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls whether or not the server + will support the raw read SMB requests when transferring data + to clients.</para> + + <para>If enabled, raw reads allow reads of 65535 bytes in + one packet. This typically provides a major performance benefit. + </para> + + <para>However, some clients either negotiate the allowable + block size incorrectly or are incapable of supporting larger block + sizes, and for these clients you may need to disable raw reads.</para> + +<para>In general this parameter should be viewed as a system tuning + tool and left severely alone.</para> +</description> + +<value type="default">yes</value> + +<related>write raw</related> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/smbports.xml b/docs-xml/smbdotconf/protocol/smbports.xml new file mode 100644 index 0000000000..aaf4919db0 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/smbports.xml @@ -0,0 +1,11 @@ +<samba:parameter name="smb ports" + context="G" + type="list" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Specifies which ports the server should listen on for SMB traffic.</para> +</description> + +<value type="default">445 139</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/svcctllist.xml b/docs-xml/smbdotconf/protocol/svcctllist.xml new file mode 100644 index 0000000000..660a280088 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/svcctllist.xml @@ -0,0 +1,22 @@ +<samba:parameter name="svcctl list" + type="string" + context="G" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option defines a list of init scripts that smbd + will use for starting and stopping Unix services via the Win32 + ServiceControl API. This allows Windows administrators to + utilize the MS Management Console plug-ins to manage a + Unix server running Samba.</para> + + <para>The administrator must create a directory + name <filename>svcctl</filename> in Samba's $(libdir) + and create symbolic links to the init scripts in + <filename>/etc/init.d/</filename>. The name of the links + must match the names given as part of the <parameter>svcctl list</parameter>. + </para> +</description> + +<value type="default"/> +<value type="example">cups postfix portmap httpd</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/timeserver.xml b/docs-xml/smbdotconf/protocol/timeserver.xml new file mode 100644 index 0000000000..93d89183b5 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/timeserver.xml @@ -0,0 +1,13 @@ +<samba:parameter name="time server" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter determines if <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> advertises itself as a time server to Windows +clients.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/unixextensions.xml b/docs-xml/smbdotconf/protocol/unixextensions.xml new file mode 100644 index 0000000000..5b4a36a401 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/unixextensions.xml @@ -0,0 +1,16 @@ +<samba:parameter name="unix extensions" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>This boolean parameter controls whether Samba + implments the CIFS UNIX extensions, as defined by HP. + These extensions enable Samba to better serve UNIX CIFS clients + by supporting features such as symbolic links, hard links, etc... + These extensions require a similarly enabled client, and are of + no current use to Windows clients.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/usespnego.xml b/docs-xml/smbdotconf/protocol/usespnego.xml new file mode 100644 index 0000000000..8fb559c177 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/usespnego.xml @@ -0,0 +1,19 @@ +<samba:parameter name="use spnego" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This variable controls controls whether samba will try + to use Simple and Protected NEGOciation (as specified by rfc2478) with + WindowsXP and Windows2000 clients to agree upon an authentication mechanism. +</para> + +<para> + Unless further issues are discovered with our SPNEGO + implementation, there is no reason this should ever be + disabled.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/protocol/writeraw.xml b/docs-xml/smbdotconf/protocol/writeraw.xml new file mode 100644 index 0000000000..f299fa8483 --- /dev/null +++ b/docs-xml/smbdotconf/protocol/writeraw.xml @@ -0,0 +1,13 @@ +<samba:parameter name="write raw" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls whether or not the server + will support raw write SMB's when transferring data from clients. + You should never need to change this parameter.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/aclgroupcontrol.xml b/docs-xml/smbdotconf/security/aclgroupcontrol.xml new file mode 100644 index 0000000000..e2600ca9da --- /dev/null +++ b/docs-xml/smbdotconf/security/aclgroupcontrol.xml @@ -0,0 +1,43 @@ +<samba:parameter name="acl group control" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + In a POSIX filesystem, only the owner of a file or directory and the superuser can modify the permissions + and ACLs on a file. If this parameter is set, then Samba overrides this restriction, and also allows the + <emphasis>primary group owner</emphasis> of a file or directory to modify the permissions and ACLs + on that file. + </para> + <para> + On a Windows server, groups may be the owner of a file or directory - thus allowing anyone in + that group to modify the permissions on it. This allows the delegation of security controls + on a point in the filesystem to the group owner of a directory and anything below it also owned + by that group. This means there are multiple people with permissions to modify ACLs on a file + or directory, easing managability. + </para> + <para> + This parameter allows Samba to also permit delegation of the control over a point in the exported + directory hierarchy in much the same way as Windows. This allows all members of a UNIX group to + control the permissions on a file or directory they have group ownership on. + </para> + + <para> + This parameter is best used with the <smbconfoption name="inherit owner"/> option and also + on on a share containing directories with the UNIX <emphasis>setgid bit</emphasis> set + on them, which causes new files and directories created within it to inherit the group + ownership from the containing directory. + </para> + + <para> + This is parameter has been marked deprecated in Samba 3.0.23. The same behavior is now + implemented by the <parameter moreinfo="none">dos filemode</parameter> option. + </para> + +</description> + +<related>inherit owner</related> +<related>inherit permissions</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/adminusers.xml b/docs-xml/smbdotconf/security/adminusers.xml new file mode 100644 index 0000000000..d8f14b6d74 --- /dev/null +++ b/docs-xml/smbdotconf/security/adminusers.xml @@ -0,0 +1,21 @@ +<samba:parameter name="admin users" + context="S" + type="list" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a list of users who will be granted + administrative privileges on the share. This means that they + will do all file operations as the super-user (root).</para> + + <para>You should use this option very carefully, as any user in + this list will be able to do anything they like on the share, + irrespective of file permissions.</para> + + <para>This parameter will not work with the <smbconfoption name="security">share</smbconfoption> in + Samba 3.0. This is by design.</para> + +</description> + +<value type="default"/> +<value type="example">jason</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/algorithmicridbase.xml b/docs-xml/smbdotconf/security/algorithmicridbase.xml new file mode 100644 index 0000000000..24a3150024 --- /dev/null +++ b/docs-xml/smbdotconf/security/algorithmicridbase.xml @@ -0,0 +1,27 @@ +<samba:parameter name="algorithmic rid base" + context="G" + advanced="1" developer="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This determines how Samba will use its + algorithmic mapping from uids/gid to the RIDs needed to construct + NT Security Identifiers. + </para> + + <para>Setting this option to a larger value could be useful to sites + transitioning from WinNT and Win2k, as existing user and + group rids would otherwise clash with sytem users etc. + </para> + + <para>All UIDs and GIDs must be able to be resolved into SIDs for + the correct operation of ACLs on the server. As such the algorithmic + mapping can't be 'turned off', but pushing it 'out of the way' should + resolve the issues. Users and groups can then be assigned 'low' RIDs + in arbitrary-rid supporting backends. + </para> +</description> + +<value type="default">1000</value> +<value type="example">100000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/allowtrusteddomains.xml b/docs-xml/smbdotconf/security/allowtrusteddomains.xml new file mode 100644 index 0000000000..57bf1d2422 --- /dev/null +++ b/docs-xml/smbdotconf/security/allowtrusteddomains.xml @@ -0,0 +1,26 @@ +<samba:parameter name="allow trusted domains" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This option only takes effect when the <smbconfoption name="security"/> option is set to + <constant>server</constant>, <constant>domain</constant> or <constant>ads</constant>. + If it is set to no, then attempts to connect to a resource from + a domain or workgroup other than the one which smbd is running + in will fail, even if that domain is trusted by the remote server + doing the authentication.</para> + + <para>This is useful if you only want your Samba server to + serve resources to users in the domain it is a member of. As + an example, suppose that there are two domains DOMA and DOMB. DOMB + is trusted by DOMA, which contains the Samba server. Under normal + circumstances, a user with an account in DOMB can then access the + resources of a UNIX account with the same account name on the + Samba server even if they do not have an account in DOMA. This + can make implementing a security boundary difficult.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/authmethods.xml b/docs-xml/smbdotconf/security/authmethods.xml new file mode 100644 index 0000000000..39d211dbd3 --- /dev/null +++ b/docs-xml/smbdotconf/security/authmethods.xml @@ -0,0 +1,34 @@ +<samba:parameter name="auth methods" + context="G" + type="list" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + This option allows the administrator to chose what authentication methods <command moreinfo="none">smbd</command> + will use when authenticating a user. This option defaults to sensible values based on <smbconfoption name="security"/>. + This should be considered a developer option and used only in rare circumstances. In the majority (if not all) + of production servers, the default setting should be adequate. + </para> + + <para> + Each entry in the list attempts to authenticate the user in turn, until + the user authenticates. In practice only one method will ever actually + be able to complete the authentication. + </para> + + <para> + Possible options include <constant>guest</constant> (anonymous access), + <constant>sam</constant> (lookups in local list of accounts based on netbios + name or domain name), <constant>winbind</constant> (relay authentication requests + for remote users through winbindd), <constant>ntdomain</constant> (pre-winbindd + method of authentication for remote domain users; deprecated in favour of winbind method), + <constant>trustdomain</constant> (authenticate trusted users by contacting the + remote DC directly from smbd; deprecated in favour of winbind method). + </para> + +</description> +<value type="default"/> +<value type="example">guest sam winbind</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/checkpasswordscript.xml b/docs-xml/smbdotconf/security/checkpasswordscript.xml new file mode 100644 index 0000000000..9169891c29 --- /dev/null +++ b/docs-xml/smbdotconf/security/checkpasswordscript.xml @@ -0,0 +1,21 @@ +<samba:parameter name="check password script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The name of a program that can be used to check password + complexity. The password is sent to the program's standrad input.</para> + + <para>The program must return 0 on good password any other value otherwise. + In case the password is considered weak (the program do not return 0) the + user will be notified and the password change will fail.</para> + + <para>Note: In the example directory there is a sample program called crackcheck + that uses cracklib to checkpassword quality.</para> + +</description> + +<value type="default">Disabled</value> +<value type="example">check password script = /usr/local/sbin/crackcheck</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/clientlanmanauth.xml b/docs-xml/smbdotconf/security/clientlanmanauth.xml new file mode 100644 index 0000000000..5266fef6a2 --- /dev/null +++ b/docs-xml/smbdotconf/security/clientlanmanauth.xml @@ -0,0 +1,28 @@ +<samba:parameter name="client lanman auth" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter determines whether or not <citerefentry><refentrytitle>smbclient</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> and other samba client + tools will attempt to authenticate itself to servers using the + weaker LANMAN password hash. If disabled, only server which support NT + password hashes (e.g. Windows NT/2000, Samba, etc... but not + Windows 95/98) will be able to be connected from the Samba client.</para> + + <para>The LANMAN encrypted response is easily broken, due to it's + case-insensitive nature, and the choice of algorithm. Clients + without Windows 95/98 servers are advised to disable + this option. </para> + + <para>Disabling this option will also disable the <command + moreinfo="none">client plaintext auth</command> option</para> + + <para>Likewise, if the <command moreinfo="none">client ntlmv2 + auth</command> parameter is enabled, then only NTLMv2 logins will be + attempted.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/clientntlmv2auth.xml b/docs-xml/smbdotconf/security/clientntlmv2auth.xml new file mode 100644 index 0000000000..9f0627abbf --- /dev/null +++ b/docs-xml/smbdotconf/security/clientntlmv2auth.xml @@ -0,0 +1,32 @@ +<samba:parameter name="client ntlmv2 auth" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter determines whether or not <citerefentry><refentrytitle>smbclient</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will attempt to + authenticate itself to servers using the NTLMv2 encrypted password + response.</para> + + <para>If enabled, only an NTLMv2 and LMv2 response (both much more + secure than earlier versions) will be sent. Many servers + (including NT4 < SP4, Win9x and Samba 2.2) are not compatible with + NTLMv2. </para> + + <para>Similarly, if enabled, NTLMv1, <command + moreinfo="none">client lanman auth</command> and <command + moreinfo="none">client plaintext auth</command> + authentication will be disabled. This also disables share-level + authentication. </para> + + <para>If disabled, an NTLM response (and possibly a LANMAN response) + will be sent by the client, depending on the value of <command + moreinfo="none">client lanman auth</command>. </para> + + <para>Note that some sites (particularly + those following 'best practice' security polices) only allow NTLMv2 + responses, and not the weaker LM or NTLM.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/clientplaintextauth.xml b/docs-xml/smbdotconf/security/clientplaintextauth.xml new file mode 100644 index 0000000000..c4061559db --- /dev/null +++ b/docs-xml/smbdotconf/security/clientplaintextauth.xml @@ -0,0 +1,12 @@ +<samba:parameter name="client plaintext auth" + context="G" + type="boolean" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Specifies whether a client should send a plaintext + password if the server does not support encrypted passwords.</para> +</description> +<value type="default">no</value> +</samba:parameter> + diff --git a/docs-xml/smbdotconf/security/clientschannel.xml b/docs-xml/smbdotconf/security/clientschannel.xml new file mode 100644 index 0000000000..e229182f97 --- /dev/null +++ b/docs-xml/smbdotconf/security/clientschannel.xml @@ -0,0 +1,18 @@ +<samba:parameter name="client schannel" + context="G" + basic="1" + type="boolean-auto" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + This controls whether the client offers or even demands the use of the netlogon schannel. + <smbconfoption name="client schannel">no</smbconfoption> does not offer the schannel, + <smbconfoption name="client schannel">auto</smbconfoption> offers the schannel but does not + enforce it, and <smbconfoption name="client schannel">yes</smbconfoption> denies access + if the server is not able to speak netlogon schannel. + </para> +</description> +<value type="default">auto</value> +<value type="example">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/clientsigning.xml b/docs-xml/smbdotconf/security/clientsigning.xml new file mode 100644 index 0000000000..bf37cbb874 --- /dev/null +++ b/docs-xml/smbdotconf/security/clientsigning.xml @@ -0,0 +1,20 @@ +<samba:parameter name="client signing" + context="G" + type="boolean-auto" + basic="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This controls whether the client offers or requires + the server it talks to to use SMB signing. Possible values + are <emphasis>auto</emphasis>, <emphasis>mandatory</emphasis> + and <emphasis>disabled</emphasis>. + </para> + + <para>When set to auto, SMB signing is offered, but not enforced. + When set to mandatory, SMB signing is required and if set + to disabled, SMB signing is not offered either. +</para> +</description> + +<value type="default">auto</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/createmask.xml b/docs-xml/smbdotconf/security/createmask.xml new file mode 100644 index 0000000000..cf6864c78e --- /dev/null +++ b/docs-xml/smbdotconf/security/createmask.xml @@ -0,0 +1,43 @@ +<samba:parameter name="create mask" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + +<synonym>create mode</synonym> +<description> + <para> + When a file is created, the necessary permissions are calculated according to the mapping from DOS modes to + UNIX permissions, and the resulting UNIX mode is then bit-wise 'AND'ed with this parameter. This parameter may + be thought of as a bit-wise MASK for the UNIX modes of a file. Any bit <emphasis>not</emphasis> set here will + be removed from the modes set on a file when it is created. + </para> + + <para> + The default value of this parameter removes the <literal>group</literal> and <literal>other</literal> + write and execute bits from the UNIX modes. + </para> + + <para> + Following this Samba will bit-wise 'OR' the UNIX mode created from this parameter with the value of the + <smbconfoption name="force create mode"/> parameter which is set to 000 by default. + </para> + + <para> + This parameter does not affect directory masks. See the parameter <smbconfoption name="directory mask"/> + for details. + </para> + + <para> + Note that this parameter does not apply to permissions set by Windows NT/2000 ACL editors. If the + administrator wishes to enforce a mask on access control lists also, they need to set the <smbconfoption + name="security mask"/>. + </para> +</description> + +<related>force create mode</related> +<related>directory mode</related> +<related>inherit permissions</related> + +<value type="default">0744</value> +<value type="example">0775</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/directorymask.xml b/docs-xml/smbdotconf/security/directorymask.xml new file mode 100644 index 0000000000..7b67f79214 --- /dev/null +++ b/docs-xml/smbdotconf/security/directorymask.xml @@ -0,0 +1,38 @@ +<samba:parameter name="directory mask" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>directory mode</synonym> +<description> + <para>This parameter is the octal modes which are + used when converting DOS modes to UNIX modes when creating UNIX + directories.</para> + + <para>When a directory is created, the necessary permissions are + calculated according to the mapping from DOS modes to UNIX permissions, + and the resulting UNIX mode is then bit-wise 'AND'ed with this + parameter. This parameter may be thought of as a bit-wise MASK for + the UNIX modes of a directory. Any bit <emphasis>not</emphasis> set + here will be removed from the modes set on a directory when it is + created.</para> + + <para>The default value of this parameter removes the 'group' + and 'other' write bits from the UNIX mode, allowing only the + user who owns the directory to modify it.</para> + + <para>Following this Samba will bit-wise 'OR' the UNIX mode + created from this parameter with the value of the <smbconfoption name="force directory mode"/> parameter. + This parameter is set to 000 by default (i.e. no extra mode bits are added).</para> + + <para>Note that this parameter does not apply to permissions + set by Windows NT/2000 ACL editors. If the administrator wishes to enforce + a mask on access control lists also, they need to set the <smbconfoption name="directory security mask"/>.</para> +</description> + +<related>force directory mode</related> +<related>create mask</related> +<related>directory security mask</related> +<related>inherit permissions</related> +<value type="default">0755</value> +<value type="example">0775</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/directorysecuritymask.xml b/docs-xml/smbdotconf/security/directorysecuritymask.xml new file mode 100644 index 0000000000..5ed85ae3f8 --- /dev/null +++ b/docs-xml/smbdotconf/security/directorysecuritymask.xml @@ -0,0 +1,39 @@ +<samba:parameter name="directory security mask" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls what UNIX permission bits + will be set when a Windows NT client is manipulating the UNIX + permission on a directory using the native NT security dialog + box.</para> + + <para> + This parameter is applied as a mask (AND'ed with) to the incoming permission bits, thus resetting + any bits not in this mask. Make sure not to mix up this parameter with <smbconfoption name="force + directory security mode"/>, which works similar like this one but uses logical OR instead of AND. + Essentially, zero bits in this mask are a set of bits that will always be set to zero. + </para> + + <para> + Essentially, all bits set to zero in this mask will result in setting to zero the corresponding bits on the + file permissions regardless of the previous status of this bits on the file. + </para> + + <para>If not set explicitly this parameter is set to 0777 + meaning a user is allowed to set all the user/group/world + permissions on a directory.</para> + + <para><emphasis>Note</emphasis> that users who can access the + Samba server through other means can easily bypass this restriction, + so it is primarily useful for standalone "appliance" systems. + Administrators of most normal systems will probably want to leave + it as the default of <constant>0777</constant>.</para> +</description> + +<related>force directory security mode</related> +<related>security mask</related> +<related>force security mode</related> +<value type="default">0777</value> +<value type="example">0700</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/encryptpasswords.xml b/docs-xml/smbdotconf/security/encryptpasswords.xml new file mode 100644 index 0000000000..1a631fd098 --- /dev/null +++ b/docs-xml/smbdotconf/security/encryptpasswords.xml @@ -0,0 +1,40 @@ +<samba:parameter name="encrypt passwords" + context="G" + type="boolean" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean controls whether encrypted passwords + will be negotiated with the client. Note that Windows NT 4.0 SP3 and + above and also Windows 98 will by default expect encrypted passwords + unless a registry entry is changed. To use encrypted passwords in + Samba see the chapter "User Database" in the Samba HOWTO Collection. + </para> + + <para> + MS Windows clients that expect Microsoft encrypted passwords and that + do not have plain text password support enabled will be able to + connect only to a Samba server that has encrypted password support + enabled and for which the user accounts have a valid encrypted password. + Refer to the smbpasswd command man page for information regarding the + creation of encrypted passwords for user accounts. + </para> + + <para> + The use of plain text passwords is NOT advised as support for this feature + is no longer maintained in Microsoft Windows products. If you want to use + plain text passwords you must set this parameter to no. + </para> + + <para>In order for encrypted passwords to work correctly + <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> must either + have access to a local <citerefentry><refentrytitle>smbpasswd</refentrytitle> + <manvolnum>5</manvolnum></citerefentry> file (see the <citerefentry><refentrytitle>smbpasswd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> program for information on how to set up + and maintain this file), or set the <smbconfoption name="security">[server|domain|ads]</smbconfoption> parameter which + causes <command moreinfo="none">smbd</command> to authenticate against another + server.</para> +</description> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/forcecreatemode.xml b/docs-xml/smbdotconf/security/forcecreatemode.xml new file mode 100644 index 0000000000..8a6449fe21 --- /dev/null +++ b/docs-xml/smbdotconf/security/forcecreatemode.xml @@ -0,0 +1,25 @@ +<samba:parameter name="force create mode" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies a set of UNIX mode bit + permissions that will <emphasis>always</emphasis> be set on a + file created by Samba. This is done by bitwise 'OR'ing these bits onto + the mode bits of a file that is being created or having its + permissions changed. The default for this parameter is (in octal) + 000. The modes in this parameter are bitwise 'OR'ed onto the file + mode after the mask set in the <parameter moreinfo="none">create mask</parameter> + parameter is applied.</para> + + <para>The example below would force all created files to have read and execute + permissions set for 'group' and 'other' as well as the + read/write/execute bits set for the 'user'.</para> + +</description> + +<related>create mask</related> +<related>inherit permissions</related> + +<value type="default">000</value> +<value type="example">0755</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/forcedirectorymode.xml b/docs-xml/smbdotconf/security/forcedirectorymode.xml new file mode 100644 index 0000000000..7effc0e399 --- /dev/null +++ b/docs-xml/smbdotconf/security/forcedirectorymode.xml @@ -0,0 +1,25 @@ +<samba:parameter name="force directory mode" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies a set of UNIX mode bit + permissions that will <emphasis>always</emphasis> be set on a directory + created by Samba. This is done by bitwise 'OR'ing these bits onto the + mode bits of a directory that is being created. The default for this + parameter is (in octal) 0000 which will not add any extra permission + bits to a created directory. This operation is done after the mode + mask in the parameter <parameter moreinfo="none">directory mask</parameter> is + applied.</para> + + <para>The example below would force all created directories to have read and execute + permissions set for 'group' and 'other' as well as the + read/write/execute bits set for the 'user'.</para> +</description> + +<value type="default">000</value> +<value type="example">0755</value> + +<related>directory mask</related> +<related>inherit permissions</related> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/forcedirectorysecuritymode.xml b/docs-xml/smbdotconf/security/forcedirectorysecuritymode.xml new file mode 100644 index 0000000000..2c15ec2753 --- /dev/null +++ b/docs-xml/smbdotconf/security/forcedirectorysecuritymode.xml @@ -0,0 +1,43 @@ +<samba:parameter name="force directory security mode" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter controls what UNIX permission bits can be modified when a Windows NT client is manipulating + the UNIX permission on a directory using the native NT security dialog box. + </para> + + <para> + This parameter is applied as a mask (OR'ed with) to the changed permission bits, thus forcing any bits in this + mask that the user may have modified to be on. Make sure not to mix up this parameter with <smbconfoption + name="directory security mask"/>, which works in a similar manner to this one, but uses a logical AND instead + of an OR. + </para> + + <para> + Essentially, this mask may be treated as a set of bits that, when modifying security on a directory, + to will enable (1) any flags that are off (0) but which the mask has set to on (1). + </para> + + <para> + If not set explicitly this parameter is 0000, which allows a user to modify all the user/group/world + permissions on a directory without restrictions. + </para> + + <note><para> + Users who can access the Samba server through other means can easily bypass this restriction, so it is + primarily useful for standalone "appliance" systems. Administrators of most normal systems will + probably want to leave it set as 0000. + </para></note> + +</description> + +<value type="default">0</value> +<value type="example">700</value> + +<related>directory security mask</related> +<related>security mask</related> +<related>force security mode</related> + +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/forcegroup.xml b/docs-xml/smbdotconf/security/forcegroup.xml new file mode 100644 index 0000000000..f6c9974f99 --- /dev/null +++ b/docs-xml/smbdotconf/security/forcegroup.xml @@ -0,0 +1,39 @@ +<samba:parameter name="force group" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>group</synonym> +<description> + <para>This specifies a UNIX group name that will be + assigned as the default primary group for all users connecting + to this service. This is useful for sharing files by ensuring + that all access to files on service will use the named group for + their permissions checking. Thus, by assigning permissions for this + group to the files and directories within this service the Samba + administrator can restrict or allow sharing of these files.</para> + + <para>In Samba 2.0.5 and above this parameter has extended + functionality in the following way. If the group name listed here + has a '+' character prepended to it then the current user accessing + the share only has the primary group default assigned to this group + if they are already assigned as a member of that group. This allows + an administrator to decide that only users who are already in a + particular group will create files with group ownership set to that + group. This gives a finer granularity of ownership assignment. For + example, the setting <filename moreinfo="none">force group = +sys</filename> means + that only users who are already in group sys will have their default + primary group assigned to sys when accessing this Samba share. All + other users will retain their ordinary primary group.</para> + + <para> + If the <smbconfoption name="force user"/> parameter is also set the group specified in + <parameter moreinfo="none">force group</parameter> will override the primary group + set in <parameter moreinfo="none">force user</parameter>.</para> + +</description> + +<related>force user</related> + +<value type="default"/> +<value type="example">agroup</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/forcesecuritymode.xml b/docs-xml/smbdotconf/security/forcesecuritymode.xml new file mode 100644 index 0000000000..7451ef91ae --- /dev/null +++ b/docs-xml/smbdotconf/security/forcesecuritymode.xml @@ -0,0 +1,41 @@ +<samba:parameter name="force security mode" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter controls what UNIX permission bits can be modified when a Windows NT client is manipulating + the UNIX permission on a file using the native NT security dialog box. + </para> + + <para> + This parameter is applied as a mask (OR'ed with) to the changed permission bits, thus forcing any bits in this + mask that the user may have modified to be on. Make sure not to mix up this parameter with <smbconfoption + name="security mask"/>, which works similar like this one but uses logical AND instead of OR. + </para> + + <para> + Essentially, one bits in this mask may be treated as a set of bits that, when modifying security on a file, + the user has always set to be on. + </para> + + <para> + If not set explicitly this parameter is set to 0, and allows a user to modify all the user/group/world + permissions on a file, with no restrictions. + </para> + + <para><emphasis> + Note</emphasis> that users who can access the Samba server through other means can easily bypass this + restriction, so it is primarily useful for standalone "appliance" systems. Administrators of most + normal systems will probably want to leave this set to 0000. + </para> + +</description> + +<value type="default">0</value> +<value type="example">700</value> + +<related>force directory security mode</related> +<related>directory security mask</related> +<related>security mask</related> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/forceunknownacluser.xml b/docs-xml/smbdotconf/security/forceunknownacluser.xml new file mode 100644 index 0000000000..4c0949f052 --- /dev/null +++ b/docs-xml/smbdotconf/security/forceunknownacluser.xml @@ -0,0 +1,27 @@ +<samba:parameter name="force unknown acl user" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + +<description> + <para> + If this parameter is set, a Windows NT ACL that contains an unknown SID (security descriptor, or + representation of a user or group id) as the owner or group owner of the file will be silently + mapped into the current UNIX uid or gid of the currently connected user. + </para> + + <para> + This is designed to allow Windows NT clients to copy files and folders containing ACLs that were + created locally on the client machine and contain users local to that machine only (no domain + users) to be copied to a Samba server (usually with XCOPY /O) and have the unknown userid and + groupid of the file owner map to the current connected user. This can only be fixed correctly + when winbindd allows arbitrary mapping from any Windows NT SID to a UNIX uid or gid. + </para> + + <para> + Try using this parameter when XCOPY /O gives an ACCESS_DENIED error. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/forceuser.xml b/docs-xml/smbdotconf/security/forceuser.xml new file mode 100644 index 0000000000..f1ec5d449c --- /dev/null +++ b/docs-xml/smbdotconf/security/forceuser.xml @@ -0,0 +1,27 @@ +<samba:parameter name="force user" + type="string" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This specifies a UNIX user name that will be + assigned as the default user for all users connecting to this service. + This is useful for sharing files. You should also use it carefully + as using it incorrectly can cause security problems.</para> + + <para>This user name only gets used once a connection is established. + Thus clients still need to connect as a valid user and supply a + valid password. Once connected, all file operations will be performed + as the "forced user", no matter what username the client connected + as. This can be very useful.</para> + + <para>In Samba 2.0.5 and above this parameter also causes the + primary group of the forced user to be used as the primary group + for all file activity. Prior to 2.0.5 the primary group was left + as the primary group of the connecting user (this was a bug).</para> + +</description> + +<related>force group</related> +<value type="default"/> +<value type="example">auser</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/guestaccount.xml b/docs-xml/smbdotconf/security/guestaccount.xml new file mode 100644 index 0000000000..8132835a82 --- /dev/null +++ b/docs-xml/smbdotconf/security/guestaccount.xml @@ -0,0 +1,28 @@ +<samba:parameter name="guest account" + context="G" + type="string" + basic="1" advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a username which will be used for access + to services which are specified as <smbconfoption name="guest ok"/> (see below). Whatever privileges this + user has will be available to any client connecting to the guest service. + This user must exist in the password file, but does not require + a valid login. The user account "ftp" is often a good choice + for this parameter. + </para> + + <para>On some systems the default guest account "nobody" may not + be able to print. Use another account in this case. You should test + this by trying to log in as your guest user (perhaps by using the + <command moreinfo="none">su -</command> command) and trying to print using the + system print command such as <command moreinfo="none">lpr(1)</command> or <command moreinfo="none"> + lp(1)</command>.</para> + + <para>This parameter does not accept % macros, because + many parts of the system require this value to be + constant for correct operation.</para> +</description> +<value type="default">nobody<comment>default can be changed at compile-time</comment></value> +<value type="example">ftp</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/guestok.xml b/docs-xml/smbdotconf/security/guestok.xml new file mode 100644 index 0000000000..7cbf4e50bb --- /dev/null +++ b/docs-xml/smbdotconf/security/guestok.xml @@ -0,0 +1,20 @@ +<samba:parameter name="guest ok" + type="boolean" + context="S" + basic="1" advanced="1" print="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>public</synonym> +<description> + <para>If this parameter is <constant>yes</constant> for + a service, then no password is required to connect to the service. + Privileges will be those of the <smbconfoption name="guest account"/>.</para> + + <para>This paramater nullifies the benifits of setting + <smbconfoption name="restrict anonymous">2</smbconfoption> + </para> + + <para>See the section below on <smbconfoption name="security"/> for more information about this option. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/guestonly.xml b/docs-xml/smbdotconf/security/guestonly.xml new file mode 100644 index 0000000000..258eba9267 --- /dev/null +++ b/docs-xml/smbdotconf/security/guestonly.xml @@ -0,0 +1,15 @@ +<samba:parameter name="guest only" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>only guest</synonym> +<description> + <para>If this parameter is <constant>yes</constant> for + a service, then only guest connections to the service are permitted. + This parameter will have no effect if <smbconfoption name="guest ok"/> is not set for the service.</para> + + <para>See the section below on <smbconfoption name="security"/> for more information about this option. + </para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/hostsallow.xml b/docs-xml/smbdotconf/security/hostsallow.xml new file mode 100644 index 0000000000..849b515f46 --- /dev/null +++ b/docs-xml/smbdotconf/security/hostsallow.xml @@ -0,0 +1,63 @@ +<samba:parameter name="hosts allow" + context="S" + type="list" + basic="1" advanced="1" print="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>allow hosts</synonym> +<description> + <para>A synonym for this parameter is <smbconfoption name="allow hosts"/>.</para> + + <para>This parameter is a comma, space, or tab delimited + set of hosts which are permitted to access a service.</para> + + <para>If specified in the [global] section then it will + apply to all services, regardless of whether the individual + service has a different setting.</para> + + <para>You can specify the hosts by name or IP number. For + example, you could restrict access to only the hosts on a + Class C subnet with something like <command>allow hosts = 150.203.5.</command>. + The full syntax of the list is described in the man + page <filename>hosts_access(5)</filename>. Note that this man + page may not be present on your system, so a brief description will + be given here also.</para> + + <para>Note that the localhost address 127.0.0.1 will always + be allowed access unless specifically denied by a <smbconfoption name="hosts deny"/> option.</para> + + <para>You can also specify hosts by network/netmask pairs and + by netgroup names if your system supports netgroups. The + <emphasis>EXCEPT</emphasis> keyword can also be used to limit a + wildcard list. The following examples may provide some help:</para> + +<para>Example 1: allow all IPs in 150.203.*.*; except one</para> + + <para><command moreinfo="none">hosts allow = 150.203. EXCEPT 150.203.6.66</command></para> + + <para>Example 2: allow hosts that match the given network/netmask</para> + + <para><command moreinfo="none">hosts allow = 150.203.15.0/255.255.255.0</command></para> + + <para>Example 3: allow a couple of hosts</para> + + <para><command moreinfo="none">hosts allow = lapland, arvidsjaur</command></para> + + <para>Example 4: allow only hosts in NIS netgroup "foonet", but + deny access from one particular host</para> + + <para><command moreinfo="none">hosts allow = @foonet</command></para> + + <para><command moreinfo="none">hosts deny = pirate</command></para> + + <note><para>Note that access still requires suitable user-level passwords.</para></note> + + <para>See <citerefentry><refentrytitle>testparm</refentrytitle> + <manvolnum>1</manvolnum></citerefentry> for a way of testing your host access + to see if it does what you expect.</para> + + +</description> + +<value type="example">150.203.5. myhost.mynet.edu.au</value> +<value type="default"><comment>none (i.e., all hosts permitted access)</comment></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/hostsdeny.xml b/docs-xml/smbdotconf/security/hostsdeny.xml new file mode 100644 index 0000000000..136f86c9c8 --- /dev/null +++ b/docs-xml/smbdotconf/security/hostsdeny.xml @@ -0,0 +1,25 @@ +<samba:parameter name="hosts deny" + context="S" + type="list" + basic="1" advanced="1" print="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>deny hosts</synonym> +<description> + <para>The opposite of <parameter moreinfo="none">hosts allow</parameter> + - hosts listed here are <emphasis>NOT</emphasis> permitted access to + services unless the specific services have their own lists to override + this one. Where the lists conflict, the <parameter moreinfo="none">allow</parameter> + list takes precedence.</para> + + <para> + In the event that it is necessary to deny all by default, use the keyword + ALL (or the netmask <literal>0.0.0.0/0</literal>) and then explicitly specify + to the <smbconfoption name="hosts allow">hosts allow</smbconfoption> parameter those hosts + that should be permitted access. + </para> +</description> + +<value type="default"><comment>none (i.e., no hosts specifically excluded)</comment></value> + +<value type="example">150.203.4. badhost.mynet.edu.au</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/inheritacls.xml b/docs-xml/smbdotconf/security/inheritacls.xml new file mode 100644 index 0000000000..44afa8a3e2 --- /dev/null +++ b/docs-xml/smbdotconf/security/inheritacls.xml @@ -0,0 +1,16 @@ +<samba:parameter name="inherit acls" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter can be used to ensure that if default acls + exist on parent directories, they are always honored when creating a + new file or subdirectory in these parent directories. The default + behavior is to use the unix mode specified when creating the directory. + Enabling this option sets the unix mode to 0777, thus guaranteeing that + default directory acls are propagated. +</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/inheritowner.xml b/docs-xml/smbdotconf/security/inheritowner.xml new file mode 100644 index 0000000000..ba4fc617cb --- /dev/null +++ b/docs-xml/smbdotconf/security/inheritowner.xml @@ -0,0 +1,21 @@ +<samba:parameter name="inherit owner" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The ownership of new files and directories + is normally governed by effective uid of the connected user. + This option allows the Samba administrator to specify that + the ownership for new files and directories should be controlled + by the ownership of the parent directory.</para> + + <para>Common scenarios where this behavior is useful is in + implementing drop-boxes where users can create and edit files but not + delete them and to ensure that newly create files in a user's + roaming profile directory are actually owner by the user.</para> +</description> + +<related>inherit permissions</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/inheritpermissions.xml b/docs-xml/smbdotconf/security/inheritpermissions.xml new file mode 100644 index 0000000000..6e09f4f033 --- /dev/null +++ b/docs-xml/smbdotconf/security/inheritpermissions.xml @@ -0,0 +1,35 @@ +<samba:parameter name="inherit permissions" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + The permissions on new files and directories are normally governed by <smbconfoption name="create mask"/>, + <smbconfoption name="directory mask"/>, <smbconfoption name="force create mode"/> and <smbconfoption + name="force directory mode"/> but the boolean inherit permissions parameter overrides this. + </para> + + <para>New directories inherit the mode of the parent directory, + including bits such as setgid.</para> + + <para> + New files inherit their read/write bits from the parent directory. Their execute bits continue to be + determined by <smbconfoption name="map archive"/>, <smbconfoption name="map hidden"/> and <smbconfoption + name="map system"/> as usual. + </para> + + <para>Note that the setuid bit is <emphasis>never</emphasis> set via + inheritance (the code explicitly prohibits this).</para> + + <para>This can be particularly useful on large systems with + many users, perhaps several thousand, to allow a single [homes] + share to be used flexibly by each user.</para> +</description> + +<related>create mask</related> +<related>directory mask</related> +<related>force create mode</related> +<related>force directory mode</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/invalidusers.xml b/docs-xml/smbdotconf/security/invalidusers.xml new file mode 100644 index 0000000000..f4ed66f314 --- /dev/null +++ b/docs-xml/smbdotconf/security/invalidusers.xml @@ -0,0 +1,34 @@ +<samba:parameter name="invalid users" + context="S" + type="list" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a list of users that should not be allowed + to login to this service. This is really a <emphasis>paranoid</emphasis> + check to absolutely ensure an improper setting does not breach + your security.</para> + + <para>A name starting with a '@' is interpreted as an NIS + netgroup first (if your system supports NIS), and then as a UNIX + group if the name was not found in the NIS netgroup database.</para> + + <para>A name starting with '+' is interpreted only + by looking in the UNIX group database via the NSS getgrnam() interface. A name starting with + '&' is interpreted only by looking in the NIS netgroup database + (this requires NIS to be working on your system). The characters + '+' and '&' may be used at the start of the name in either order + so the value <parameter moreinfo="none">+&group</parameter> means check the + UNIX group database, followed by the NIS netgroup database, and + the value <parameter moreinfo="none">&+group</parameter> means check the NIS + netgroup database, followed by the UNIX group database (the + same as the '@' prefix).</para> + + <para>The current servicename is substituted for <parameter moreinfo="none">%S</parameter>. + This is useful in the [homes] section.</para> +</description> + +<related>valid users</related> + +<value type="default"><comment>no invalid users</comment></value> +<value type="example">root fred admin @wheel</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/lanmanauth.xml b/docs-xml/smbdotconf/security/lanmanauth.xml new file mode 100644 index 0000000000..341952205f --- /dev/null +++ b/docs-xml/smbdotconf/security/lanmanauth.xml @@ -0,0 +1,33 @@ +<samba:parameter name="lanman auth" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter determines whether or not <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will attempt to + authenticate users or permit password changes + using the LANMAN password hash. If disabled, only clients which support NT + password hashes (e.g. Windows NT/2000 clients, smbclient, but not + Windows 95/98 or the MS DOS network client) will be able to + connect to the Samba host.</para> + + <para>The LANMAN encrypted response is easily broken, due to it's + case-insensitive nature, and the choice of algorithm. Servers + without Windows 95/98/ME or MS DOS clients are advised to disable + this option. </para> + + <para>Unlike the <command moreinfo="none">encrypt + passwords</command> option, this parameter cannot alter client + behaviour, and the LANMAN response will still be sent over the + network. See the <command moreinfo="none">client lanman + auth</command> to disable this for Samba's clients (such as smbclient)</para> + + <para>If this option, and <command moreinfo="none">ntlm + auth</command> are both disabled, then only NTLMv2 logins will be + permited. Not all clients support NTLMv2, and most will require + special configuration to use it.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/maptoguest.xml b/docs-xml/smbdotconf/security/maptoguest.xml new file mode 100644 index 0000000000..0f680ae71c --- /dev/null +++ b/docs-xml/smbdotconf/security/maptoguest.xml @@ -0,0 +1,76 @@ +<samba:parameter name="map to guest" + type="enum" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter is only useful in <smbconfoption name="SECURITY"> + security</smbconfoption> modes other than <parameter moreinfo="none">security = share</parameter> + and <parameter moreinfo="none">security = server</parameter> + - i.e. <constant>user</constant>, and <constant>domain</constant>.</para> + + <para>This parameter can take four different values, which tell + <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> what to do with user + login requests that don't match a valid UNIX user in some way.</para> + + <para>The four settings are :</para> + + <itemizedlist> + <listitem> + <para><constant>Never</constant> - Means user login + requests with an invalid password are rejected. This is the + default.</para> + </listitem> + + <listitem> + <para><constant>Bad User</constant> - Means user + logins with an invalid password are rejected, unless the username + does not exist, in which case it is treated as a guest login and + mapped into the <smbconfoption name="guest account"/>.</para> + </listitem> + + <listitem> + <para><constant>Bad Password</constant> - Means user logins + with an invalid password are treated as a guest login and mapped + into the <smbconfoption name="guest account"/>. Note that + this can cause problems as it means that any user incorrectly typing + their password will be silently logged on as "guest" - and + will not know the reason they cannot access files they think + they should - there will have been no message given to them + that they got their password wrong. Helpdesk services will + <emphasis>hate</emphasis> you if you set the <parameter moreinfo="none">map to + guest</parameter> parameter this way :-).</para> + </listitem> + <listitem> + <para><constant>Bad Uid</constant> - Is only applicable when Samba is configured + in some type of domain mode security (security = {domain|ads}) and means that + user logins which are successfully authenticated but which have no valid Unix + user account (and smbd is unable to create one) should be mapped to the defined + guest account. This was the default behavior of Samba 2.x releases. Note that + if a member server is running winbindd, this option should never be required + because the nss_winbind library will export the Windows domain users and groups + to the underlying OS via the Name Service Switch interface.</para> + </listitem> + </itemizedlist> + + <para>Note that this parameter is needed to set up "Guest" + share services when using <parameter moreinfo="none">security</parameter> modes other than + share and server. This is because in these modes the name of the resource being + requested is <emphasis>not</emphasis> sent to the server until after + the server has successfully authenticated the client so the server + cannot make authentication decisions at the correct time (connection + to the share) for "Guest" shares. This parameter is not useful with + <parameter moreinfo="none">security = server</parameter> as in this security mode + no information is returned about whether a user logon failed due to + a bad username or bad password, the same error is returned from a modern server + in both cases.</para> + + <para>For people familiar with the older Samba releases, this + parameter maps to the old compile-time setting of the <constant> + GUEST_SESSSETUP</constant> value in local.h.</para> +</description> + +<value type="default">Never</value> +<value type="example">Bad User</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/ntlmauth.xml b/docs-xml/smbdotconf/security/ntlmauth.xml new file mode 100644 index 0000000000..ebcdad72a1 --- /dev/null +++ b/docs-xml/smbdotconf/security/ntlmauth.xml @@ -0,0 +1,20 @@ +<samba:parameter name="ntlm auth" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter determines whether or not <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will attempt to + authenticate users using the NTLM encrypted password response. + If disabled, either the lanman password hash or an NTLMv2 response + will need to be sent by the client.</para> + + <para>If this option, and <command moreinfo="none">lanman + auth</command> are both disabled, then only NTLMv2 logins will be + permited. Not all clients support NTLMv2, and most will require + special configuration to us it.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/nullpasswords.xml b/docs-xml/smbdotconf/security/nullpasswords.xml new file mode 100644 index 0000000000..402114e259 --- /dev/null +++ b/docs-xml/smbdotconf/security/nullpasswords.xml @@ -0,0 +1,14 @@ +<samba:parameter name="null passwords" + context="G" + advanced="1" developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Allow or disallow client access to accounts that have null passwords. </para> + + <para>See also <citerefentry><refentrytitle>smbpasswd</refentrytitle> + <manvolnum>5</manvolnum></citerefentry>.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/obeypamrestrictions.xml b/docs-xml/smbdotconf/security/obeypamrestrictions.xml new file mode 100644 index 0000000000..40777f4f5d --- /dev/null +++ b/docs-xml/smbdotconf/security/obeypamrestrictions.xml @@ -0,0 +1,20 @@ +<samba:parameter name="obey pam restrictions" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>When Samba 3.0 is configured to enable PAM support + (i.e. --with-pam), this parameter will control whether or not Samba + should obey PAM's account and session management directives. The + default behavior is to use PAM for clear text authentication only + and to ignore any account or session management. Note that Samba + always ignores PAM for authentication in the case of <smbconfoption + name="encrypt passwords">yes</smbconfoption>. The reason + is that PAM modules cannot support the challenge/response + authentication mechanism needed in the presence of SMB password encryption. +</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/onlyuser.xml b/docs-xml/smbdotconf/security/onlyuser.xml new file mode 100644 index 0000000000..b1ef1b7606 --- /dev/null +++ b/docs-xml/smbdotconf/security/onlyuser.xml @@ -0,0 +1,25 @@ +<samba:parameter name="only user" + type="boolean" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a boolean option that controls whether + connections with usernames not in the <parameter moreinfo="none">user</parameter> + list will be allowed. By default this option is disabled so that a + client can supply a username to be used by the server. Enabling + this parameter will force the server to only use the login + names from the <parameter moreinfo="none">user</parameter> list and is only really + useful in <smbconfoption name="security">share</smbconfoption> level security.</para> + + <para>Note that this also means Samba won't try to deduce + usernames from the service name. This can be annoying for + the [homes] section. To get around this you could use <command moreinfo="none">user = + %S</command> which means your <parameter moreinfo="none">user</parameter> list + will be just the service name, which for home directories is the + name of the user.</para> +</description> + +<related>user</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/pampasswordchange.xml b/docs-xml/smbdotconf/security/pampasswordchange.xml new file mode 100644 index 0000000000..e5c04d405c --- /dev/null +++ b/docs-xml/smbdotconf/security/pampasswordchange.xml @@ -0,0 +1,17 @@ +<samba:parameter name="pam password change" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>With the addition of better PAM support in Samba 2.2, + this parameter, it is possible to use PAM's password change control + flag for Samba. If enabled, then PAM will be used for password + changes when requested by an SMB client instead of the program listed in + <smbconfoption name="passwd program"/>. + It should be possible to enable this without changing your + <smbconfoption name="passwd chat"/> parameter for most setups.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/passdbbackend.xml b/docs-xml/smbdotconf/security/passdbbackend.xml new file mode 100644 index 0000000000..487d8b8a9d --- /dev/null +++ b/docs-xml/smbdotconf/security/passdbbackend.xml @@ -0,0 +1,64 @@ +<samba:parameter name="passdb backend" + context="G" + type="list" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para>This option allows the administrator to chose which backend + will be used for storing user and possibly group information. This allows + you to swap between different storage mechanisms without recompile. </para> + + <para>The parameter value is divided into two parts, the backend's name, and a 'location' + string that has meaning only to that particular backed. These are separated + by a : character.</para> + + <para>Available backends can include: + <itemizedlist> + <listitem> + <para><command moreinfo="none">smbpasswd</command> - The default smbpasswd + backend. Takes a path to the smbpasswd file as an optional argument. + </para> + </listitem> + + <listitem> + <para><command moreinfo="none">tdbsam</command> - The TDB based password storage + backend. Takes a path to the TDB as an optional argument (defaults to passdb.tdb + in the <smbconfoption name="private dir"/> directory.</para> + </listitem> + + <listitem> + <para><command moreinfo="none">ldapsam</command> - The LDAP based passdb + backend. Takes an LDAP URL as an optional argument (defaults to + <command moreinfo="none">ldap://localhost</command>)</para> + + <para>LDAP connections should be secured where possible. This may be done using either + Start-TLS (see <smbconfoption name="ldap ssl"/>) or by + specifying <parameter moreinfo="none">ldaps://</parameter> in + the URL argument. </para> + + <para>Multiple servers may also be specified in double-quotes. + Whether multiple servers are supported or not and the exact + syntax depends on the LDAP library you use. + </para> + + </listitem> + </itemizedlist> + + </para> + Examples of use are: +<programlisting> +passdb backend = tdbsam:/etc/samba/private/passdb.tdb + +or multi server LDAP URL with OpenLDAP library: + +passdb backend = ldapsam:"ldap://ldap-1.example.com ldap://ldap-2.example.com" + +or multi server LDAP URL with Netscape based LDAP library: + +passdb backend = ldapsam:"ldap://ldap-1.example.com ldap-2.example.com" +</programlisting> +</description> + +<value type="default">smbpasswd</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/passdbexpandexplicit.xml b/docs-xml/smbdotconf/security/passdbexpandexplicit.xml new file mode 100644 index 0000000000..08c893191a --- /dev/null +++ b/docs-xml/smbdotconf/security/passdbexpandexplicit.xml @@ -0,0 +1,15 @@ +<samba:parameter name="passdb expand explicit" + context="G" + advanced="1" developer="0" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter controls whether Samba substitutes %-macros in the passdb fields if they are explicitly set. We + used to expand macros here, but this turned out to be a bug because the Windows client can expand a variable + %G_osver% in which %G would have been substituted by the user's primary group. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/passwdchat.xml b/docs-xml/smbdotconf/security/passwdchat.xml new file mode 100644 index 0000000000..da18142dfa --- /dev/null +++ b/docs-xml/smbdotconf/security/passwdchat.xml @@ -0,0 +1,60 @@ +<samba:parameter name="passwd chat" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This string controls the <emphasis>"chat"</emphasis> + conversation that takes places between <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> and the local password changing + program to change the user's password. The string describes a + sequence of response-receive pairs that <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> uses to determine what to send to the + <smbconfoption name="passwd program"/> and what to expect back. If the expected output is not + received then the password is not changed.</para> + + <para>This chat sequence is often quite site specific, depending + on what local methods are used for password control (such as NIS + etc).</para> + + <para>Note that this parameter only is only used if the <smbconfoption + name="unix password sync"/> parameter is set to <constant>yes</constant>. This sequence is + then called <emphasis>AS ROOT</emphasis> when the SMB password in the + smbpasswd file is being changed, without access to the old password + cleartext. This means that root must be able to reset the user's password without + knowing the text of the previous password. In the presence of + NIS/YP, this means that the <smbconfoption name="passwd program"/> must + be executed on the NIS master. + </para> + + <para>The string can contain the macro <parameter + moreinfo="none">%n</parameter> which is substituted + for the new password. The old passsword (<parameter + moreinfo="none">%o</parameter>) is only available when + <smbconfoption name="encrypt passwords"/> has been disabled. + The chat sequence can also contain the standard macros + \n, \r, \t and \s to give line-feed, carriage-return, tab + and space. The chat sequence string can also contain + a '*' which matches any sequence of characters. Double quotes can + be used to collect strings with spaces in them into a single + string.</para> + + <para>If the send string in any part of the chat sequence is a full + stop ".", then no string is sent. Similarly, if the + expect string is a full stop then no string is expected.</para> + + <para>If the <smbconfoption name="pam password change"/> parameter is set to <constant>yes</constant>, the + chat pairs may be matched in any order, and success is determined by the PAM result, not any particular + output. The \n macro is ignored for PAM conversions. + </para> + +</description> + +<related>unix password sync</related> +<related>passwd program</related> +<related>passwd chat debug</related> +<related>pam password change</related> + +<value type="default">*new*password* %n\n*new*password* %n\n *changed*</value> +<value type="example">"*Enter NEW password*" %n\n "*Reenter NEW password*" %n\n "*Password changed*"</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/passwdchatdebug.xml b/docs-xml/smbdotconf/security/passwdchatdebug.xml new file mode 100644 index 0000000000..24bcbdba10 --- /dev/null +++ b/docs-xml/smbdotconf/security/passwdchatdebug.xml @@ -0,0 +1,27 @@ +<samba:parameter name="passwd chat debug" + context="G" + advanced="1" developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean specifies if the passwd chat script + parameter is run in <emphasis>debug</emphasis> mode. In this mode the + strings passed to and received from the passwd chat are printed + in the <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> log with a + <smbconfoption name="debug level"/> + of 100. This is a dangerous option as it will allow plaintext passwords + to be seen in the <command moreinfo="none">smbd</command> log. It is available to help + Samba admins debug their <parameter moreinfo="none">passwd chat</parameter> scripts + when calling the <parameter moreinfo="none">passwd program</parameter> and should + be turned off after this has been done. This option has no effect if the + <smbconfoption name="pam password change"/> + parameter is set. This parameter is off by default.</para> +</description> + +<related>passwd chat</related> +<related>pam password change</related> +<related>passwd program</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/passwdchattimeout.xml b/docs-xml/smbdotconf/security/passwdchattimeout.xml new file mode 100644 index 0000000000..c371aa2c88 --- /dev/null +++ b/docs-xml/smbdotconf/security/passwdchattimeout.xml @@ -0,0 +1,14 @@ +<samba:parameter name="passwd chat timeout" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This integer specifies the number of seconds smbd will wait for an initial + answer from a passwd chat script being run. Once the initial answer is received + the subsequent answers must be received in one tenth of this time. The default it + two seconds.</para> +</description> + +<value type="default">2</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/passwdprogram.xml b/docs-xml/smbdotconf/security/passwdprogram.xml new file mode 100644 index 0000000000..4158c1b7a6 --- /dev/null +++ b/docs-xml/smbdotconf/security/passwdprogram.xml @@ -0,0 +1,37 @@ +<samba:parameter name="passwd program" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>The name of a program that can be used to set + UNIX user passwords. Any occurrences of <parameter moreinfo="none">%u</parameter> + will be replaced with the user name. The user name is checked for + existence before calling the password changing program.</para> + + <para>Also note that many passwd programs insist in <emphasis>reasonable + </emphasis> passwords, such as a minimum length, or the inclusion + of mixed case chars and digits. This can pose a problem as some clients + (such as Windows for Workgroups) uppercase the password before sending + it.</para> + + <para><emphasis>Note</emphasis> that if the <parameter moreinfo="none">unix + password sync</parameter> parameter is set to <constant>yes + </constant> then this program is called <emphasis>AS ROOT</emphasis> + before the SMB password in the smbpasswd + file is changed. If this UNIX password change fails, then + <command moreinfo="none">smbd</command> will fail to change the SMB password also + (this is by design).</para> + + <para>If the <parameter moreinfo="none">unix password sync</parameter> parameter + is set this parameter <emphasis>MUST USE ABSOLUTE PATHS</emphasis> + for <emphasis>ALL</emphasis> programs called, and must be examined + for security implications. Note that by default <parameter moreinfo="none">unix + password sync</parameter> is set to <constant>no</constant>.</para> + </description> + + <related>unix password symc</related> + + <value type="default"></value> +<value type="example">/bin/passwd %u</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/passwordlevel.xml b/docs-xml/smbdotconf/security/passwordlevel.xml new file mode 100644 index 0000000000..1da11e406b --- /dev/null +++ b/docs-xml/smbdotconf/security/passwordlevel.xml @@ -0,0 +1,48 @@ +<samba:parameter name="password level" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Some client/server combinations have difficulty + with mixed-case passwords. One offending client is Windows for + Workgroups, which for some reason forces passwords to upper + case when using the LANMAN1 protocol, but leaves them alone when + using COREPLUS! Another problem child is the Windows 95/98 + family of operating systems. These clients upper case clear + text passwords even when NT LM 0.12 selected by the protocol + negotiation request/response.</para> + + <para>This parameter defines the maximum number of characters + that may be upper case in passwords.</para> + + <para>For example, say the password given was "FRED". If <parameter moreinfo="none"> + password level</parameter> is set to 1, the following combinations + would be tried if "FRED" failed:</para> + + <para>"Fred", "fred", "fRed", "frEd","freD"</para> + + <para>If <parameter moreinfo="none">password level</parameter> was set to 2, + the following combinations would also be tried: </para> + + <para>"FRed", "FrEd", "FreD", "fREd", "fReD", "frED", ..</para> + + <para>And so on.</para> + + <para>The higher value this parameter is set to the more likely + it is that a mixed case password will be matched against a single + case password. However, you should be aware that use of this + parameter reduces security and increases the time taken to + process a new connection.</para> + + <para>A value of zero will cause only two attempts to be + made - the password as is and the password in all-lower case.</para> + + <para>This parameter is used only when using plain-text passwords. It is + not at all used when encrypted passwords as in use (that is the default + since samba-3.0.0). Use this only when <smbconfoption name="encrypt passwords">No</smbconfoption>.</para> +</description> + +<value type="default">0</value> +<value type="example">4</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/passwordserver.xml b/docs-xml/smbdotconf/security/passwordserver.xml new file mode 100644 index 0000000000..188cea88d1 --- /dev/null +++ b/docs-xml/smbdotconf/security/passwordserver.xml @@ -0,0 +1,99 @@ +<samba:parameter name="password server" + context="G" + type="list" + advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>By specifying the name of another SMB server + or Active Directory domain controller with this option, + and using <command moreinfo="none">security = [ads|domain|server]</command> + it is possible to get Samba to + to do all its username/password validation using a specific remote server.</para> + + <para>This option sets the name or IP address of the password server to use. + New syntax has been added to support defining the port to use when connecting + to the server the case of an ADS realm. To define a port other than the + default LDAP port of 389, add the port number using a colon after the + name or IP address (e.g. 192.168.1.100:389). If you do not specify a port, + Samba will use the standard LDAP port of tcp/389. Note that port numbers + have no effect on password servers for Windows NT 4.0 domains or netbios + connections.</para> + + <para>If parameter is a name, it is looked up using the + parameter <smbconfoption name="name resolve order"/> and so may resolved + by any method and order described in that parameter.</para> + + <para>The password server must be a machine capable of using + the "LM1.2X002" or the "NT LM 0.12" protocol, and it must be in + user level security mode.</para> + + <note><para>Using a password server means your UNIX box (running + Samba) is only as secure as your password server. <emphasis>DO NOT + CHOOSE A PASSWORD SERVER THAT YOU DON'T COMPLETELY TRUST</emphasis>. + </para></note> + + <para>Never point a Samba server at itself for password serving. + This will cause a loop and could lock up your Samba server!</para> + + <para>The name of the password server takes the standard + substitutions, but probably the only useful one is <parameter moreinfo="none">%m + </parameter>, which means the Samba server will use the incoming + client as the password server. If you use this then you better + trust your clients, and you had better restrict them with hosts allow!</para> + + <para>If the <parameter moreinfo="none">security</parameter> parameter is set to + <constant>domain</constant> or <constant>ads</constant>, then the list of machines in this + option must be a list of Primary or Backup Domain controllers for the + Domain or the character '*', as the Samba server is effectively + in that domain, and will use cryptographically authenticated RPC calls + to authenticate the user logging on. The advantage of using <command moreinfo="none"> + security = domain</command> is that if you list several hosts in the + <parameter moreinfo="none">password server</parameter> option then <command moreinfo="none">smbd + </command> will try each in turn till it finds one that responds. This + is useful in case your primary server goes down.</para> + + <para>If the <parameter moreinfo="none">password server</parameter> option is set + to the character '*', then Samba will attempt to auto-locate the + Primary or Backup Domain controllers to authenticate against by + doing a query for the name <constant>WORKGROUP<1C></constant> + and then contacting each server returned in the list of IP + addresses from the name resolution source. </para> + + <para>If the list of servers contains both names/IP's and the '*' + character, the list is treated as a list of preferred + domain controllers, but an auto lookup of all remaining DC's + will be added to the list as well. Samba will not attempt to optimize + this list by locating the closest DC.</para> + + <para>If the <parameter moreinfo="none">security</parameter> parameter is + set to <constant>server</constant>, then there are different + restrictions that <command moreinfo="none">security = domain</command> doesn't + suffer from:</para> + + <itemizedlist> + <listitem> + <para>You may list several password servers in + the <parameter moreinfo="none">password server</parameter> parameter, however if an + <command moreinfo="none">smbd</command> makes a connection to a password server, + and then the password server fails, no more users will be able + to be authenticated from this <command moreinfo="none">smbd</command>. This is a + restriction of the SMB/CIFS protocol when in <command moreinfo="none">security = server + </command> mode and cannot be fixed in Samba.</para> + </listitem> + + <listitem> + <para>If you are using a Windows NT server as your + password server then you will have to ensure that your users + are able to login from the Samba server, as when in <command moreinfo="none"> + security = server</command> mode the network logon will appear to + come from there rather than from the users workstation.</para> + </listitem> + </itemizedlist> +</description> + +<related>security</related> +<value type="default"></value> +<value type="example">NT-PDC, NT-BDC1, NT-BDC2, *</value> +<value type="example">windc.mydomain.com:389 192.168.1.101 *</value> +<value type="example">*</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/preloadmodules.xml b/docs-xml/smbdotconf/security/preloadmodules.xml new file mode 100644 index 0000000000..1d985a1995 --- /dev/null +++ b/docs-xml/smbdotconf/security/preloadmodules.xml @@ -0,0 +1,14 @@ +<samba:parameter name="preload modules" + type="list" + context="G" + basic="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a list of paths to modules that should + be loaded into smbd before a client connects. This improves + the speed of smbd when reacting to new connections somewhat. </para> +</description> + +<value type="default"></value> +<value type="example">/usr/lib/samba/passdb/mysql.so</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/printeradmin.xml b/docs-xml/smbdotconf/security/printeradmin.xml new file mode 100644 index 0000000000..a0dd9929c0 --- /dev/null +++ b/docs-xml/smbdotconf/security/printeradmin.xml @@ -0,0 +1,27 @@ +<samba:parameter name="printer admin" + context="S" + type="list" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This lists users who can do anything to printers + via the remote administration interfaces offered + by MS-RPC (usually using a NT workstation). + This parameter can be set per-share or globally. + Note: The root user always has admin rights. Use + caution with use in the global stanza as this can + cause side effects. + </para> + + <para> + This parameter has been marked deprecated in favor + of using the SePrintOperatorPrivilege and individual + print security descriptors. It will be removed in a future release. + </para> + +</description> + +<value type="default"></value> +<value type="example">admin, @staff</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/privatedir.xml b/docs-xml/smbdotconf/security/privatedir.xml new file mode 100644 index 0000000000..d0cbcfad59 --- /dev/null +++ b/docs-xml/smbdotconf/security/privatedir.xml @@ -0,0 +1,14 @@ +<samba:parameter name="private dir" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameters defines the directory + smbd will use for storing such files as <filename moreinfo="none">smbpasswd</filename> + and <filename moreinfo="none">secrets.tdb</filename>. +</para> +</description> + +<value type="default">${prefix}/private</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/readlist.xml b/docs-xml/smbdotconf/security/readlist.xml new file mode 100644 index 0000000000..df6b4f129b --- /dev/null +++ b/docs-xml/smbdotconf/security/readlist.xml @@ -0,0 +1,22 @@ +<samba:parameter name="read list" + context="S" + type="list" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is a list of users that are given read-only access to a service. If the connecting user is in this list + then they will not be given write access, no matter what the <smbconfoption name="read only"/> option is set + to. The list can include group names using the syntax described in the <smbconfoption name="invalid users"/> + parameter. + </para> + + <para>This parameter will not work with the <smbconfoption name="security">share</smbconfoption> in + Samba 3.0. This is by design.</para> +</description> + +<related>write list</related> +<related>invalid users</related> + +<value type="default"></value> +<value type="example">mary, @students</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/readonly.xml b/docs-xml/smbdotconf/security/readonly.xml new file mode 100644 index 0000000000..6e1f6dd2b8 --- /dev/null +++ b/docs-xml/smbdotconf/security/readonly.xml @@ -0,0 +1,19 @@ +<samba:parameter name="read only" + context="S" + type="boolean" + basic="1" advanced="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>An inverted synonym is <smbconfoption name="writeable"/>.</para> + + <para>If this parameter is <constant>yes</constant>, then users + of a service may not create or modify files in the service's + directory.</para> + + <para>Note that a printable service (<command moreinfo="none">printable = yes</command>) + will <emphasis>ALWAYS</emphasis> allow writing to the directory + (user privileges permitting), but only via spooling operations.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/renameuserscript.xml b/docs-xml/smbdotconf/security/renameuserscript.xml new file mode 100644 index 0000000000..1ec1dcb6eb --- /dev/null +++ b/docs-xml/smbdotconf/security/renameuserscript.xml @@ -0,0 +1,33 @@ +<samba:parameter name="rename user script" + context="G" + advanced="1" developer="1" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is the full pathname to a script that will be run as root by <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> under special circumstances described below. + </para> + + <para> + When a user with admin authority or SeAddUserPrivilege rights renames a user (e.g.: from the NT4 User Manager + for Domains), this script will be run to rename the POSIX user. Two variables, <literal>%uold</literal> and + <literal>%unew</literal>, will be substituted with the old and new usernames, respectively. The script should + return 0 upon successful completion, and nonzero otherwise. + </para> + + <note><para> + The script has all responsibility to rename all the necessary data that is accessible in this posix method. + This can mean different requirements for different backends. The tdbsam and smbpasswd backends will take care + of the contents of their respective files, so the script is responsible only for changing the POSIX username, and + other data that may required for your circumstances, such as home directory. Please also consider whether or + not you need to rename the actual home directories themselves. The ldapsam backend will not make any changes, + because of the potential issues with renaming the LDAP naming attribute. In this case the script is + responsible for changing the attribute that samba uses (uid) for locating users, as well as any data that + needs to change for other applications using the same directory. + </para></note> + +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/restrictanonymous.xml b/docs-xml/smbdotconf/security/restrictanonymous.xml new file mode 100644 index 0000000000..1fbf983d54 --- /dev/null +++ b/docs-xml/smbdotconf/security/restrictanonymous.xml @@ -0,0 +1,38 @@ +<samba:parameter name="restrict anonymous" + type="integer" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The setting of this parameter determines whether user and + group list information is returned for an anonymous connection. + and mirrors the effects of the +<programlisting> +HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ + Control\LSA\RestrictAnonymous +</programlisting> + registry key in Windows 2000 and Windows NT. When set to 0, user + and group list information is returned to anyone who asks. When set + to 1, only an authenticated user can retrive user and + group list information. For the value 2, supported by + Windows 2000/XP and Samba, no anonymous connections are allowed at + all. This can break third party and Microsoft + applications which expect to be allowed to perform + operations anonymously.</para> + + <para> + The security advantage of using restrict anonymous = 1 is dubious, + as user and group list information can be obtained using other + means. + </para> + + <note> + <para> + The security advantage of using restrict anonymous = 2 is removed + by setting <smbconfoption name="guest ok">yes</smbconfoption> on any share. + </para> + </note> +</description> + +<value type="default">0</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/rootdirectory.xml b/docs-xml/smbdotconf/security/rootdirectory.xml new file mode 100644 index 0000000000..8736598001 --- /dev/null +++ b/docs-xml/smbdotconf/security/rootdirectory.xml @@ -0,0 +1,35 @@ +<samba:parameter name="root directory" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>root</synonym> +<synonym>root dir</synonym> +<description> + <para>The server will <command moreinfo="none">chroot()</command> (i.e. + Change its root directory) to this directory on startup. This is + not strictly necessary for secure operation. Even without it the + server will deny access to files not in one of the service entries. + It may also check for, and deny access to, soft links to other + parts of the filesystem, or attempts to use ".." in file names + to access other directories (depending on the setting of the + <smbconfoption name="wide smbconfoptions"/> parameter). + </para> + + <para>Adding a <parameter moreinfo="none">root directory</parameter> entry other + than "/" adds an extra level of security, but at a price. It + absolutely ensures that no access is given to files not in the + sub-tree specified in the <parameter moreinfo="none">root directory</parameter> + option, <emphasis>including</emphasis> some files needed for + complete operation of the server. To maintain full operability + of the server you will need to mirror some system files + into the <parameter moreinfo="none">root directory</parameter> tree. In particular + you will need to mirror <filename moreinfo="none">/etc/passwd</filename> (or a + subset of it), and any binaries or configuration files needed for + printing (if required). The set of files that must be mirrored is + operating system dependent.</para> +</description> + +<value type="default">/</value> +<value type="example">/homes/smb</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/security.xml b/docs-xml/smbdotconf/security/security.xml new file mode 100644 index 0000000000..3ad5175712 --- /dev/null +++ b/docs-xml/smbdotconf/security/security.xml @@ -0,0 +1,250 @@ +<samba:parameter name="security" + context="G" + type="enum" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <when_value value="security"> + <requires option="encrypted passwords">/(yes|true)/</requires> + </when_value> +<description> + <para>This option affects how clients respond to + Samba and is one of the most important settings in the <filename moreinfo="none"> + smb.conf</filename> file.</para> + + <para>The option sets the "security mode bit" in replies to + protocol negotiations with <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> to turn share level security on or off. Clients decide + based on this bit whether (and how) to transfer user and password + information to the server.</para> + + + <para>The default is <command moreinfo="none">security = user</command>, as this is + the most common setting needed when talking to Windows 98 and + Windows NT.</para> + + <para>The alternatives are <command moreinfo="none">security = share</command>, + <command moreinfo="none">security = server</command> or <command moreinfo="none">security = domain + </command>.</para> + + <para>In versions of Samba prior to 2.0.0, the default was + <command moreinfo="none">security = share</command> mainly because that was + the only option at one stage.</para> + + <para>There is a bug in WfWg that has relevance to this + setting. When in user or server level security a WfWg client + will totally ignore the username and password you type in the "connect + drive" dialog box. This makes it very difficult (if not impossible) + to connect to a Samba service as anyone except the user that + you are logged into WfWg as.</para> + + <para>If your PCs use usernames that are the same as their + usernames on the UNIX machine then you will want to use + <command moreinfo="none">security = user</command>. If you mostly use usernames + that don't exist on the UNIX box then use <command moreinfo="none">security = + share</command>.</para> + + <para>You should also use <command moreinfo="none">security = share</command> if you + want to mainly setup shares without a password (guest shares). This + is commonly used for a shared printer server. It is more difficult + to setup guest shares with <command moreinfo="none">security = user</command>, see + the <smbconfoption name="map to guest"/>parameter for details.</para> + + <para>It is possible to use <command moreinfo="none">smbd</command> in a <emphasis> + hybrid mode</emphasis> where it is offers both user and share + level security under different <smbconfoption name="NetBIOS aliases"/>. </para> + + <para>The different settings will now be explained.</para> + + + <para><anchor id="SECURITYEQUALSSHARE"/><emphasis>SECURITY = SHARE</emphasis></para> + + <para>When clients connect to a share level security server they + need not log onto the server with a valid username and password before + attempting to connect to a shared resource (although modern clients + such as Windows 95/98 and Windows NT will send a logon request with + a username but no password when talking to a <command moreinfo="none">security = share + </command> server). Instead, the clients send authentication information + (passwords) on a per-share basis, at the time they attempt to connect + to that share.</para> + + <para>Note that <command moreinfo="none">smbd</command> <emphasis>ALWAYS</emphasis> + uses a valid UNIX user to act on behalf of the client, even in + <command moreinfo="none">security = share</command> level security.</para> + + <para>As clients are not required to send a username to the server + in share level security, <command moreinfo="none">smbd</command> uses several + techniques to determine the correct UNIX user to use on behalf + of the client.</para> + + <para>A list of possible UNIX usernames to match with the given + client password is constructed using the following methods :</para> + + <itemizedlist> + <listitem> + <para>If the <smbconfoption name="guest only"/> parameter is set, then all the other + stages are missed and only the <smbconfoption name="guest account"/> username is checked. + </para> + </listitem> + + <listitem> + <para>Is a username is sent with the share connection + request, then this username (after mapping - see <smbconfoption name="username map"/>), + is added as a potential username. + </para> + </listitem> + + <listitem> + <para>If the client did a previous <emphasis>logon + </emphasis> request (the SessionSetup SMB call) then the + username sent in this SMB will be added as a potential username. + </para> + </listitem> + + <listitem> + <para>The name of the service the client requested is + added as a potential username. + </para> + </listitem> + + <listitem> + <para>The NetBIOS name of the client is added to + the list as a potential username. + </para> + </listitem> + + <listitem> + <para>Any users on the <smbconfoption name="user"/> list are added as potential usernames. + </para> + </listitem> + </itemizedlist> + + <para>If the <parameter moreinfo="none">guest only</parameter> parameter is + not set, then this list is then tried with the supplied password. + The first user for whom the password matches will be used as the + UNIX user.</para> + + <para>If the <parameter moreinfo="none">guest only</parameter> parameter is + set, or no username can be determined then if the share is marked + as available to the <parameter moreinfo="none">guest account</parameter>, then this + guest user will be used, otherwise access is denied.</para> + + <para>Note that it can be <emphasis>very</emphasis> confusing + in share-level security as to which UNIX username will eventually + be used in granting access.</para> + + <para>See also the section <link linkend="VALIDATIONSECT"> + NOTE ABOUT USERNAME/PASSWORD VALIDATION</link>.</para> + + <para><anchor id="SECURITYEQUALSUSER"/><emphasis>SECURITY = USER</emphasis></para> + + <para>This is the default security setting in Samba 3.0. + With user-level security a client must first "log-on" with a + valid username and password (which can be mapped using the <smbconfoption name="username map"/> + parameter). Encrypted passwords (see the <smbconfoption name="encrypted passwords"/> parameter) can also + be used in this security mode. Parameters such as <smbconfoption name="user"/> and <smbconfoption + name="guest only"/> if set are then applied and + may change the UNIX user to use on this connection, but only after + the user has been successfully authenticated.</para> + + <para><emphasis>Note</emphasis> that the name of the resource being + requested is <emphasis>not</emphasis> sent to the server until after + the server has successfully authenticated the client. This is why + guest shares don't work in user level security without allowing + the server to automatically map unknown users into the <smbconfoption name="guest account"/>. + See the <smbconfoption name="map to guest"/> parameter for details on doing this.</para> + + <para>See also the section <link linkend="VALIDATIONSECT">NOTE ABOUT USERNAME/PASSWORD VALIDATION</link>.</para> + + <para><anchor id="SECURITYEQUALSDOMAIN"/><emphasis>SECURITY = DOMAIN</emphasis></para> + + <para>This mode will only work correctly if <citerefentry><refentrytitle>net</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> has been used to add this + machine into a Windows NT Domain. It expects the <smbconfoption name="encrypted passwords"/> + parameter to be set to <constant>yes</constant>. In this + mode Samba will try to validate the username/password by passing + it to a Windows NT Primary or Backup Domain Controller, in exactly + the same way that a Windows NT Server would do.</para> + + <para><emphasis>Note</emphasis> that a valid UNIX user must still + exist as well as the account on the Domain Controller to allow + Samba to have a valid UNIX account to map file access to.</para> + + <para><emphasis>Note</emphasis> that from the client's point + of view <command moreinfo="none">security = domain</command> is the same + as <command moreinfo="none">security = user</command>. It only + affects how the server deals with the authentication, + it does not in any way affect what the client sees.</para> + + <para><emphasis>Note</emphasis> that the name of the resource being + requested is <emphasis>not</emphasis> sent to the server until after + the server has successfully authenticated the client. This is why + guest shares don't work in user level security without allowing + the server to automatically map unknown users into the <smbconfoption name="guest account"/>. + See the <smbconfoption name="map to guest"/> parameter for details on doing this.</para> + + <para>See also the section <link linkend="VALIDATIONSECT"> + NOTE ABOUT USERNAME/PASSWORD VALIDATION</link>.</para> + + <para>See also the <smbconfoption name="password server"/> parameter and + the <smbconfoption name="encrypted passwords"/> parameter.</para> + + <para><anchor id="SECURITYEQUALSSERVER"/><emphasis>SECURITY = SERVER</emphasis></para> + + <para> + In this mode Samba will try to validate the username/password by passing it to another SMB server, such as an + NT box. If this fails it will revert to <command moreinfo="none">security = user</command>. It expects the + <smbconfoption name="encrypted passwords"/> parameter to be set to <constant>yes</constant>, unless the remote + server does not support them. However note that if encrypted passwords have been negotiated then Samba cannot + revert back to checking the UNIX password file, it must have a valid <filename + moreinfo="none">smbpasswd</filename> file to check users against. See the chapter about the User Database in + the Samba HOWTO Collection for details on how to set this up. +</para> + + <note><para>This mode of operation has + significant pitfalls since it is more vulnerable to + man-in-the-middle attacks and server impersonation. In particular, + this mode of operation can cause significant resource consuption on + the PDC, as it must maintain an active connection for the duration + of the user's session. Furthermore, if this connection is lost, + there is no way to reestablish it, and futher authentications to the + Samba server may fail (from a single client, till it disconnects). + </para></note> + + <note><para>From the client's point of + view <command moreinfo="none">security = server</command> is the + same as <command moreinfo="none">security = user</command>. It + only affects how the server deals with the authentication, it does + not in any way affect what the client sees.</para></note> + + <para><emphasis>Note</emphasis> that the name of the resource being + requested is <emphasis>not</emphasis> sent to the server until after + the server has successfully authenticated the client. This is why + guest shares don't work in user level security without allowing + the server to automatically map unknown users into the <smbconfoption name="guest account"/>. + See the <smbconfoption name="map to guest"/> parameter for details on doing this.</para> + + <para>See also the section <link linkend="VALIDATIONSECT"> + NOTE ABOUT USERNAME/PASSWORD VALIDATION</link>.</para> + + <para>See also the <smbconfoption name="password server"/> parameter and the + <smbconfoption name="encrypted passwords"/> parameter.</para> + + <para><anchor id="SECURITYEQUALSADS"/><emphasis>SECURITY = ADS</emphasis></para> + + <para>In this mode, Samba will act as a domain member in an ADS realm. To operate + in this mode, the machine running Samba will need to have Kerberos installed + and configured and Samba will need to be joined to the ADS realm using the + net utility. </para> + + <para>Note that this mode does NOT make Samba operate as a Active Directory Domain + Controller. </para> + + <para>Read the chapter about Domain Membership in the HOWTO for details.</para> +</description> + +<related>realm</related> +<related>encrypt passwords</related> + +<value type="default">USER</value> +<value type="example">DOMAIN</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/securitymask.xml b/docs-xml/smbdotconf/security/securitymask.xml new file mode 100644 index 0000000000..23bc2808db --- /dev/null +++ b/docs-xml/smbdotconf/security/securitymask.xml @@ -0,0 +1,39 @@ +<samba:parameter name="security mask" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter controls what UNIX permission bits will be set when a Windows NT client is manipulating the + UNIX permission on a file using the native NT security dialog box. + </para> + + <para> + This parameter is applied as a mask (AND'ed with) to the incoming permission bits, thus resetting + any bits not in this mask. Make sure not to mix up this parameter with <smbconfoption name="force + security mode"/>, which works in a manner similar to this one but uses a logical OR instead of an AND. + </para> + + <para> + Essentially, all bits set to zero in this mask will result in setting to zero the corresponding bits on the + file permissions regardless of the previous status of this bits on the file. + </para> + + <para> + If not set explicitly this parameter is 0777, allowing a user to set all the user/group/world permissions on a file. + </para> + + <para><emphasis> + Note</emphasis> that users who can access the Samba server through other means can easily bypass this + restriction, so it is primarily useful for standalone "appliance" systems. Administrators of + most normal systems will probably want to leave it set to <constant>0777</constant>. + </para> +</description> + +<related>force directory security mode</related> +<related>directory security mask</related> +<related>force security mode</related> + +<value type="default">0777</value> +<value type="example">0770</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/serverschannel.xml b/docs-xml/smbdotconf/security/serverschannel.xml new file mode 100644 index 0000000000..6317448fb6 --- /dev/null +++ b/docs-xml/smbdotconf/security/serverschannel.xml @@ -0,0 +1,23 @@ +<samba:parameter name="server schannel" + context="G" + type="boolean-auto" + basic="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This controls whether the server offers or even demands the use of the netlogon schannel. + <smbconfoption name="server schannel">no</smbconfoption> does not offer the schannel, <smbconfoption + name="server schannel">auto</smbconfoption> offers the schannel but does not enforce it, and <smbconfoption + name="server schannel">yes</smbconfoption> denies access if the client is not able to speak netlogon schannel. + This is only the case for Windows NT4 before SP4. + </para> + + <para> + Please note that with this set to <literal>no</literal> you will have to apply the WindowsXP + <filename>WinXP_SignOrSeal.reg</filename> registry patch found in the docs/registry subdirectory of the Samba distribution tarball. + </para> +</description> + +<value type="default">auto</value> +<value type="example">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/serversigning.xml b/docs-xml/smbdotconf/security/serversigning.xml new file mode 100644 index 0000000000..f2f5629586 --- /dev/null +++ b/docs-xml/smbdotconf/security/serversigning.xml @@ -0,0 +1,20 @@ +<samba:parameter name="server signing" + context="G" + type="enum" + basic="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para>This controls whether the server offers or requires + the client it talks to to use SMB signing. Possible values + are <emphasis>auto</emphasis>, <emphasis>mandatory</emphasis> + and <emphasis>disabled</emphasis>. + </para> + + <para>When set to auto, SMB signing is offered, but not enforced. + When set to mandatory, SMB signing is required and if set + to disabled, SMB signing is not offered either.</para> +</description> + +<value type="default">Disabled</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/smbencrypt.xml b/docs-xml/smbdotconf/security/smbencrypt.xml new file mode 100644 index 0000000000..eb91ce51fa --- /dev/null +++ b/docs-xml/smbdotconf/security/smbencrypt.xml @@ -0,0 +1,45 @@ +<samba:parameter name="smb encrypt" + context="S" + type="enum" + basic="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para>This is a new feature introduced with Samba 3.2 and above. It is an + extension to the SMB/CIFS protocol negotiated as part of the UNIX extensions. + SMB encryption uses the GSSAPI (SSPI on Windows) ability to encrypt + and sign every request/response in a SMB protocol stream. When + enabled it provides a secure method of SMB/CIFS communication, + similar to an ssh protected session, but using SMB/CIFS authentication + to negotiate encryption and signing keys. Currently this is only + supported by Samba 3.2 smbclient, and hopefully soon Linux CIFSFS + and MacOS/X clients. Windows clients do not support this feature. + </para> + + <para>This controls whether the server offers or requires + the client it talks to to use SMB encryption. Possible values + are <emphasis>auto</emphasis>, <emphasis>mandatory</emphasis> + and <emphasis>disabled</emphasis>. This may be set on a per-share + basis, but clients may chose to encrypt the entire session, not + just traffic to a specific share. If this is set to mandatory + then all traffic to a share <emphasis>must</emphasis> must + be encrypted once the connection has been made to the share. + The server would return "access denied" to all non-encrypted + requests on such a share. Selecting encrypted traffic reduces + throughput as smaller packet sizes must be used (no huge UNIX + style read/writes allowed) as well as the overhead of encrypting + and signing all the data. + </para> + + <para>If SMB encryption is selected, Windows style SMB signing (see + the <smbconfoption name="server signing"/> option) is no longer necessary, + as the GSSAPI flags use select both signing and sealing of the data. + </para> + + <para>When set to auto, SMB encryption is offered, but not enforced. + When set to mandatory, SMB encryption is required and if set + to disabled, SMB encryption can not be negotiated.</para> +</description> + +<value type="default">auto</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/smbpasswdfile.xml b/docs-xml/smbdotconf/security/smbpasswdfile.xml new file mode 100644 index 0000000000..209fa74422 --- /dev/null +++ b/docs-xml/smbdotconf/security/smbpasswdfile.xml @@ -0,0 +1,19 @@ +<samba:parameter name="smb passwd file" + type="string" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option sets the path to the encrypted smbpasswd file. By + default the path to the smbpasswd file is compiled into Samba.</para> + + <para> + An example of use is: +<programlisting> +smb passwd file = /etc/samba/smbpasswd +</programlisting> + </para> +</description> + +<value type="default">${prefix}/private/smbpasswd</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/unixpasswordsync.xml b/docs-xml/smbdotconf/security/unixpasswordsync.xml new file mode 100644 index 0000000000..7f30c47d90 --- /dev/null +++ b/docs-xml/smbdotconf/security/unixpasswordsync.xml @@ -0,0 +1,21 @@ +<samba:parameter name="unix password sync" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This boolean parameter controls whether Samba + attempts to synchronize the UNIX password with the SMB password + when the encrypted SMB password in the smbpasswd file is changed. + If this is set to <constant>yes</constant> the program specified in the <parameter moreinfo="none">passwd + program</parameter>parameter is called <emphasis>AS ROOT</emphasis> - + to allow the new UNIX password to be set without access to the + old UNIX password (as the SMB password change code has no + access to the old password cleartext, only the new).</para> +</description> + +<related>passwd program</related> +<related>passwd chat</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/updateencrypted.xml b/docs-xml/smbdotconf/security/updateencrypted.xml new file mode 100644 index 0000000000..da493665cf --- /dev/null +++ b/docs-xml/smbdotconf/security/updateencrypted.xml @@ -0,0 +1,34 @@ +<samba:parameter name="update encrypted" + context="G" + type="boolean" + basic="1" advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + This boolean parameter allows a user logging on with a plaintext password to have their encrypted (hashed) + password in the smbpasswd file to be updated automatically as they log on. This option allows a site to + migrate from plaintext password authentication (users authenticate with plaintext password over the + wire, and are checked against a UNIX account atabase) to encrypted password authentication (the SMB + challenge/response authentication mechanism) without forcing all users to re-enter their passwords via + smbpasswd at the time the change is made. This is a convenience option to allow the change over to encrypted + passwords to be made over a longer period. Once all users have encrypted representations of their passwords + in the smbpasswd file this parameter should be set to <constant>no</constant>. + </para> + + <para> + In order for this parameter to be operative the <smbconfoption name="encrypt passwords"/> parameter must + be set to <constant>no</constant>. The default value of <smbconfoption name="encrypt + passwords">Yes</smbconfoption>. Note: This must be set to <constant>no</constant> for this <smbconfoption + name="update encrypted"/> to work. + </para> + + <para> + Note that even when this parameter is set a user authenticating to <command moreinfo="none">smbd</command> + must still enter a valid password in order to connect correctly, and to update their hashed (smbpasswd) + passwords. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/usekerberoskeytab.xml b/docs-xml/smbdotconf/security/usekerberoskeytab.xml new file mode 100644 index 0000000000..ad6cc88278 --- /dev/null +++ b/docs-xml/smbdotconf/security/usekerberoskeytab.xml @@ -0,0 +1,23 @@ +<samba:parameter name="use kerberos keytab" + context="G" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + Specifies whether Samba should attempt to maintain service principals in the systems + keytab file for <constant>host/FQDN</constant> and <constant>cifs/FQDN</constant>. + </para> + + <para> + When you are using the heimdal Kerberos libraries, you must also specify the following in + <filename>/etc/krb5.conf</filename>: +<programlisting> +[libdefaults] +default_keytab_name = FILE:/etc/krb5.keytab +</programlisting> + </para> + +</description> + +<value type="default">False</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/username.xml b/docs-xml/smbdotconf/security/username.xml new file mode 100644 index 0000000000..3a45d4d72f --- /dev/null +++ b/docs-xml/smbdotconf/security/username.xml @@ -0,0 +1,65 @@ +<samba:parameter name="username" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>user</synonym> +<synonym>users</synonym> +<description> + <para>Multiple users may be specified in a comma-delimited + list, in which case the supplied password will be tested against + each username in turn (left to right).</para> + + <para>The <parameter moreinfo="none">username</parameter> line is needed only when + the PC is unable to supply its own username. This is the case + for the COREPLUS protocol or where your users have different WfWg + usernames to UNIX usernames. In both these cases you may also be + better using the \\server\share%user syntax instead.</para> + + <para>The <parameter moreinfo="none">username</parameter> line is not a great + solution in many cases as it means Samba will try to validate + the supplied password against each of the usernames in the + <parameter moreinfo="none">username</parameter> line in turn. This is slow and + a bad idea for lots of users in case of duplicate passwords. + You may get timeouts or security breaches using this parameter + unwisely.</para> + + <para>Samba relies on the underlying UNIX security. This + parameter does not restrict who can login, it just offers hints + to the Samba server as to what usernames might correspond to the + supplied password. Users can login as whoever they please and + they will be able to do no more damage than if they started a + telnet session. The daemon runs as the user that they log in as, + so they cannot do anything that user cannot do.</para> + + <para>To restrict a service to a particular set of users you + can use the <smbconfoption name="valid users"/> parameter.</para> + + <para>If any of the usernames begin with a '@' then the name + will be looked up first in the NIS netgroups list (if Samba + is compiled with netgroup support), followed by a lookup in + the UNIX groups database and will expand to a list of all users + in the group of that name.</para> + + <para>If any of the usernames begin with a '+' then the name + will be looked up only in the UNIX groups database and will + expand to a list of all users in the group of that name.</para> + + <para>If any of the usernames begin with a '&' then the name + will be looked up only in the NIS netgroups database (if Samba + is compiled with netgroup support) and will expand to a list + of all users in the netgroup group of that name.</para> + + <para>Note that searching though a groups database can take + quite some time, and some clients may time out during the + search.</para> + + <para>See the section <link linkend="VALIDATIONSECT">NOTE ABOUT + USERNAME/PASSWORD VALIDATION</link> for more information on how + this parameter determines access to the services.</para> +</description> + +<value type="default"><comment>The guest account if a guest service, + else <empty string>.</comment></value> + +<value type="example">fred, mary, jack, jane, @users, @pcgroup</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/usernamelevel.xml b/docs-xml/smbdotconf/security/usernamelevel.xml new file mode 100644 index 0000000000..adb00134d7 --- /dev/null +++ b/docs-xml/smbdotconf/security/usernamelevel.xml @@ -0,0 +1,27 @@ +<samba:parameter name="username level" + context="G" + advanced="1" developer="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option helps Samba to try and 'guess' at + the real UNIX username, as many DOS clients send an all-uppercase + username. By default Samba tries all lowercase, followed by the + username with the first letter capitalized, and fails if the + username is not found on the UNIX machine.</para> + + <para>If this parameter is set to non-zero the behavior changes. + This parameter is a number that specifies the number of uppercase + combinations to try while trying to determine the UNIX user name. The + higher the number the more combinations will be tried, but the slower + the discovery of usernames will be. Use this parameter when you have + strange usernames on your UNIX machine, such as <constant>AstrangeUser + </constant>.</para> + + <para>This parameter is needed only on UNIX systems that have case + sensitive usernames.</para> +</description> + +<value type="default">0</value> +<value type="example">5</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/usernamemap.xml b/docs-xml/smbdotconf/security/usernamemap.xml new file mode 100644 index 0000000000..54179690be --- /dev/null +++ b/docs-xml/smbdotconf/security/usernamemap.xml @@ -0,0 +1,130 @@ +<samba:parameter name="username map" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This option allows you to specify a file containing a mapping of usernames from the clients to the server. + This can be used for several purposes. The most common is to map usernames that users use on DOS or Windows + machines to those that the UNIX box uses. The other is to map multiple users to a single username so that they + can more easily share files. + </para> + + <para> + Please note that for user or share mode security, the username map is applied prior to validating the user + credentials. Domain member servers (domain or ads) apply the username map after the user has been + successfully authenticated by the domain controller and require fully qualified enties in the map table (e.g. + biddle = <literal>DOMAIN\foo</literal>). + </para> + + <para> + The map file is parsed line by line. Each line should contain a single UNIX username on the left then a '=' + followed by a list of usernames on the right. The list of usernames on the right may contain names of the form + @group in which case they will match any UNIX username in that group. The special client name '*' is a + wildcard and matches any name. Each line of the map file may be up to 1023 characters long. + </para> + + <para> + The file is processed on each line by taking the supplied username and comparing it with each username on the + right hand side of the '=' signs. If the supplied name matches any of the names on the right hand side then it + is replaced with the name on the left. Processing then continues with the next line. + </para> + + <para> + If any line begins with a '#' or a ';' then it is ignored. + </para> + + <para> + If any line begins with an '!' then the processing will stop after that line if a mapping was done by the + line. Otherwise mapping continues with every line being processed. Using '!' is most useful when you have a + wildcard mapping line later in the file. + </para> + + <para> + For example to map from the name <constant>admin</constant> or <constant>administrator</constant> to the UNIX + name <constant> root</constant> you would use: +<programlisting> +<command moreinfo="none">root = admin administrator</command> +</programlisting> + Or to map anyone in the UNIX group <constant>system</constant> to the UNIX name <constant>sys</constant> you would use: +<programlisting> +<command moreinfo="none">sys = @system</command> +</programlisting> + </para> + + <para> + You can have as many mappings as you like in a username map file. + </para> + + + <para> + If your system supports the NIS NETGROUP option then the netgroup database is checked before the <filename + moreinfo="none">/etc/group </filename> database for matching groups. + </para> + + <para> + You can map Windows usernames that have spaces in them by using double quotes around the name. For example: +<programlisting> +<command moreinfo="none">tridge = "Andrew Tridgell"</command> +</programlisting> + would map the windows username "Andrew Tridgell" to the unix username "tridge". + </para> + + <para> + The following example would map mary and fred to the unix user sys, and map the rest to guest. Note the use of the + '!' to tell Samba to stop processing if it gets a match on that line: +<programlisting format="linespecific"> +!sys = mary fred +guest = * +</programlisting> + </para> + + <para> + Note that the remapping is applied to all occurrences of usernames. Thus if you connect to \\server\fred and + <constant>fred</constant> is remapped to <constant>mary</constant> then you will actually be connecting to + \\server\mary and will need to supply a password suitable for <constant>mary</constant> not + <constant>fred</constant>. The only exception to this is the username passed to the <smbconfoption + name="password server"/> (if you have one). The password server will receive whatever username the client + supplies without modification. + </para> + + <para> + Also note that no reverse mapping is done. The main effect this has is with printing. Users who have been + mapped may have trouble deleting print jobs as PrintManager under WfWg will think they don't own the print + job. + </para> + + <para> + Samba versions prior to 3.0.8 would only support reading the fully qualified username + (e.g.: <literal>DOMAIN\user</literal>) from + the username map when performing a kerberos login from a client. However, when looking up a map entry for a + user authenticated by NTLM[SSP], only the login name would be used for matches. This resulted in inconsistent + behavior sometimes even on the same server. + </para> + + <para> + The following functionality is obeyed in version 3.0.8 and later: + </para> + + <para> + When performing local authentication, the username map is applied to the login name before attempting to authenticate + the connection. + </para> + + <para> + When relying upon a external domain controller for validating authentication requests, smbd will apply the username map + to the fully qualified username (i.e. <literal>DOMAIN\user</literal>) only after the user has been successfully authenticated. + </para> + + <para> + An example of use is: +<programlisting> +username map = /usr/local/samba/lib/users.map +</programlisting> + </para> + +</description> + +<value type="default"><comment>no username map</comment></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/usernamemapscript.xml b/docs-xml/smbdotconf/security/usernamemapscript.xml new file mode 100644 index 0000000000..6df134c257 --- /dev/null +++ b/docs-xml/smbdotconf/security/usernamemapscript.xml @@ -0,0 +1,19 @@ +<samba:parameter name="username map script" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This script is a mutually exclusive alternative to the + <smbconfoption name="username map"/> parameter. This parameter + specifies and external program or script that must accept a single + command line option (the username transmitted in the authentication + request) and return a line line on standard output (the name to which + the account should mapped). In this way, it is possible to store + username map tables in an LDAP or NIS directory services. + </para> +</description> + +<value type="default"/> +<value type="example">/etc/samba/scripts/mapusers.sh</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/validusers.xml b/docs-xml/smbdotconf/security/validusers.xml new file mode 100644 index 0000000000..313739d7c1 --- /dev/null +++ b/docs-xml/smbdotconf/security/validusers.xml @@ -0,0 +1,28 @@ +<samba:parameter name="valid users" + context="S" + type="list" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is a list of users that should be allowed to login to this service. Names starting with + '@', '+' and '&' are interpreted using the same rules as described in the + <parameter moreinfo="none">invalid users</parameter> parameter. + </para> + + <para> + If this is empty (the default) then any user can login. If a username is in both this list + and the <parameter moreinfo="none">invalid users</parameter> list then access is denied + for that user. + </para> + + <para> + The current servicename is substituted for <parameter moreinfo="none">%S</parameter>. + This is useful in the [homes] section. + </para> +</description> + +<related>invalid users</related> + +<value type="default"><comment>No valid users list (anyone can login) </comment></value> +<value type="example">greg, @pcusers</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/writeable.xml b/docs-xml/smbdotconf/security/writeable.xml new file mode 100644 index 0000000000..f811c47e5c --- /dev/null +++ b/docs-xml/smbdotconf/security/writeable.xml @@ -0,0 +1,9 @@ +<samba:parameter name="writeable" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>writable</synonym> +<description> + <para>Inverted synonym for <smbconfoption name="read only"/>.</para> +</description> +</samba:parameter> diff --git a/docs-xml/smbdotconf/security/writelist.xml b/docs-xml/smbdotconf/security/writelist.xml new file mode 100644 index 0000000000..60db3f19f0 --- /dev/null +++ b/docs-xml/smbdotconf/security/writelist.xml @@ -0,0 +1,29 @@ +<samba:parameter name="write list" + context="S" + type="list" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This is a list of users that are given read-write access to a service. If the + connecting user is in this list then they will be given write access, no matter + what the <smbconfoption name="read only"/> option is set to. The list can + include group names using the @group syntax. + </para> + + <para> + Note that if a user is in both the read list and the write list then they will be + given write access. + </para> + + <para> + By design, this parameter will not work with the + <smbconfoption name="security">share</smbconfoption> in Samba 3.0. + </para> + +</description> + +<related>read list</related> + +<value type="default"></value> +<value type="example">admin, root, @staff</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/aioreadsize.xml b/docs-xml/smbdotconf/tuning/aioreadsize.xml new file mode 100644 index 0000000000..082cf5ddfd --- /dev/null +++ b/docs-xml/smbdotconf/tuning/aioreadsize.xml @@ -0,0 +1,22 @@ +<samba:parameter name="aio read size" + context="S" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>If Samba has been built with asynchronous I/O support and this + integer parameter is set to non-zero value, + Samba will read from file asynchronously when size of request is bigger + than this value. Note that it happens only for non-chained and non-chaining + reads and when not using write cache.</para> + + <para>Current implementation of asynchronous I/O in Samba 3.0 does support + only up to 10 outstanding asynchronous requests, read and write combined.</para> + + <related>write cache size</related> + <related>aio write size</related> +</description> + +<value type="default">0</value> +<value type="example">16384<comment> Use asynchronous I/O for reads bigger than 16KB + request size</comment></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/aiowritesize.xml b/docs-xml/smbdotconf/tuning/aiowritesize.xml new file mode 100644 index 0000000000..e33a60e98e --- /dev/null +++ b/docs-xml/smbdotconf/tuning/aiowritesize.xml @@ -0,0 +1,22 @@ +<samba:parameter name="aio write size" + context="S" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>If Samba has been built with asynchronous I/O support and this + integer parameter is set to non-zero value, + Samba will write to file asynchronously when size of request is bigger + than this value. Note that it happens only for non-chained and non-chaining + reads and when not using write cache.</para> + + <para>Current implementation of asynchronous I/O in Samba 3.0 does support + only up to 10 outstanding asynchronous requests, read and write combined.</para> + + <related>write cache size</related> + <related>aio read size</related> +</description> + +<value type="default">0</value> +<value type="example">16384<comment> Use asynchronous I/O for writes bigger than 16KB + request size</comment></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/allocationroundupsize.xml b/docs-xml/smbdotconf/tuning/allocationroundupsize.xml new file mode 100644 index 0000000000..5fc013b5a0 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/allocationroundupsize.xml @@ -0,0 +1,20 @@ +<samba:parameter name="allocation roundup size" + context="S" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter allows an administrator to tune the + allocation size reported to Windows clients. The default + size of 1Mb generally results in improved Windows client + performance. However, rounding the allocation size may cause + difficulties for some applications, e.g. MS Visual Studio. + If the MS Visual Studio compiler starts to crash with an + internal error, set this parameter to zero for this share. + </para> + + <para>The integer parameter specifies the roundup size in bytes.</para> +</description> + +<value type="default">1048576</value> +<value type="example">0<comment>(to disable roundups)</comment></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/blocksize.xml b/docs-xml/smbdotconf/tuning/blocksize.xml new file mode 100644 index 0000000000..1a0cc545a3 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/blocksize.xml @@ -0,0 +1,27 @@ +<samba:parameter name="block size" + type="integer" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls the behavior of <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> when reporting disk free + sizes. By default, this reports a disk block size of 1024 bytes. + </para> + + <para>Changing this parameter may have some effect on the + efficiency of client writes, this is not yet confirmed. This + parameter was added to allow advanced administrators to change + it (usually to a higher value) and test the effect it has on + client write performance without re-compiling the code. As this + is an experimental option it may be removed in a future release. + </para> + + <para>Changing this option does not change the disk free reporting + size, just the block size unit reported to the client. + </para> +</description> + +<value type="default">1024</value> +<value type="example">4096</value> + +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/deadtime.xml b/docs-xml/smbdotconf/tuning/deadtime.xml new file mode 100644 index 0000000000..51b76bd85a --- /dev/null +++ b/docs-xml/smbdotconf/tuning/deadtime.xml @@ -0,0 +1,28 @@ +<samba:parameter name="deadtime" + context="G" + developer="1" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The value of the parameter (a decimal integer) + represents the number of minutes of inactivity before a connection + is considered dead, and it is disconnected. The deadtime only takes + effect if the number of open files is zero.</para> + + <para>This is useful to stop a server's resources being + exhausted by a large number of inactive connections.</para> + + <para>Most clients have an auto-reconnect feature when a + connection is broken so in most cases this parameter should be + transparent to users.</para> + + <para>Using this parameter with a timeout of a few minutes + is recommended for most systems.</para> + + <para>A deadtime of zero indicates that no auto-disconnection + should be performed.</para> +</description> + +<value type="default">0</value> +<value type="example">15</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/getwdcache.xml b/docs-xml/smbdotconf/tuning/getwdcache.xml new file mode 100644 index 0000000000..74d30c28e5 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/getwdcache.xml @@ -0,0 +1,13 @@ +<samba:parameter name="getwd cache" + context="G" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a tuning option. When this is enabled a + caching algorithm will be used to reduce the time taken for getwd() + calls. This can have a significant impact on performance, especially + when the <smbconfoption name="wide smbconfoptions"/> parameter is set to <constant>no</constant>.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/hostnamelookups.xml b/docs-xml/smbdotconf/tuning/hostnamelookups.xml new file mode 100644 index 0000000000..68f4ec4f40 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/hostnamelookups.xml @@ -0,0 +1,16 @@ +<samba:parameter name="hostname lookups" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Specifies whether samba should use (expensive) + hostname lookups or use the ip addresses instead. An example place + where hostname lookups are currently used is when checking + the <command moreinfo="none">hosts deny</command> and <command moreinfo="none">hosts allow</command>. + </para> +</description> + +<value type="default">no</value> +<value type="example">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/keepalive.xml b/docs-xml/smbdotconf/tuning/keepalive.xml new file mode 100644 index 0000000000..0586365512 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/keepalive.xml @@ -0,0 +1,20 @@ +<samba:parameter name="keepalive" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The value of the parameter (an integer) represents + the number of seconds between <parameter moreinfo="none">keepalive</parameter> + packets. If this parameter is zero, no keepalive packets will be + sent. Keepalive packets, if sent, allow the server to tell whether + a client is still present and responding.</para> + + <para>Keepalives should, in general, not be needed if the socket + has the SO_KEEPALIVE attribute set on it by default. (see <smbconfoption name="socket options"/>). +Basically you should only use this option if you strike difficulties.</para> +</description> + +<value type="default">300</value> +<value type="example">600</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/maxconnections.xml b/docs-xml/smbdotconf/tuning/maxconnections.xml new file mode 100644 index 0000000000..1e3043b2f7 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/maxconnections.xml @@ -0,0 +1,17 @@ +<samba:parameter name="max connections" + context="S" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option allows the number of simultaneous connections to a service to be limited. + If <parameter moreinfo="none">max connections</parameter> is greater than 0 then connections + will be refused if this number of connections to the service are already open. A value + of zero mean an unlimited number of connections may be made.</para> + + <para>Record lock files are used to implement this feature. The lock files will be stored in + the directory specified by the <smbconfoption name="lock directory"/> option.</para> +</description> + +<value type="default">0</value> +<value type="example">10</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/maxdisksize.xml b/docs-xml/smbdotconf/tuning/maxdisksize.xml new file mode 100644 index 0000000000..ee53105a8a --- /dev/null +++ b/docs-xml/smbdotconf/tuning/maxdisksize.xml @@ -0,0 +1,28 @@ +<samba:parameter name="max disk size" + context="G" + type="integer" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option allows you to put an upper limit + on the apparent size of disks. If you set this option to 100 + then all shares will appear to be not larger than 100 MB in + size.</para> + + <para>Note that this option does not limit the amount of + data you can put on the disk. In the above case you could still + store much more than 100 MB on the disk, but if a client ever asks + for the amount of free disk space or the total disk size then the + result will be bounded by the amount specified in <parameter moreinfo="none">max + disk size</parameter>.</para> + + <para>This option is primarily useful to work around bugs + in some pieces of software that can't handle very large disks, + particularly disks over 1GB in size.</para> + + <para>A <parameter moreinfo="none">max disk size</parameter> of 0 means no limit.</para> +</description> + +<value type="default">0</value> +<value type="example">1000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/maxopenfiles.xml b/docs-xml/smbdotconf/tuning/maxopenfiles.xml new file mode 100644 index 0000000000..ea0a33980a --- /dev/null +++ b/docs-xml/smbdotconf/tuning/maxopenfiles.xml @@ -0,0 +1,20 @@ +<samba:parameter name="max open files" + type="integer" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter limits the maximum number of + open files that one <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> file + serving process may have open for a client at any one time. The + default for this parameter is set very high (10,000) as Samba uses + only one bit per unopened file.</para> + + <para>The limit of the number of open files is usually set + by the UNIX per-process file descriptor limit rather than + this parameter so you should never need to touch this parameter.</para> +</description> + +<value type="default">10000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/maxsmbdprocesses.xml b/docs-xml/smbdotconf/tuning/maxsmbdprocesses.xml new file mode 100644 index 0000000000..677d731aa9 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/maxsmbdprocesses.xml @@ -0,0 +1,18 @@ +<samba:parameter name="max smbd processes" + type="integer" + context="G" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter limits the maximum number of <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> processes concurrently running on a system and is intended + as a stopgap to prevent degrading service to clients in the event that the server has insufficient + resources to handle more than this number of connections. Remember that under normal operating + conditions, each user will have an <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> associated with him or her to handle connections to all + shares from a given host.</para> +</description> + +<value type="default">0</value> +<value type="example">1000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/minprintspace.xml b/docs-xml/smbdotconf/tuning/minprintspace.xml new file mode 100644 index 0000000000..706e4a70cf --- /dev/null +++ b/docs-xml/smbdotconf/tuning/minprintspace.xml @@ -0,0 +1,16 @@ +<samba:parameter name="min print space" + context="S" + type="integer" + print="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This sets the minimum amount of free disk + space that must be available before a user will be able to spool + a print job. It is specified in kilobytes. The default is 0, which + means a user can always spool a print job.</para> +</description> + +<related>printing</related> +<value type="default">0</value> +<value type="example">2000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/namecachetimeout.xml b/docs-xml/smbdotconf/tuning/namecachetimeout.xml new file mode 100644 index 0000000000..32ad55f1d0 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/namecachetimeout.xml @@ -0,0 +1,15 @@ +<samba:parameter name="name cache timeout" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Specifies the number of seconds it takes before + entries in samba's hostname resolve cache time out. If + the timeout is set to 0. the caching is disabled. +</para> +</description> + +<value type="default">660</value> +<value type="example">0</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/paranoidserversecurity.xml b/docs-xml/smbdotconf/tuning/paranoidserversecurity.xml new file mode 100644 index 0000000000..e5c2fe0ad1 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/paranoidserversecurity.xml @@ -0,0 +1,19 @@ +<samba:parameter name="paranoid server security" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Some version of NT 4.x allow non-guest + users with a bad passowrd. When this option is enabled, samba will not + use a broken NT 4.x server as password server, but instead complain + to the logs and exit. + </para> + + <para>Disabling this option prevents Samba from making + this check, which involves deliberatly attempting a + bad logon to the remote server.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/socketoptions.xml b/docs-xml/smbdotconf/tuning/socketoptions.xml new file mode 100644 index 0000000000..7a5c221939 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/socketoptions.xml @@ -0,0 +1,75 @@ +<samba:parameter name="socket options" + context="G" + type="list" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option allows you to set socket options + to be used when talking with the client.</para> + + <para>Socket options are controls on the networking layer + of the operating systems which allow the connection to be + tuned.</para> + + <para>This option will typically be used to tune your Samba server + for optimal performance for your local network. There is no way + that Samba can know what the optimal parameters are for your net, + so you must experiment and choose them yourself. We strongly + suggest you read the appropriate documentation for your operating + system first (perhaps <command moreinfo="none">man + setsockopt</command> will help).</para> + + <para>You may find that on some systems Samba will say + "Unknown socket option" when you supply an option. This means you + either incorrectly typed it or you need to add an include file + to includes.h for your OS. If the latter is the case please + send the patch to <ulink url="mailto:samba-technical@samba.org"> + samba-technical@samba.org</ulink>.</para> + + <para>Any of the supported socket options may be combined + in any way you like, as long as your OS allows it.</para> + + <para>This is the list of socket options currently settable + using this option:</para> + + <itemizedlist> + <listitem><para>SO_KEEPALIVE</para></listitem> + <listitem><para>SO_REUSEADDR</para></listitem> + <listitem><para>SO_BROADCAST</para></listitem> + <listitem><para>TCP_NODELAY</para></listitem> + <listitem><para>IPTOS_LOWDELAY</para></listitem> + <listitem><para>IPTOS_THROUGHPUT</para></listitem> + <listitem><para>SO_SNDBUF *</para></listitem> + <listitem><para>SO_RCVBUF *</para></listitem> + <listitem><para>SO_SNDLOWAT *</para></listitem> + <listitem><para>SO_RCVLOWAT *</para></listitem> + </itemizedlist> + + <para>Those marked with a <emphasis>'*'</emphasis> take an integer + argument. The others can optionally take a 1 or 0 argument to enable + or disable the option, by default they will be enabled if you + don't specify 1 or 0.</para> + + <para>To specify an argument use the syntax SOME_OPTION = VALUE + for example <command moreinfo="none">SO_SNDBUF = 8192</command>. Note that you must + not have any spaces before or after the = sign.</para> + + <para>If you are on a local network then a sensible option + might be:</para> + + <para><command moreinfo="none">socket options = IPTOS_LOWDELAY</command></para> + + <para>If you have a local network then you could try:</para> + + <para><command moreinfo="none">socket options = IPTOS_LOWDELAY TCP_NODELAY</command></para> + + <para>If you are on a wide area network then perhaps try + setting IPTOS_THROUGHPUT. </para> + + <para>Note that several of the options may cause your Samba + server to fail completely. Use these options with caution!</para> +</description> + +<value type="default">TCP_NODELAY</value> +<value type="example">IPTOS_LOWDELAY</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/strictallocate.xml b/docs-xml/smbdotconf/tuning/strictallocate.xml new file mode 100644 index 0000000000..2606f2028b --- /dev/null +++ b/docs-xml/smbdotconf/tuning/strictallocate.xml @@ -0,0 +1,24 @@ +<samba:parameter name="strict allocate" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a boolean that controls the handling of + disk space allocation in the server. When this is set to <constant>yes</constant> + the server will change from UNIX behaviour of not committing real + disk storage blocks when a file is extended to the Windows behaviour + of actually forcing the disk system to allocate real storage blocks + when a file is created or extended to be a given size. In UNIX + terminology this means that Samba will stop creating sparse files. + This can be slow on some systems.</para> + + <para>When strict allocate is <constant>no</constant> the server does sparse + disk block allocation when a file is extended.</para> + + <para>Setting this to <constant>yes</constant> can help Samba return + out of quota messages on systems that are restricting the disk quota + of users.</para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/strictsync.xml b/docs-xml/smbdotconf/tuning/strictsync.xml new file mode 100644 index 0000000000..0d33845513 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/strictsync.xml @@ -0,0 +1,24 @@ +<samba:parameter name="strict sync" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>Many Windows applications (including the Windows 98 explorer + shell) seem to confuse flushing buffer contents to disk with doing + a sync to disk. Under UNIX, a sync call forces the process to be + suspended until the kernel has ensured that all outstanding data in + kernel disk buffers has been safely stored onto stable storage. + This is very slow and should only be done rarely. Setting this + parameter to <constant>no</constant> (the default) means that + <citerefentry><refentrytitle>smbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> ignores the Windows + applications requests for a sync call. There is only a possibility + of losing data if the operating system itself that Samba is running + on crashes, so there is little danger in this default setting. In + addition, this fixes many performance problems that people have + reported with the new Windows98 explorer shell file copies.</para> +</description> + +<related>sync always</related> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/syncalways.xml b/docs-xml/smbdotconf/tuning/syncalways.xml new file mode 100644 index 0000000000..5d8eb2d568 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/syncalways.xml @@ -0,0 +1,21 @@ +<samba:parameter name="sync always" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a boolean parameter that controls + whether writes will always be written to stable storage before + the write call returns. If this is <constant>no</constant> then the server will be + guided by the client's request in each write call (clients can + set a bit indicating that a particular write should be synchronous). + If this is <constant>yes</constant> then every write will be followed by a <command moreinfo="none">fsync() + </command> call to ensure the data is written to disk. Note that + the <parameter moreinfo="none">strict sync</parameter> parameter must be set to + <constant>yes</constant> in order for this parameter to have + any affect.</para> +</description> + +<related>strict sync</related> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/usemmap.xml b/docs-xml/smbdotconf/tuning/usemmap.xml new file mode 100644 index 0000000000..c23fc35840 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/usemmap.xml @@ -0,0 +1,18 @@ +<samba:parameter name="use mmap" + context="G" + type="boolean" + developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This global parameter determines if the tdb internals of Samba can + depend on mmap working correctly on the running system. Samba requires a coherent + mmap/read-write system memory cache. Currently only HPUX does not have such a + coherent cache, and so this parameter is set to <constant>no</constant> by + default on HPUX. On all other systems this parameter should be left alone. This + parameter is provided to help the Samba developers track down problems with + the tdb internal code. + </para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/usesendfile.xml b/docs-xml/smbdotconf/tuning/usesendfile.xml new file mode 100644 index 0000000000..e721531fed --- /dev/null +++ b/docs-xml/smbdotconf/tuning/usesendfile.xml @@ -0,0 +1,17 @@ +<samba:parameter name="use sendfile" + context="S" + type="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>If this parameter is <constant>yes</constant>, and the <constant>sendfile()</constant> + system call is supported by the underlying operating system, then some SMB read calls + (mainly ReadAndX and ReadRaw) will use the more efficient sendfile system call for files that + are exclusively oplocked. This may make more efficient use of the system CPU's + and cause Samba to be faster. Samba automatically turns this off for clients + that use protocol levels lower than NT LM 0.12 and when it detects a client is + Windows 9x (using sendfile from Linux will cause these clients to fail). + </para> +</description> + +<value type="default">false</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/tuning/writecachesize.xml b/docs-xml/smbdotconf/tuning/writecachesize.xml new file mode 100644 index 0000000000..12965b4048 --- /dev/null +++ b/docs-xml/smbdotconf/tuning/writecachesize.xml @@ -0,0 +1,28 @@ +<samba:parameter name="write cache size" + context="S" + type="integer" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>If this integer parameter is set to non-zero value, + Samba will create an in-memory cache for each oplocked file + (it does <emphasis>not</emphasis> do this for + non-oplocked files). All writes that the client does not request + to be flushed directly to disk will be stored in this cache if possible. + The cache is flushed onto disk when a write comes in whose offset + would not fit into the cache or when the file is closed by the client. + Reads for the file are also served from this cache if the data is stored + within it.</para> + + <para>This cache allows Samba to batch client writes into a more + efficient write size for RAID disks (i.e. writes may be tuned to + be the RAID stripe size) and can improve performance on systems + where the disk subsystem is a bottleneck but there is free + memory for userspace programs.</para> + + <para>The integer parameter specifies the size of this cache + (per oplocked file) in bytes.</para> +</description> + +<value type="default">0</value> +<value type="example">262144<comment> for a 256k cache size per file</comment></value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/vfs/aclcompatibility.xml b/docs-xml/smbdotconf/vfs/aclcompatibility.xml new file mode 100644 index 0000000000..7891adc13b --- /dev/null +++ b/docs-xml/smbdotconf/vfs/aclcompatibility.xml @@ -0,0 +1,17 @@ +<samba:parameter name="acl compatibility" + context="S" + type="enum" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies what OS ACL semantics should + be compatible with. Possible values are <emphasis>winnt</emphasis> for Windows NT 4, + <emphasis>win2k</emphasis> for Windows 2000 and above and <emphasis>auto</emphasis>. + If you specify <emphasis>auto</emphasis>, the value for this parameter + will be based upon the version of the client. There should + be no reason to change this parameter from the default.</para> +</description> + +<value type="default">Auto</value> +<value type="example">win2k</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/vfs/getquotacommand.xml b/docs-xml/smbdotconf/vfs/getquotacommand.xml new file mode 100644 index 0000000000..809d1a118f --- /dev/null +++ b/docs-xml/smbdotconf/vfs/getquotacommand.xml @@ -0,0 +1,55 @@ +<samba:parameter name="get quota command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The <command>get quota command</command> should only be used + whenever there is no operating system API available from the OS that + samba can use.</para> + + <para>This option is only available with <command>./configure --with-sys-quotas</command>. + Or on linux when <command>./configure --with-quotas</command> was used and a working quota api + was found in the system.</para> + + <para>This parameter should specify the path to a script that + queries the quota information for the specified + user/group for the partition that + the specified directory is on.</para> + + <para>Such a script should take 3 arguments:</para> + + <itemizedlist> + <listitem><para>directory</para></listitem> + <listitem><para>type of query</para></listitem> + <listitem><para>uid of user or gid of group</para></listitem> + </itemizedlist> + + <para>The type of query can be one of :</para> + + <itemizedlist> + <listitem><para>1 - user quotas</para></listitem> + <listitem><para>2 - user default quotas (uid = -1)</para></listitem> + <listitem><para>3 - group quotas</para></listitem> + <listitem><para>4 - group default quotas (gid = -1)</para></listitem> + </itemizedlist> + + <para>This script should print one line as output with spaces between the arguments. The arguments are: + </para> + + <itemizedlist> + <listitem><para>Arg 1 - quota flags (0 = no quotas, 1 = quotas enabled, 2 = quotas enabled and enforced)</para></listitem> + <listitem><para>Arg 2 - number of currently used blocks</para></listitem> + <listitem><para>Arg 3 - the softlimit number of blocks</para></listitem> + <listitem><para>Arg 4 - the hardlimit number of blocks</para></listitem> + <listitem><para>Arg 5 - currently used number of inodes</para></listitem> + <listitem><para>Arg 6 - the softlimit number of inodes</para></listitem> + <listitem><para>Arg 7 - the hardlimit number of inodes</para></listitem> + <listitem><para>Arg 8(optional) - the number of bytes in a block(default is 1024)</para></listitem> + </itemizedlist> +</description> + +<related>set quote command</related> +<value type="default"></value> +<value type="example">/usr/local/sbin/query_quota</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/vfs/hostmsdfs.xml b/docs-xml/smbdotconf/vfs/hostmsdfs.xml new file mode 100644 index 0000000000..67f67dce45 --- /dev/null +++ b/docs-xml/smbdotconf/vfs/hostmsdfs.xml @@ -0,0 +1,19 @@ +<samba:parameter name="host msdfs" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para> + If set to <constant>yes</constant>, Samba will act as a Dfs server, and allow Dfs-aware clients to browse + Dfs trees hosted on the server. + </para> + + <para> + See also the <smbconfoption name="msdfs root"/> share level parameter. For more information on + setting up a Dfs tree on Samba, refer to the MSFDS chapter in the book Samba3-HOWTO. + </para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/vfs/msdfsproxy.xml b/docs-xml/smbdotconf/vfs/msdfsproxy.xml new file mode 100644 index 0000000000..5117bae224 --- /dev/null +++ b/docs-xml/smbdotconf/vfs/msdfsproxy.xml @@ -0,0 +1,18 @@ +<samba:parameter name="msdfs proxy" + context="S" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter indicates that the share is a + stand-in for another CIFS share whose location is specified by + the value of the parameter. When clients attempt to connect to + this share, they are redirected to the proxied share using + the SMB-Dfs protocol.</para> + + <para>Only Dfs roots can act as proxy shares. Take a look at the + <smbconfoption name="msdfs root"/> and <smbconfoption name="host msdfs"/> + options to find out how to set up a Dfs root share.</para> +</description> + +<value type="example">\otherserver\someshare</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/vfs/msdfsroot.xml b/docs-xml/smbdotconf/vfs/msdfsroot.xml new file mode 100644 index 0000000000..86dc6f1d8c --- /dev/null +++ b/docs-xml/smbdotconf/vfs/msdfsroot.xml @@ -0,0 +1,18 @@ +<samba:parameter name="msdfs root" + context="S" + tye="boolean" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>If set to <constant>yes</constant>, Samba treats the + share as a Dfs root and allows clients to browse the + distributed file system tree rooted at the share directory. + Dfs links are specified in the share directory by symbolic + links of the form <filename>msdfs:serverA\\shareA,serverB\\shareB</filename> + and so on. For more information on setting up a Dfs tree on + Samba, refer to the MSDFS chapter in the Samba3-HOWTO book.</para> +</description> + +<related>host msdfs</related> +<value type="default">no</value> +<para>See also <smbconfoption name="host msdfs"/></para> +</samba:parameter> diff --git a/docs-xml/smbdotconf/vfs/setquotacommand.xml b/docs-xml/smbdotconf/vfs/setquotacommand.xml new file mode 100644 index 0000000000..b00a620628 --- /dev/null +++ b/docs-xml/smbdotconf/vfs/setquotacommand.xml @@ -0,0 +1,44 @@ +<samba:parameter name="set quota command" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>The <command>set quota command</command> should only be used + whenever there is no operating system API available from the OS that + samba can use.</para> + + <para>This option is only available if Samba was configured with the argument <command>--with-sys-quotas</command> or + on linux when <command>./configure --with-quotas</command> was used and a working quota api + was found in the system. Most packages are configured with these options already.</para> + + <para>This parameter should specify the path to a script that + can set quota for the specified arguments.</para> + + <para>The specified script should take the following arguments:</para> + + <itemizedlist> + <listitem><para>1 - quota type + <itemizedlist> + <listitem><para>1 - user quotas</para></listitem> + <listitem><para>2 - user default quotas (uid = -1)</para></listitem> + <listitem><para>3 - group quotas</para></listitem> + <listitem><para>4 - group default quotas (gid = -1)</para></listitem> + </itemizedlist></para></listitem> + <listitem><para>2 - id (uid for user, gid for group, -1 if N/A)</para></listitem> + <listitem><para>3 - quota state (0 = disable, 1 = enable, 2 = enable and enforce)</para></listitem> + <listitem><para>4 - block softlimit</para></listitem> + <listitem><para>5 - block hardlimit</para></listitem> + <listitem><para>6 - inode softlimit</para></listitem> + <listitem><para>7 - inode hardlimit</para></listitem> + <listitem><para>8(optional) - block size, defaults to 1024</para></listitem> + </itemizedlist> + + <para>The script should output at least one line of data on success. And nothing on failure.</para> +</description> + +<related>get quota command</related> + +<value type="default"></value> +<value type="example">/usr/local/sbin/set_quota</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/vfs/vfsobjects.xml b/docs-xml/smbdotconf/vfs/vfsobjects.xml new file mode 100644 index 0000000000..09d41c75b0 --- /dev/null +++ b/docs-xml/smbdotconf/vfs/vfsobjects.xml @@ -0,0 +1,15 @@ +<samba:parameter name="vfs objects" + type="list" + context="S" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>vfs object</synonym> +<description> + <para>This parameter specifies the backend names which + are used for Samba VFS I/O operations. By default, normal + disk I/O operations are used but these can be overloaded + with one or more VFS objects. </para> +</description> + +<value type="default"/> +<value type="example">extd_audit recycle</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapallocbackend.xml b/docs-xml/smbdotconf/winbind/idmapallocbackend.xml new file mode 100644 index 0000000000..60e20b82d5 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapallocbackend.xml @@ -0,0 +1,25 @@ +<samba:parameter name="idmap alloc backend" + context="G" + type="string" + advanced="1" developer="1" hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + The idmap alloc backend provides a plugin interface for Winbind to use + when allocating Unix uids/gids for Windows SIDs. This option is + to be used in conjunction with the <smbconfoption name="idmap domains"/> + parameter and refers to the name of the idmap module which will provide + the id allocation functionality. Please refer to the man page + for each idmap plugin to determine whether or not the module implements + the allocation feature. The most common plugins are the tdb (<citerefentry> + <refentrytitle>idmap_tdb</refentrytitle><manvolnum>8</manvolnum></citerefentry>) + and ldap (<citerefentry><refentrytitle>idmap_ldap</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>) libraries. + </para> + + <para>Also refer to the <smbconfoption name="idmap alloc config"/> option. + </para> +</description> + +<value type="example">tdb</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapallocconfig.xml b/docs-xml/smbdotconf/winbind/idmapallocconfig.xml new file mode 100644 index 0000000000..013904122c --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapallocconfig.xml @@ -0,0 +1,14 @@ +<samba:parameter name="idmap alloc config" + context="G" + type="string" + advanced="1" developer="1" hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + The idmap alloc config prefix provides a means of managing settings + for the backend defined by the <smbconfoption name="idmap alloc backend"/> + parameter. Refer to the man page for each idmap plugin regarding + specific configuration details. + </para> +</description> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapbackend.xml b/docs-xml/smbdotconf/winbind/idmapbackend.xml new file mode 100644 index 0000000000..20e1115c5f --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapbackend.xml @@ -0,0 +1,28 @@ +<samba:parameter name="idmap backend" + context="G" + type="string" + advanced="1" developer="1" hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + The idmap backend provides a plugin interface for Winbind to use + varying backends to store SID/uid/gid mapping tables. This + option is mutually exclusive with the newer and more flexible + <smbconfoption name="idmap domains"/> parameter. The main difference + between the "idmap backend" and the "idmap domains" + is that the former only allows on backend for all domains while the + latter supports configuring backends on a per domain basis. + </para> + + <para>Examples of SID/uid/gid backends include tdb (<citerefentry> + <refentrytitle>idmap_tdb</refentrytitle><manvolnum>8</manvolnum></citerefentry>), + ldap (<citerefentry><refentrytitle>idmap_ldap</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>), rid (<citerefentry> + <refentrytitle>idmap_rid</refentrytitle><manvolnum>8</manvolnum></citerefentry>), + and ad (<citerefentry><refentrytitle>idmap_tdb</refentrytitle> + <manvolnum>8</manvolnum></citerefentry>). + </para> +</description> + +<value type="default">tdb</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapcachetime.xml b/docs-xml/smbdotconf/winbind/idmapcachetime.xml new file mode 100644 index 0000000000..1636cdfa58 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapcachetime.xml @@ -0,0 +1,13 @@ +<samba:parameter name="idmap cache time" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the number of seconds that Winbind's + idmap interface will cache positive SID/uid/gid query results. + </para> +</description> + +<value type="default">900</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapconfig.xml b/docs-xml/smbdotconf/winbind/idmapconfig.xml new file mode 100644 index 0000000000..63b0a907a8 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapconfig.xml @@ -0,0 +1,65 @@ +<samba:parameter name="idmap config" + context="G" + type="string" + advanced="1" developer="1" hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + The idmap config prefix provides a means of managing each domain + defined by the <smbconfoption name="idmap domains"/> option using Samba's + parameteric option support. The idmap config prefix should be + followed by the name of the domain, a colon, and a setting specific to + the chosen backend. There are three options available for all domains: + </para> + <variablelist> + <varlistentry> + <term>backend = backend_name</term> + <listitem><para> + Specifies the name of the idmap plugin to use as the + SID/uid/gid backend for this domain. + </para></listitem> + </varlistentry> + + <varlistentry> + <term>default = [yes|no]</term> + <listitem><para> + The default domain/backend will be used for searching for + users and groups not belonging to one of the explicitly + listed domains (matched by comparing the account SID and the + domain SID). + </para></listitem> + </varlistentry> + + <varlistentry> + <term>readonly = [yes|no]</term> + <listitem><para> + Mark the domain as readonly which means that no attempts to + allocate a uid or gid (by the <smbconfoption name="idmap alloc + backend"/>) for any user or group in that domain + will be attempted. + </para></listitem> + </varlistentry> + </variablelist> + + <para> + The following example illustrates how to configure the <citerefentry> + <refentrytitle>idmap_ad</refentrytitle><manvolnum>8</manvolnum></citerefentry> + for the CORP domain and the <citerefentry><refentrytitle>idmap_tdb</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> backend for all other domains. The + TRUSTEDDOMAINS string is simply a key used to reference the "idmap + config" settings and does not represent the actual name of a domain. + </para> + + <programlisting> + idmap domains = CORP TRUSTEDDOMAINS + + idmap config CORP:backend = ad + idmap config CORP:readonly = yes + + idmap config TRUSTEDDOMAINS:backend = tdb + idmap config TRUSTEDDOMAINS:default = yes + idmap config TRUSTEDDOMAINS:range = 1000 - 9999 + </programlisting> + +</description> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapdomains.xml b/docs-xml/smbdotconf/winbind/idmapdomains.xml new file mode 100644 index 0000000000..131b9e8167 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapdomains.xml @@ -0,0 +1,27 @@ +<samba:parameter name="idmap domains" + context="G" + type="string" + advanced="1" developer="1" hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + The idmap domains option defines a list of Windows domains which will each + have a separately configured backend for managing Winbind's SID/uid/gid + tables. This parameter is mutually exclusive with the older <smbconfoption + name="idmap backend"/> option. + </para> + + <para> + Values consist of the short domain name for Winbind's primary or collection + of trusted domains. You may also use an arbitrary string to represent a catchall + domain backend for any domain not explicitly listed. + </para> + + <para> + Refer to the <smbconfoption name="idmap config"/> for details about + managing the SID/uid/gid backend for each domain. + </para> +</description> + +<value type="example">default AD CORP</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapgid.xml b/docs-xml/smbdotconf/winbind/idmapgid.xml new file mode 100644 index 0000000000..28d88b51b0 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapgid.xml @@ -0,0 +1,21 @@ +<samba:parameter name="idmap gid" + context="G" + type="string" + advanced="1" developer="1" hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <synonym>winbind gid</synonym> +<description> + <para>The idmap gid parameter specifies the range of group ids + that are allocated for the purpose of mapping UNX groups to NT group + SIDs. This range of group ids should have no + existing local or NIS groups within it as strange conflicts can + occur otherwise.</para> + + <para>See also the <smbconfoption name="idmap backend"/>, <smbconfoption + name="idmap domains"/>, and <smbconfoption name="idmap config"/> options. + </para> +</description> + +<value type="default"></value> +<value type="example">10000-20000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapnegativecachetime.xml b/docs-xml/smbdotconf/winbind/idmapnegativecachetime.xml new file mode 100644 index 0000000000..6790938d94 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapnegativecachetime.xml @@ -0,0 +1,13 @@ +<samba:parameter name="idmap negative cache time" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the number of seconds that Winbind's + idmap interface will cache negative SID/uid/gid query results. + </para> +</description> + +<value type="default">120</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/idmapuid.xml b/docs-xml/smbdotconf/winbind/idmapuid.xml new file mode 100644 index 0000000000..de4074cfa4 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/idmapuid.xml @@ -0,0 +1,21 @@ +<samba:parameter name="idmap uid" + type="string" + context="G" + advanced="1" developer="1" hide="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<synonym>winbind uid</synonym> +<description> + <para> + The idmap uid parameter specifies the range of user ids that are + allocated for use in mapping UNIX users to NT user SIDs. This + range of ids should have no existing local + or NIS users within it as strange conflicts can occur otherwise.</para> + + <para>See also the <smbconfoption name="idmap backend"/>, <smbconfoption + name="idmap domains"/>, and <smbconfoption name="idmap config"/> options. + </para> +</description> + +<value type="default"></value> +<value type="example">10000-20000</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/templatehomedir.xml b/docs-xml/smbdotconf/winbind/templatehomedir.xml new file mode 100644 index 0000000000..f5965c613c --- /dev/null +++ b/docs-xml/smbdotconf/winbind/templatehomedir.xml @@ -0,0 +1,18 @@ +<samba:parameter name="template homedir" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>When filling out the user information for a Windows NT + user, the <citerefentry><refentrytitle>winbindd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> daemon uses this + parameter to fill in the home directory for that user. If the + string <parameter moreinfo="none">%D</parameter> is present it + is substituted with the user's Windows NT domain name. If the + string <parameter moreinfo="none">%U</parameter> is present it + is substituted with the user's Windows NT user name.</para> +</description> + +<value type="default">/home/%D/%U</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/templateshell.xml b/docs-xml/smbdotconf/winbind/templateshell.xml new file mode 100644 index 0000000000..ce59cd12d0 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/templateshell.xml @@ -0,0 +1,14 @@ +<samba:parameter name="template shell" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>When filling out the user information for a Windows NT + user, the <citerefentry><refentrytitle>winbindd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> daemon uses this + parameter to fill in the login shell for that user.</para> +</description> + +<value type="string">/bin/false</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindcachetime.xml b/docs-xml/smbdotconf/winbind/winbindcachetime.xml new file mode 100644 index 0000000000..6bdcf0d06e --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindcachetime.xml @@ -0,0 +1,21 @@ +<samba:parameter name="winbind cache time" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies the number of + seconds the <citerefentry><refentrytitle>winbindd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> daemon will cache + user and group information before querying a Windows NT server + again.</para> + + <para> + This does not apply to authentication requests, these are always + evaluated in real time unless the <smbconfoption name="winbind + offline logon"/> option has been enabled. + </para> +</description> + +<value type="default">300</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindenumgroups.xml b/docs-xml/smbdotconf/winbind/winbindenumgroups.xml new file mode 100644 index 0000000000..74f6feed01 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindenumgroups.xml @@ -0,0 +1,20 @@ +<samba:parameter name="winbind enum groups" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>On large installations using <citerefentry><refentrytitle>winbindd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> it may be necessary to suppress + the enumeration of groups through the <command moreinfo="none">setgrent()</command>, + <command moreinfo="none">getgrent()</command> and + <command moreinfo="none">endgrent()</command> group of system calls. If + the <parameter moreinfo="none">winbind enum groups</parameter> parameter is + <constant>no</constant>, calls to the <command moreinfo="none">getgrent()</command> system + call will not return any data. </para> + +<warning><para>Turning off group enumeration may cause some programs to behave oddly. </para></warning> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindenumusers.xml b/docs-xml/smbdotconf/winbind/winbindenumusers.xml new file mode 100644 index 0000000000..c987feaf8a --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindenumusers.xml @@ -0,0 +1,23 @@ +<samba:parameter name="winbind enum users" + context="G" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>On large installations using <citerefentry><refentrytitle>winbindd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> it may be + necessary to suppress the enumeration of users through the <command moreinfo="none">setpwent()</command>, + <command moreinfo="none">getpwent()</command> and + <command moreinfo="none">endpwent()</command> group of system calls. If + the <parameter moreinfo="none">winbind enum users</parameter> parameter is + <constant>no</constant>, calls to the <command moreinfo="none">getpwent</command> system call + will not return any data. </para> + +<warning><para>Turning off user + enumeration may cause some programs to behave oddly. For + example, the finger program relies on having access to the + full user list when searching for matching + usernames. </para></warning> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindexpandgroups.xml b/docs-xml/smbdotconf/winbind/winbindexpandgroups.xml new file mode 100644 index 0000000000..19b81b3e0a --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindexpandgroups.xml @@ -0,0 +1,24 @@ +<samba:parameter name="winbind expand groups" + context="G" + type="integer" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This option controls the maximum depth that winbindd + will traverse when flattening nested group memberships + of Windows domain groups. This is different from the + <smbconfoption name="winbind nested groups"/> option + which implements the Windows NT4 model of local group + nesting. The "winbind expand groups" + parameter specifically applies to the membership of + domain groups.</para> + + <para>Be aware that a high value for this parameter can + result in system slowdown as the main parent winbindd daemon + must perform the group unrolling and will be unable to answer + incoming NSS or authentication requests during this time.</para> + +</description> + +<value type="default">1</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindnestedgroups.xml b/docs-xml/smbdotconf/winbind/winbindnestedgroups.xml new file mode 100644 index 0000000000..01e95bbaca --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindnestedgroups.xml @@ -0,0 +1,17 @@ +<samba:parameter name="winbind nested groups" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>If set to yes, this parameter activates the support for nested + groups. Nested groups are also called local groups or + aliases. They work like their counterparts in Windows: Nested + groups are defined locally on any machine (they are shared + between DC's through their SAM) and can contain users and + global groups from any trusted SAM. To be able to use nested + groups, you need to run nss_winbind.</para> +</description> + +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindnormalizenames.xml b/docs-xml/smbdotconf/winbind/winbindnormalizenames.xml new file mode 100644 index 0000000000..28826cf5f3 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindnormalizenames.xml @@ -0,0 +1,20 @@ +<samba:parameter name="winbind normalize names" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter controls whether winbindd will replace + whitespace in user and group names with an underscore (_) character. + For example, whether the name "Space Kadet" should be + replaced with the string "space_kadet". + Frequently Unix shell scripts will have difficulty with usernames + contains whitespace due to the default field separator in the shell. + Do not enable this option if the underscore character is used in + account names within your domain + </para> +</description> + +<value type="default">no</value> +<value type="example">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindnssinfo.xml b/docs-xml/smbdotconf/winbind/winbindnssinfo.xml new file mode 100644 index 0000000000..d6e40c6bf6 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindnssinfo.xml @@ -0,0 +1,40 @@ +<samba:parameter name="winbind nss info" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para>This parameter is designed to control how Winbind retrieves Name + Service Information to construct a user's home directory and login shell. + Currently the following settings are available: + + <itemizedlist> + <listitem> + <para><parameter moreinfo="none">template</parameter> + - The default, using the parameters of <parameter moreinfo="none">template + shell</parameter> and <parameter moreinfo="none">template homedir</parameter>) + </para> + </listitem> + + <listitem> + <para><parameter moreinfo="none"><sfu | rfc2307 ></parameter> + - When Samba is running in security = ads and your Active Directory + Domain Controller does support the Microsoft "Services for Unix" (SFU) + LDAP schema, winbind can retrieve the login shell and the home + directory attributes directly from your Directory Server. Note that + retrieving UID and GID from your ADS-Server requires to + use <parameter moreinfo="non">idmap backend</parameter> = ad + or <parameter moreinfo="non">idmap config DOMAIN:backend</parameter> = ad + as well. + </para> + </listitem> + + </itemizedlist> + +</para> +</description> + +<value type="default">template</value> +<value type="example">template sfu</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindofflinelogon.xml b/docs-xml/smbdotconf/winbind/winbindofflinelogon.xml new file mode 100644 index 0000000000..b5a0de1631 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindofflinelogon.xml @@ -0,0 +1,18 @@ +<samba:parameter name="winbind offline logon" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para>This parameter is designed to control whether Winbind should + allow to login with the <parameter moreinfo="none">pam_winbind</parameter> + module using Cached Credentials. If enabled, winbindd will store user credentials + from successful logins encrypted in a local cache. + </para> + +</description> + +<value type="default">false</value> +<value type="example">true</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindrefreshtickets.xml b/docs-xml/smbdotconf/winbind/winbindrefreshtickets.xml new file mode 100644 index 0000000000..d39cb76861 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindrefreshtickets.xml @@ -0,0 +1,16 @@ +<samba:parameter name="winbind refresh tickets" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para>This parameter is designed to control whether Winbind should refresh Kerberos Tickets + retrieved using the <parameter moreinfo="none">pam_winbind</parameter> module. + +</para> +</description> + +<value type="default">false</value> +<value type="example">true</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindrpconly.xml b/docs-xml/smbdotconf/winbind/winbindrpconly.xml new file mode 100644 index 0000000000..53a0877350 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindrpconly.xml @@ -0,0 +1,16 @@ +<samba:parameter name="winbind rpc only" + context="G" + type="string" + advanced="1" developer="0" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + + <para> + Setting this parameter to <value type="example">yes</value> forces + winbindd to use RPC instead of LDAP to retrieve information from Domain + Controllers. + </para> + +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindseparator.xml b/docs-xml/smbdotconf/winbind/winbindseparator.xml new file mode 100644 index 0000000000..63ab42000d --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindseparator.xml @@ -0,0 +1,21 @@ +<samba:parameter name="winbind separator" + context="G" + advanced="1" developer="1" + type="string" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter allows an admin to define the character + used when listing a username of the form of <replaceable>DOMAIN + </replaceable>\<replaceable>user</replaceable>. This parameter + is only applicable when using the <filename moreinfo="none">pam_winbind.so</filename> + and <filename moreinfo="none">nss_winbind.so</filename> modules for UNIX services. + </para> + + <para>Please note that setting this parameter to + causes problems + with group membership at least on glibc systems, as the character + + is used as a special character for NIS in /etc/group.</para> +</description> + +<value type="default">'\'</value> +<value type="example">+</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindtrusteddomainsonly.xml b/docs-xml/smbdotconf/winbind/winbindtrusteddomainsonly.xml new file mode 100644 index 0000000000..6ca229cfe9 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindtrusteddomainsonly.xml @@ -0,0 +1,24 @@ +<samba:parameter name="winbind trusted domains only" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para> + This parameter is designed to allow Samba servers that are members + of a Samba controlled domain to use UNIX accounts distributed via NIS, + rsync, or LDAP as the uid's for winbindd users in the hosts primary domain. + Therefore, the user <literal>DOMAIN\user1</literal> would be mapped to + the account user1 in /etc/passwd instead of allocating a new uid for him or her. + </para> + + <para> + This parameter is now deprecated in favor of the newer idmap_nss backend. + Refer to the <smbconfoption name="idmap domains"/> smb.conf option and + the <citerefentry><refentrytitle>idmap_nss</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> man page for more information. + </para> +</description> + +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/winbind/winbindusedefaultdomain.xml b/docs-xml/smbdotconf/winbind/winbindusedefaultdomain.xml new file mode 100644 index 0000000000..334068a329 --- /dev/null +++ b/docs-xml/smbdotconf/winbind/winbindusedefaultdomain.xml @@ -0,0 +1,19 @@ +<samba:parameter name="winbind use default domain" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This parameter specifies whether the + <citerefentry><refentrytitle>winbindd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> daemon should operate on users + without domain component in their username. Users without a domain + component are treated as is part of the winbindd server's own + domain. While this does not benifit Windows users, it makes SSH, FTP and + e-mail function in a way much closer to the way they + would in a native unix system.</para> +</description> + +<value type="default">no</value> +<value type="example">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/wins/dnsproxy.xml b/docs-xml/smbdotconf/wins/dnsproxy.xml new file mode 100644 index 0000000000..018c7d93a7 --- /dev/null +++ b/docs-xml/smbdotconf/wins/dnsproxy.xml @@ -0,0 +1,24 @@ +<samba:parameter name="dns proxy" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>Specifies that <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> when acting as a WINS server and + finding that a NetBIOS name has not been registered, should treat the + NetBIOS name word-for-word as a DNS name and do a lookup with the DNS server + for that name on behalf of the name-querying client.</para> + + <para>Note that the maximum length for a NetBIOS name is 15 + characters, so the DNS name (or DNS alias) can likewise only be + 15 characters, maximum.</para> + + <para><command moreinfo="none">nmbd</command> spawns a second copy of itself to do the + DNS name lookup requests, as doing a name lookup is a blocking + action.</para> +</description> + +<related>wins support</related> +<value type="default">yes</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/wins/winshook.xml b/docs-xml/smbdotconf/wins/winshook.xml new file mode 100644 index 0000000000..9e41fbd7c8 --- /dev/null +++ b/docs-xml/smbdotconf/wins/winshook.xml @@ -0,0 +1,58 @@ +<samba:parameter name="wins hook" + context="G" + type="string" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>When Samba is running as a WINS server this + allows you to call an external program for all changes to the + WINS database. The primary use for this option is to allow the + dynamic update of external name resolution databases such as + dynamic DNS.</para> + + <para>The wins hook parameter specifies the name of a script + or executable that will be called as follows:</para> + + <para><command moreinfo="none">wins_hook operation name nametype ttl IP_list</command></para> + + <itemizedlist> + <listitem> + <para>The first argument is the operation and is + one of "add", "delete", or + "refresh". In most cases the operation + can be ignored as the rest of the parameters + provide sufficient information. Note that + "refresh" may sometimes be called when + the name has not previously been added, in that + case it should be treated as an add.</para> + </listitem> + + <listitem> + <para>The second argument is the NetBIOS name. If the + name is not a legal name then the wins hook is not called. + Legal names contain only letters, digits, hyphens, underscores + and periods.</para> + </listitem> + + <listitem> + <para>The third argument is the NetBIOS name + type as a 2 digit hexadecimal number. </para> + </listitem> + + <listitem> + <para>The fourth argument is the TTL (time to live) + for the name in seconds.</para> + </listitem> + + <listitem> + <para>The fifth and subsequent arguments are the IP + addresses currently registered for that name. If this list is + empty then the name should be deleted.</para> + </listitem> + </itemizedlist> + + <para>An example script that calls the BIND dynamic DNS update + program <command moreinfo="none">nsupdate</command> is provided in the examples + directory of the Samba source code. </para> +</description> +</samba:parameter> diff --git a/docs-xml/smbdotconf/wins/winsproxy.xml b/docs-xml/smbdotconf/wins/winsproxy.xml new file mode 100644 index 0000000000..8f98687dba --- /dev/null +++ b/docs-xml/smbdotconf/wins/winsproxy.xml @@ -0,0 +1,13 @@ +<samba:parameter name="wins proxy" + context="G" + type="boolean" + advanced="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This is a boolean that controls if <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> will respond to broadcast name + queries on behalf of other hosts. You may need to set this + to <constant>yes</constant> for some older clients.</para> +</description> +<value type="default">no</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/wins/winsserver.xml b/docs-xml/smbdotconf/wins/winsserver.xml new file mode 100644 index 0000000000..afced35f50 --- /dev/null +++ b/docs-xml/smbdotconf/wins/winsserver.xml @@ -0,0 +1,34 @@ +<samba:parameter name="wins server" + context="G" + type="boolean" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> +<description> + <para>This specifies the IP address (or DNS name: IP + address for preference) of the WINS server that <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> should register with. If you have a WINS server on + your network then you should set this to the WINS server's IP.</para> + + <para>You should point this at your WINS server if you have a + multi-subnetted network.</para> + + <para>If you want to work in multiple namespaces, you can + give every wins server a 'tag'. For each tag, only one + (working) server will be queried for a name. The tag should be + separated from the ip address by a colon. + </para> + + <note><para>You need to set up Samba to point + to a WINS server if you have multiple subnets and wish cross-subnet + browsing to work correctly.</para></note> + <para>See the chapter in the Samba3-HOWTO on Network Browsing.</para> +</description> + +<value type="default"></value> +<value type="example">mary:192.9.200.1 fred:192.168.3.199 mary:192.168.2.61 + <comment>For this example when querying a certain name, 192.19.200.1 will + be asked first and if that doesn't respond 192.168.2.61. If either + of those doesn't know the name 192.168.3.199 will be queried.</comment></value> + +<value type="example">192.9.200.1 192.168.2.61</value> +</samba:parameter> diff --git a/docs-xml/smbdotconf/wins/winssupport.xml b/docs-xml/smbdotconf/wins/winssupport.xml new file mode 100644 index 0000000000..b4f89528ec --- /dev/null +++ b/docs-xml/smbdotconf/wins/winssupport.xml @@ -0,0 +1,16 @@ +<samba:parameter name="wins support" + type="boolean" + context="G" + basic="1" advanced="1" wizard="1" developer="1" + xmlns:samba="http://www.samba.org/samba/DTD/samba-doc"> + <description> + <para>This boolean controls if the <citerefentry><refentrytitle>nmbd</refentrytitle> + <manvolnum>8</manvolnum></citerefentry> process in Samba will act as a WINS server. You should + not set this to <constant>yes</constant> unless you have a multi-subnetted network and + you wish a particular <command moreinfo="none">nmbd</command> to be your WINS server. + Note that you should <emphasis>NEVER</emphasis> set this to <constant>yes</constant> + on more than one machine in your network.</para> + +</description> +<value type="default">no</value> +</samba:parameter> |