From 20967627378194121bc48bf387838b8bd7682478 Mon Sep 17 00:00:00 2001
From: Jelmer Vernooij NetBIOS runs over the following tranports: TCP/IP; NetBEUI and IPX/SPX.
Samba only uses NetBIOS over TCP/IP. For details on the TCP/IP NetBIOS
@@ -904,8 +904,8 @@ CLASS="SECT1"
CLASS="SECT1"
>1.2. BROADCAST NetBIOS1.2. BROADCAST NetBIOS
Clients can claim names, and therefore offer services on successfully claimed
@@ -927,14 +927,14 @@ CLASS="SECT1"
CLASS="SECT1"
>1.3. NBNS NetBIOS1.3. NBNS NetBIOS rfc1001.txt describes, amongst other things, the implementation and use
of, a 'NetBIOS Name Service'. NT/AS offers 'Windows Internet Name Service'
which is fully rfc1001/2 compliant, but has had to take specific action
with certain NetBIOS names in order to make it useful. (for example, it
-deals with the registration of <1c> <1d> <1e> names all in different ways.
+deals with the registration of <1c> <1d> <1e> names all in different ways.
I recommend the reading of the Microsoft WINS Server Help files for full
details). 2.1. Introduction2.1. Introduction This document gives a general overview of how Samba works
internally. The Samba Team has tried to come up with a model which is
@@ -1022,8 +1022,8 @@ CLASS="SECT1"
CLASS="SECT1"
>2.2. Multithreading and Samba2.2. Multithreading and Samba People sometimes tout threads as a uniformly good thing. They are very
nice in their place but are quite inappropriate for smbd. nmbd is
@@ -1048,8 +1048,8 @@ CLASS="SECT1"
CLASS="SECT1"
>2.3. Threading smbd2.3. Threading smbd A few problems that would arise from a threaded smbd are: 2.4. Threading nmbd2.4. Threading nmbd This would be ideal, but gets sunk by portability requirements. 2.5. nbmd Design2.5. nbmd Design Originally Andrew used recursion to simulate a multi-threaded
environment, which use the stack enormously and made for really
@@ -1173,22 +1173,22 @@ CLASS="SECT1"
CLASS="SECT1"
>3.1. New Output Syntax3.1. New Output Syntax The syntax of a debugging log file is represented as:I have set 'force user' and samba still makes 'root' the owner of all the files I touch!
1.1. NETBIOS1.1. NETBIOS
>debugfile< :== { >debugmsg< }
+> >debugfile< :== { >debugmsg< }
- >debugmsg< :== >debughdr< '\n' >debugtext<
+ >debugmsg< :== >debughdr< '\n' >debugtext<
- >debughdr< :== '[' TIME ',' LEVEL ']' FILE ':' [FUNCTION] '(' LINE ')'
+ >debughdr< :== '[' TIME ',' LEVEL ']' FILE ':' [FUNCTION] '(' LINE ')'
- >debugtext< :== { >debugline< }
+ >debugtext< :== { >debugline< }
- >debugline< :== TEXT '\n'
TEXT is a string of characters excluding the newline character.
3.2. The DEBUG() Macro3.2. The DEBUG() MacroUse of the DEBUG() macro is unchanged. DEBUG() takes two parameters. The first is the message level, the second is the body of a function @@ -1338,8 +1338,8 @@ CLASS="SECT1" CLASS="SECT1" >3.3. The DEBUGADD() Macro3.3. The DEBUGADD() Macro
In addition to the kludgey solution to the broken line problem described above, there is a clean solution. The DEBUGADD() macro never @@ -1369,8 +1369,8 @@ CLASS="SECT1" CLASS="SECT1" >3.4. The DEBUGLVL() Macro3.4. The DEBUGLVL() Macro
One of the problems with the DEBUG() macro was that DEBUG() lines tended to get a bit long. Consider this example from @@ -1437,16 +1437,16 @@ CLASS="SECT1" CLASS="SECT1" >3.5. New Functions3.5. New Functions
This function prints debug message text to the debug file (and possibly to syslog) via the format buffer. The function uses a @@ -1463,8 +1463,8 @@ CLASS="SECT2" CLASS="SECT2" >3.5.2. dbghdr()3.5.2. dbghdr()
This is the function that writes a debug message header. Headers are not processed via the format buffer. Also note that @@ -1480,8 +1480,8 @@ CLASS="SECT2" CLASS="SECT2" >3.5.3. format_debug_text()3.5.3. format_debug_text()
This is a static function in debug.c. It stores the output text for the body of the message in a buffer until it encounters a @@ -1726,8 +1726,8 @@ CLASS="SECT1" CLASS="SECT1" >5.1. Character Handling5.1. Character Handling
This section describes character set handling in Samba, as implemented in Samba 3.0 and above
5.2. The new functions5.2. The new functionsThe new system works like this:
5.3. Macros in byteorder.h5.3. Macros in byteorder.h
This section describes the macros defined in byteorder.h. These macros are used extensively in the Samba code.
5.3.1. CVAL(buf,pos)5.3.1. CVAL(buf,pos)returns the byte at offset pos within buffer buf as an unsigned character.
returns the value of CVAL(buf,pos) cast to type unsigned integer.
5.3.3. SCVAL(buf,pos,val)5.3.3. SCVAL(buf,pos,val)sets the byte at offset pos within buffer buf to value val.
5.3.4. SVAL(buf,pos)5.3.4. SVAL(buf,pos)returns the value of the unsigned short (16 bit) little-endian integer at offset pos within buffer buf. An integer of this type is sometimes @@ -1913,8 +1913,8 @@ CLASS="SECT2" CLASS="SECT2" >5.3.5. IVAL(buf,pos)5.3.5. IVAL(buf,pos)
returns the value of the unsigned 32 bit little-endian integer at offset pos within buffer buf.
5.3.6. SVALS(buf,pos)5.3.6. SVALS(buf,pos)returns the value of the signed short (16 bit) little-endian integer at offset pos within buffer buf.
5.3.7. IVALS(buf,pos)5.3.7. IVALS(buf,pos)returns the value of the signed 32 bit little-endian integer at offset pos within buffer buf.
5.3.8. SSVAL(buf,pos,val)5.3.8. SSVAL(buf,pos,val)sets the unsigned short (16 bit) little-endian integer at offset pos within buffer buf to value val.
5.3.9. SIVAL(buf,pos,val)5.3.9. SIVAL(buf,pos,val)sets the unsigned 32 bit little-endian integer at offset pos within buffer buf to the value val.
5.3.10. SSVALS(buf,pos,val)5.3.10. SSVALS(buf,pos,val)sets the short (16 bit) signed little-endian integer at offset pos within buffer buf to the value val.
5.3.11. SIVALS(buf,pos,val)5.3.11. SIVALS(buf,pos,val)sets the signed 32 bit little-endian integer at offset pos withing buffer buf to the value val.
5.3.12. RSVAL(buf,pos)5.3.12. RSVAL(buf,pos)returns the value of the unsigned short (16 bit) big-endian integer at offset pos within buffer buf.
5.3.13. RIVAL(buf,pos)5.3.13. RIVAL(buf,pos)returns the value of the unsigned 32 bit big-endian integer at offset pos within buffer buf.
5.3.14. RSSVAL(buf,pos,val)5.3.14. RSSVAL(buf,pos,val)sets the value of the unsigned short (16 bit) big-endian integer at offset pos within buffer buf to value val. @@ -2034,8 +2034,8 @@ CLASS="SECT2" CLASS="SECT2" >5.3.15. RSIVAL(buf,pos,val)5.3.15. RSIVAL(buf,pos,val)
sets the value of the unsigned 32 bit big-endian integer at offset pos within buffer buf to value val.
5.4. LAN Manager Samba API5.4. LAN Manager Samba APIThis section describes the functions need to make a LAN Manager RPC call. This information had been obtained by examining the Samba code and the LAN @@ -2069,8 +2069,8 @@ CLASS="SECT2" CLASS="SECT2" >5.4.1. Parameters5.4.1. Parameters
The parameters are as follows:
5.4.2. Return value5.4.2. Return value
The returned parameters (pointed to by rparam), in their order of appearance are:
5.5. Code character table5.5. Code character tableCertain data structures are described by means of ASCIIz strings containing code characters. These are the code characters:
6.1. Lexical Analysis6.1. Lexical AnalysisBasically, the file is processed on a line by line basis. There are four types of lines that are recognized by the lexical analyzer @@ -2340,8 +2340,8 @@ CLASS="SECT2" CLASS="SECT2" >6.1.1. Handling of Whitespace6.1.1. Handling of Whitespace
Whitespace is defined as all characters recognized by the isspace() function (see ctype(3C)) except for the newline character ('\n') @@ -2377,8 +2377,8 @@ CLASS="SECT2" CLASS="SECT2" >6.1.2. Handling of Line Continuation6.1.2. Handling of Line Continuation
Long section header and parameter lines may be extended across multiple lines by use of the backslash character ('\\'). Line @@ -2417,8 +2417,8 @@ CLASS="SECT2" CLASS="SECT2" >6.1.3. Line Continuation Quirks6.1.3. Line Continuation Quirks
Note the following example:
The syntax of the smb.conf file is as follows:
<file> :== { <section> } EOF - <section> :== <section header> { <parameter line> } - <section header> :== '[' NAME ']' - <parameter line> :== NAME '=' VALUE NL<file> :== { <section> } EOF + <section> :== <section header> { <parameter line> } + <section header> :== '[' NAME ']' + <parameter line> :== NAME '=' VALUE NL
Basically, this means that
6.2.1. About params.c6.2.1. About params.cThe parsing of the config file is a bit unusual if you are used to lex, yacc, bison, etc. Both lexical analysis (scanning) and parsing @@ -2547,12 +2547,12 @@ CLASS="SECT1" CLASS="SECT1" >7.1. Introduction7.1. Introduction
This is a short document that describes some of the issues that confront a SMB implementation on unix, and how Samba copes with -them. They may help people who are looking at unix<->PC +them. They may help people who are looking at unix<->PC interoperability.
It was written to help out a person who was writing a paper on unix to @@ -2564,8 +2564,8 @@ CLASS="SECT1" CLASS="SECT1" >7.2. Usernames7.2. Usernames
The SMB protocol has only a loose username concept. Early SMB protocols (such as CORE and COREPLUS) have no username concept at @@ -2610,8 +2610,8 @@ CLASS="SECT1" CLASS="SECT1" >7.3. File Ownership7.3. File Ownership
The commonly used SMB protocols have no way of saying "you can't do that because you don't own the file". They have, in fact, no concept @@ -2637,8 +2637,8 @@ CLASS="SECT1" CLASS="SECT1" >7.4. Passwords7.4. Passwords
Many SMB clients uppercase passwords before sending them. I have no idea why they do this. Interestingly WfWg uppercases the password only @@ -2668,8 +2668,8 @@ CLASS="SECT1" CLASS="SECT1" >7.5. Locking7.5. Locking
Since samba 2.2, samba supports other types of locking as well. This section is outdated.
7.6. Deny Modes7.6. Deny ModesWhen a SMB client opens a file it asks for a particular "deny mode" to be placed on the file. These modes (DENY_NONE, DENY_READ, DENY_WRITE, @@ -2731,8 +2731,8 @@ CLASS="SECT1" CLASS="SECT1" >7.7. Trapdoor UIDs7.7. Trapdoor UIDs
A SMB session can run with several uids on the one socket. This happens when a user connects to two shares with different @@ -2750,8 +2750,8 @@ CLASS="SECT1" CLASS="SECT1" >7.8. Port numbers7.8. Port numbers
There is a convention that clients on sockets use high "unprivilaged" port numbers (>1000) and connect to servers on low "privilaged" port @@ -2782,8 +2782,8 @@ CLASS="SECT1" CLASS="SECT1" >7.9. Protocol Complexity7.9. Protocol Complexity
There are many "protocol levels" in the SMB protocol. It seems that each time new functionality was added to a Microsoft operating system, @@ -2900,14 +2900,14 @@ example, if I'm using a csh style shell:
strace -f -p 3872 >& strace.outstrace -f -p 3872 >& strace.out
or with a sh style shell:
strace -f -p 3872 > strace.out 2>&1strace -f -p 3872 > strace.out 2>&1
Note the "-f" option. This is only available on some systems, and @@ -2963,8 +2963,8 @@ CLASS="SECT1" CLASS="SECT1" >9.1. Introduction9.1. Introduction
This document contains information to provide an NT workstation with login services, without the need for an NT server. It is the sgml version of 9.1.1. Sources9.1.1. Sources
Quick Cross Subnet Browsing / Cross Workgroup Browsing guide Note: MS Windows 2000 and later can be configured to operate with NO NetBIOS +over TCP/IP. Samba-3 and later also supports this mode of operation. 2.1. Discussion2.1. DiscussionFirstly, all MS Windows networking is based on SMB (Server Message -Block) based messaging. SMB messaging is implemented using NetBIOS. Samba -implements NetBIOS by encapsulating it over TCP/IP. MS Windows products can -do likewise. NetBIOS based networking uses broadcast messaging to affect -browse list management. When running NetBIOS over TCP/IP this uses UDP -based messaging. UDP messages can be broadcast or unicast. Normally, only unicast UDP messaging can be forwarded by routers. The "remote announce" parameter to smb.conf helps to project browse announcements @@ -109,18 +112,23 @@ segment is configured with it's own Samba WINS server, then the only way to get cross segment browsing to work is by using the "remote announce" and the "remote browse sync" parameters to your smb.conf file. If only one WINS server is used then the use of the "remote announce" and the -"remote browse sync" parameters should NOT be necessary. If only one WINS server is used for an entire multi-segment network then +the use of the "remote announce" and the "remote browse sync" parameters +should NOT be necessary.Samba WINS does not support MS-WINS replication. This means that when setting up -Samba as a WINS server there must only be one nmbd configured as a WINS server -on the network. Some sites have used multiple Samba WINS servers for redundancy -(one server per subnet) and then used "remote browse sync" and "remote announce" -to affect browse list collation across all segments. Note that this means -clients will only resolve local names, and must be configured to use DNS to -resolve names on other subnets in order to resolve the IP addresses of the -servers they can see on other subnets. This setup is not recommended, but is -mentioned as a practical consideration (ie: an 'if all else fails' scenario). As of Samba-3 WINS replication is being worked on. The bulk of the code has +been committed, but it still needs maturation.Right now samba WINS does not support MS-WINS replication. This means that +when setting up Samba as a WINS server there must only be one nmbd configured +as a WINS server on the network. Some sites have used multiple Samba WINS +servers for redundancy (one server per subnet) and then used "remote browse +sync" and "remote announce" to affect browse list collation across all +segments. Note that this means clients will only resolve local names, +and must be configured to use DNS to resolve names on other subnets in +order to resolve the IP addresses of the servers they can see on other +subnets. This setup is not recommended, but is mentioned as a practical +consideration (ie: an 'if all else fails' scenario). Lastly, take note that browse lists are a collection of unreliable broadcast messages that are repeated at intervals of not more than 15 minutes. This means @@ -132,9 +140,9 @@ CLASS="SECT1" > 2.2. Use of the "Remote Announce" parameter2.2. Use of the "Remote Announce" parameterThe "remote announce" parameter of smb.conf can be used to forcibly ensure that all the NetBIOS names on a network get announced to a remote network. @@ -190,9 +198,9 @@ CLASS="SECT1" > 2.3. Use of the "Remote Browse Sync" parameter2.3. Use of the "Remote Browse Sync" parameterThe "remote browse sync" parameter of smb.conf is used to announce to another LMB that it must synchronise it's NetBIOS name list with our @@ -213,9 +221,9 @@ CLASS="SECT1" > 2.4. Use of WINS2.4. Use of WINSUse of WINS (either Samba WINS _or_ MS Windows NT Server WINS) is highly recommended. Every NetBIOS machine registers it's name together with a @@ -267,22 +275,23 @@ CLASS="emphasis" CLASS="EMPHASIS" >DO NOT EVER use both "wins support = yes" together with "wins server = a.b.c.d" -particularly not using it's own IP address. use both "wins support = yes" together +with "wins server = a.b.c.d" particularly not using it's own IP address. +Specifying both will cause nmbd to refuse to start!2.5. Do NOT use more than one (1) protocol on MS Windows machines2.5. Do NOT use more than one (1) protocol on MS Windows machinesA very common cause of browsing problems results from installing more than one protocol on an MS Windows machine. Every NetBIOS machine take part in a process of electing the LMB (and DMB) +>Every NetBIOS machine takes part in a process of electing the LMB (and DMB) every 15 minutes. A set of election criteria is used to determine the order of precidence for winning this election process. A machine running Samba or Windows NT will be biased so that the most suitable machine will predictably @@ -298,6 +307,19 @@ interface over the IPX protocol. Samba will then lose the LMB role as Windows as an LMB and thus browse list operation on all TCP/IP only machines will fail. Windows 95, 98, 98se, Me are referred to generically as Windows 9x. +The Windows NT4, 2000, XP and 2003 use common protocols. These are roughly +referred to as the WinNT family, but it should be recognised that 2000 and +XP/2003 introduce new protocol extensions that cause them to behave +differently from MS Windows NT4. Generally, where a server does NOT support +the newer or extended protocol, these will fall back to the NT4 protocols. The safest rule of all to follow it this - USE ONLY ONE PROTOCOL! 2.6. Name Resolution Order2.6. Name Resolution OrderResolution of NetBIOS names to IP addresses can take place using a number of methods. The only ones that can provide NetBIOS name_type information diff --git a/docs/htmldocs/bugreport.html b/docs/htmldocs/bugreport.html index 813d0055cc..cc4fc83df6 100644 --- a/docs/htmldocs/bugreport.html +++ b/docs/htmldocs/bugreport.html @@ -5,7 +5,7 @@ >Reporting Bugs Prev | Chapter 23. Reporting BugsChapter 24. Reporting BugsDiagnosing your samba server | The samba checklist
You can obtain the samba source from the samba website. To obtain a development version, +you can download samba from CVS or using rsync.
Samba is developed in an open environment. Developers use CVS +(Concurrent Versioning System) to "checkin" (also known as +"commit") new source code. Samba's various CVS branches can +be accessed via anonymous CVS using the instructions +detailed in this chapter.
This chapter is a modified version of the instructions found at +http://samba.org/samba/cvs.html
The machine samba.org runs a publicly accessible CVS +repository for access to the source code of several packages, +including samba, rsync and jitterbug. There are two main ways of +accessing the CVS server on this host.
You can access the source code via your +favourite WWW browser. This allows you to access the contents of +individual files in the repository and also to look at the revision +history and commit logs of individual files. You can also ask for a diff +listing between any two versions on the repository.
Use the URL : http://samba.org/cgi-bin/cvsweb
You can also access the source code via a +normal cvs client. This gives you much more control over you can +do with the repository and allows you to checkout whole source trees +and keep them up to date via normal cvs commands. This is the +preferred method of access if you are a developer and not +just a casual browser.
To download the latest cvs source code, point your +browser at the URL : http://www.cyclic.com/. +and click on the 'How to get cvs' link. CVS is free software under +the GNU GPL (as is Samba). Note that there are several graphical CVS clients +which provide a graphical interface to the sometimes mundane CVS commands. +Links to theses clients are also available from http://www.cyclic.com.
To gain access via anonymous cvs use the following steps. +For this example it is assumed that you want a copy of the +samba source code. For the other source code repositories +on this system just substitute the correct package name
Install a recent copy of cvs. All you really need is a + copy of the cvs client binary. +
Run the command +
cvs -d :pserver:cvs@samba.org:/cvsroot login +
When it asks you for a password type cvs. +
Run the command +
cvs -d :pserver:cvs@samba.org:/cvsroot co samba +
This will create a directory called samba containing the + latest samba source code (i.e. the HEAD tagged cvs branch). This + currently corresponds to the 3.0 development tree. +
CVS branches other HEAD can be obtained by using the -r + and defining a tag name. A list of branch tag names can be found on the + "Development" page of the samba web site. A common request is to obtain the + latest 2.2 release code. This could be done by using the following command. +
cvs -d :pserver:cvs@samba.org:/cvsroot co -r SAMBA_2_2 samba +
Whenever you want to merge in the latest code changes use + the following command from within the samba directory: +
cvs update -d -P +
pserver.samba.org also exports unpacked copies of most parts of the CVS tree at ftp://pserver.samba.org/pub/unpacked and also via anonymous rsync at rsync://pserver.samba.org/ftp/unpacked/. I recommend using rsync rather than ftp. + See the rsync homepage for more info on rsync. +
The disadvantage of the unpacked trees + is that they do not support automatic + merging of local changes like CVS does. + rsync access is most convenient for an + initial install. +
To do this, first run the program ./configure + in the source directory. This should automatically + configure Samba for your operating system. If you have unusual + needs then you may wish to run
root# ./configure --help +
first to see what special options you can enable. + Then executing
root# make
will create the binaries. Once it's successfully + compiled you can use
root# make install
to install the binaries and manual pages. You can + separately install the binaries and/or man pages using
root# make installbin +
and
root# make installman +
Note that if you are upgrading for a previous version + of Samba you might like to know that the old versions of + the binaries will be renamed with a ".old" extension. You + can go back to the previous version with
root# make revert +
if you find this version a disaster!
You must choose to start smbd and nmbd either + as daemons or from inetd. Don't try + to do both! Either you can put them in inetd.conf and have them started on demand + by inetd, or you can start them as + daemons either from the command line or in /etc/rc.local. See the man pages for details + on the command line options. Take particular care to read + the bit about what user you need to be in order to start + Samba. In many cases you must be root.
The main advantage of starting smbd + and nmbd using the recommended daemon method + is that they will respond slightly more quickly to an initial connection + request.
NOTE; The following will be different if + you use NIS, NIS+ or LDAP to distribute services maps.
Look at your /etc/services. + What is defined at port 139/tcp. If nothing is defined + then add a line like this:
netbios-ssn 139/tcp
similarly for 137/udp you should have an entry like:
netbios-ns 137/udp
Next edit your /etc/inetd.conf + and add two lines something like this:
netbios-ssn stream tcp nowait root /usr/local/samba/bin/smbd smbd + netbios-ns dgram udp wait root /usr/local/samba/bin/nmbd nmbd +
The exact syntax of /etc/inetd.conf + varies between unixes. Look at the other entries in inetd.conf + for a guide.
NOTE: Some unixes already have entries like netbios_ns + (note the underscore) in /etc/services. + You must either edit /etc/services or + /etc/inetd.conf to make them consistent.
NOTE: On many systems you may need to use the + "interfaces" option in smb.conf to specify the IP address + and netmask of your interfaces. Run ifconfig + as root if you don't know what the broadcast is for your + net. nmbd tries to determine it at run + time, but fails on some unixes. See the section on "testing nmbd" + for a method of finding if you need to do this.
!!!WARNING!!! Many unixes only accept around 5 + parameters on the command line in inetd.conf. + This means you shouldn't use spaces between the options and + arguments, or you should use a script, and start the script + from inetd.
Restart inetd, perhaps just send + it a HUP. If you have installed an earlier version of nmbd then you may need to kill nmbd as well.
To start the server as a daemon you should create + a script something like this one, perhaps calling + it startsmb.
#!/bin/sh + /usr/local/samba/bin/smbd -D + /usr/local/samba/bin/nmbd -D +
then make it executable with chmod + +x startsmb
You can then run startsmb by + hand or execute it from /etc/rc.local +
To kill it send a kill signal to the processes + nmbd and smbd.
NOTE: If you use the SVR4 style init system then + you may like to look at the examples/svr4-startup + script to make Samba fit into that system.
Samba is developed in an open environment. Developers use CVS -(Concurrent Versioning System) to "checkin" (also known as -"commit") new source code. Samba's various CVS branches can -be accessed via anonymous CVS using the instructions -detailed in this chapter.
This document is a modified version of the instructions found at -http://samba.org/samba/cvs.html
The machine samba.org runs a publicly accessible CVS -repository for access to the source code of several packages, -including samba, rsync and jitterbug. There are two main ways of -accessing the CVS server on this host.
You can access the source code via your -favourite WWW browser. This allows you to access the contents of -individual files in the repository and also to look at the revision -history and commit logs of individual files. You can also ask for a diff -listing between any two versions on the repository.
Use the URL : http://samba.org/cgi-bin/cvsweb
You can also access the source code via a -normal cvs client. This gives you much more control over you can -do with the repository and allows you to checkout whole source trees -and keep them up to date via normal cvs commands. This is the -preferred method of access if you are a developer and not -just a casual browser.
To download the latest cvs source code, point your -browser at the URL : http://www.cyclic.com/. -and click on the 'How to get cvs' link. CVS is free software under -the GNU GPL (as is Samba). Note that there are several graphical CVS clients -which provide a graphical interface to the sometimes mundane CVS commands. -Links to theses clients are also available from http://www.cyclic.com.
To gain access via anonymous cvs use the following steps. -For this example it is assumed that you want a copy of the -samba source code. For the other source code repositories -on this system just substitute the correct package name
Install a recent copy of cvs. All you really need is a - copy of the cvs client binary. -
Run the command -
cvs -d :pserver:cvs@samba.org:/cvsroot login -
When it asks you for a password type cvs. -
Run the command -
cvs -d :pserver:cvs@samba.org:/cvsroot co samba -
This will create a directory called samba containing the - latest samba source code (i.e. the HEAD tagged cvs branch). This - currently corresponds to the 3.0 development tree. -
CVS branches other HEAD can be obtained by using the -r - and defining a tag name. A list of branch tag names can be found on the - "Development" page of the samba web site. A common request is to obtain the - latest 2.2 release code. This could be done by using the following command. -
cvs -d :pserver:cvs@samba.org:/cvsroot co -r SAMBA_2_2 samba -
Whenever you want to merge in the latest code changes use - the following command from within the samba directory: -
cvs update -d -P -
This file contains a list of tests you can perform to validate your Samba server. It also tells you what the likely cause of the problem @@ -95,9 +95,9 @@ CLASS="SECT1" >
In all of the tests it is assumed you have a Samba server called BIGSERVER and a PC called ACLIENT both in workgroup TESTGROUP.
In the directory in which you store your smb.conf file, run the command "testparm smb.conf". If it reports any errors then your smb.conf @@ -163,9 +163,9 @@ CLASS="SECT2" >
Run the command "ping BIGSERVER" from the PC and "ping ACLIENT" from the unix box. If you don't get a valid response then your TCP/IP @@ -189,9 +189,9 @@ CLASS="SECT2" >
Run the command "smbclient -L BIGSERVER" on the unix box. You should get a list of available shares back.
Run the command "nmblookup -B BIGSERVER __SAMBA__". You should get the IP address of your Samba server back.
run the command 24.3.6. Test 6
25.3.6. Test 6
Run the command 24.3.7. Test 7
25.3.7. Test 7
Run the command . You should
then be prompted for a password. You should use the password of the account
you are logged into the unix box with. If you want to test with
-another account then add the -U >accountname< option to the end of
+another account then add the -U >accountname< option to the end of
the command line. eg:
etc.
Type help >command<help >command< for instructions. You should
especially check that the amount of free disk space shown is correct
when you type 24.3.8. Test 8
25.3.8. Test 8
On the PC type the command 24.3.9. Test 9
25.3.9. Test 9
Run the command 24.3.10. Test 10
25.3.10. Test 10
Run the command 24.3.11. Test 11
25.3.11. Test 11
From file manager try to browse the server. Your samba server should appear in the browse list of your local workgroup (or the one you @@ -573,9 +573,9 @@ CLASS="SECT1" >
Try the mailing list or newsgroup, or use the ethereal utility to sniff the problem. The official samba mailing list can be reached at diff --git a/docs/htmldocs/domain-security.html b/docs/htmldocs/domain-security.html index fcb40641e4..d47138d791 100644 --- a/docs/htmldocs/domain-security.html +++ b/docs/htmldocs/domain-security.html @@ -5,7 +5,7 @@ >Samba as a NT4 or Win2k domain member
Assume you have a Samba 3.0 server with a NetBIOS name of
- SERV1SERV1 and are joining an or Win2k NT domain called
- DOMDOM, which has a PDC with a NetBIOS name
- of DOMPDCDOMPDC and two backup domain controllers
- with NetBIOS names DOMBDC1 and DOMBDC1 and DOMBDC2
-
.
Firstly, you must edit your Change (or add) your security =security = line in the [global] section of your smb.conf to read:
Next change the workgroup = workgroup = line in the [global] section to read:You must also have the parameter encrypt passwordsencrypt passwords set to set to yes
-
in order for your users to authenticate to the NT PDC.
Finally, add (or modify) a password server =password server = line in the [global] section to read:
In order to actually join the domain, you must run this command:root# root# net join -S DOMPDC - -UAdministrator%passwordAdministrator%password
as we are joining the domain DOM and the PDC for that domain (the only machine that has write access to the domain SAM database) - is DOMPDC. The Administrator%passwordAdministrator%password is the login name and password for an account which has the necessary privilege to add machines to the domain. If this is successful you will see the message:
Joined domain DOM.Joined domain DOM. - or Joined 'SERV1' to realm 'MYREALM'Joined 'SERV1' to realm 'MYREALM'
Many people have asked regarding the state of Samba's ability to participate in a Windows 2000 Domain. Samba 3.0 is able to act as a member server of a Windows @@ -296,16 +282,16 @@ CLASS="SECT1" >
Currently, domain security in Samba doesn't free you from having to create local Unix users to represent the users attaching - to your server. This means that if domain user DOM\fred - attaches to your domain security Samba server, there needs to be a local Unix user fred to represent that user in the Unix filesystem. This is very similar to the older Samba security mode diff --git a/docs/htmldocs/findsmb.1.html b/docs/htmldocs/findsmb.1.html index bf63db867c..bc0aec55c0 100644 --- a/docs/htmldocs/findsmb.1.html +++ b/docs/htmldocs/findsmb.1.html @@ -5,7 +5,7 @@ >findsmb
nmblookup(1) - will be called with -B-B option.The command with The command with -r
-r option
must be run on a system without is running on the system, you will
only get the IP address and the DNS name of the machine. To
get proper responses from Windows 95 and Windows 98 machines,
- the command must be run as root and with -r-r
option on a machine without findsmb
- without -r-r option set would yield output similar
to the following
Group mapping HOWTOPrevChapter 18. Group mapping HOWTOChapter 17. Group mapping HOWTOStarting with Samba 3.0 alpha 2, a new group mapping function is available. The @@ -185,7 +185,7 @@ WIDTH="33%" ALIGN="left" VALIGN="top" >PrevAccess Samba source code via CVSStackable VFS modules
Chapter 20. Creating Group ProfilesChapter 19. Creating Group Prolicy Files Creating Group Profiles Creating Group Prolicy FilesNext20.1. Windows '9x
19.1. Windows '9xYou need the Win98 Group Policy Editor to set Group Profiles up under Windows '9x. It can be found on the Original @@ -106,25 +106,28 @@ CLASS="FILENAME" > that needs to be placed in the root of the [NETLOGON] share. If your Win98 is configured to log onto the Samba Domain, it will automatically read this file and update the -Win98 registry of the machine that is logging on.
All of this is covered in the Win98 Resource Kit documentation.
If you do not do it this way, then every so often Win98 will check the +>If you do not do it this way, then every so often Win9x/Me will check the integrity of the registry and will restore it's settings from the back-up -copy of the registry it stores on each Win98 machine. Hence, you will notice -things changing back to the original settings.
The following all refers to Windows NT/200x profile migration - not to policies. +We need a separate section on policies (NTConfig.Pol) for NT4/200x.
20.2. Windows NT 4
19.2. Windows NT 4Unfortunately, the Resource Kit info is Win NT4/2K version specific.
Unfortunately, the Resource Kit info is Win NT4 or 200x specific.Here is a quick guide:
I am using the term "migrate" lossely. You can copy a profile to +>I am using the term "migrate" lossely. You can copy a profile to create a group profile. You can give the user 'Everyone' rights to the profile you copy this to. That is what you need to do, since your samba domain is not a member of a trust relationship with your NT4 PDC.
20.2.1. Side bar Notes
19.2.1. Side bar NotesYou should obtain the SID of your NT4 domain. You can use smbpasswd to do this. Read the man page.
20.2.2. Mandatory profiles
19.2.2. Mandatory profilesThe above method can be used to create mandatory profiles also. To convert a group profile into a mandatory profile simply locate the NTUser.DAT file @@ -230,9 +233,9 @@ CLASS="SECT2" >
20.2.3. moveuser.exe
19.2.3. moveuser.exeThe W2K professional resource kit has moveuser.exe. moveuser.exe changes the security of a profile from one user to another. This allows the account @@ -243,9 +246,9 @@ CLASS="SECT2" >
20.2.4. Get SID
19.2.4. Get SIDYou can identify the SID by using GetSID.exe from the Windows NT Server 4.0 Resource Kit.
20.3. Windows 2000/XP
19.3. Windows 2000/XPYou must first convert the profile from a local profile to a domain profile on the MS Windows workstation as follows:
NextAppendixesSecuring Samba
SMB networking provides a mechanism by which clients can access a list of machines in a network, a so-called "browse list". This list @@ -93,8 +93,13 @@ list is heavily used by all SMB clients. Configuration of SMB browsing has been problematic for some Samba users, hence this document.
Browsing will NOT work if name resolution from NetBIOS names to IP -addresses does not function correctly. Use of a WINS server is highly +>MS Windows 2000 and later, as with Samba-3 and later, can be +configured to not use NetBIOS over TCP/IP. When configured this way +it is imperative that name resolution (using DNS/LDAP/ADS) be correctly +configured and operative. Browsing will NOT work if name resolution +from SMB machine names to IP addresses does not function correctly.
Where NetBIOS over TCP/IP is enabled use of a WINS server is highly recommended to aid the resolution of NetBIOS (SMB) names to IP addresses. WINS allows remote segment clients to obtain NetBIOS name_type information that can NOT be provided by any other means of name resolution.
Samba now fully supports browsing. The browsing is supported by nmbd -and is also controlled by options in the smb.conf file (see smb.conf(5)).
Samba can act as a local browse master for a workgroup and the ability -for samba to support domain logons and scripts is now available. See -DOMAIN.txt for more information on domain logons.
Samba facilitates browsing. The browsing is supported by nmbd +and is also controlled by options in the smb.conf file (see smb.conf(5)). +Samba can act as a local browse master for a workgroup and the ability +for samba to support domain logons and scripts is now available.Samba can also act as a domain master browser for a workgroup. This means that it will collate lists from local browse masters into a @@ -128,12 +131,12 @@ regardless of whether it is NT, Samba or any other type of domain master that is providing this service.
[Note that nmbd can be configured as a WINS server, but it is not -necessary to specifically use samba as your WINS server. NTAS can -be configured as your WINS server. In a mixed NT server and -samba environment on a Wide Area Network, it is recommended that -you use the NT server's WINS server capabilities. In a samba-only -environment, it is recommended that you use one and only one nmbd -as your WINS server].
To get browsing to work you need to run nmbd as usual, but will need to use the "workgroup" option in smb.conf to control what workgroup @@ -149,9 +152,9 @@ CLASS="SECT1" >
If something doesn't work then hopefully the log.nmb file will help you track down the problem. Try a debug level of 2 or 3 for finding @@ -167,6 +170,19 @@ filemanager should display the list of available shares.
MS Windows 2000 and upwards (as with Samba) can be configured to disallow +anonymous (ie: Guest account) access to the IPC$ share. In that case, the +MS Windows 2000/XP/2003 machine acting as an SMB/CIFS client will use the +name of the currently logged in user to query the IPC$ share. MS Windows +9X clients are not able to do this and thus will NOT be able to browse +server resources.
Also, a lot of people are getting bitten by the problem of too many parameters on the command line of nmbd in inetd.conf. This trick is to not use spaces between the option and the parameter (eg: -d2 instead @@ -183,11 +199,11 @@ CLASS="SECT1" >
With the release of Samba 1.9.17(alpha1 and above) Samba has been +>Since the release of Samba 1.9.17(alpha1) Samba has been updated to enable it to support the replication of browse lists across subnet boundaries. New code and options have been added to achieve this. This section describes how to set this feature up @@ -214,15 +230,14 @@ CLASS="SECT2" >
Cross subnet browsing is a complicated dance, containing multiple moving parts. It has taken Microsoft several years to get the code that achieves this correct, and Samba lags behind in some areas. -However, with the 1.9.17 release, Samba is capable of cross subnet -browsing when configured correctly.
Consider a network set up as follows :
Once N2_B knows the address of the Domain master browser it @@ -426,9 +441,9 @@ CLASS="SECT1" >
Either a Samba machine or a Windows NT Server machine may be set up as a WINS server. To set a Samba machine to be a WINS server you must @@ -440,9 +455,9 @@ CLASS="COMMAND" > wins support = yes
Versions of Samba previous to 1.9.17 had this parameter default to +>Versions of Samba prior to 1.9.17 had this parameter default to yes. If you have any older versions of Samba on your network it is -strongly suggested you upgrade to 1.9.17 or above, or at the very +strongly suggested you upgrade to a recent version, or at the very least set the parameter to 'no' on all these machines.
Machines with "
wins server = >name or IP address<wins server = >name or IP address<
where >name or IP address< is either the DNS name of the WINS server +>where >name or IP address< is either the DNS name of the WINS server machine or its IP address.
Note that this line MUST NOT BE SET in the smb.conf file of the Samba @@ -494,7 +509,7 @@ CLASS="COMMAND" >" option and the "wins server = >name<wins server = <name>" option then nmbd will fail to start.
To set up cross subnet browsing on a network containing machines in up to be in a WORKGROUP, not an NT Domain you need to set up one @@ -552,11 +567,12 @@ server, if you require.
Next, you should ensure that each of the subnets contains a machine that can act as a local master browser for the -workgroup. Any NT machine should be able to do this, as will -Windows 95 machines (although these tend to get rebooted more -often, so it's not such a good idea to use these). To make a -Samba server a local master browser set the following -options in the [global] section of the smb.conf file :
15.7. Setting up Browsing in a DOMAIN
15.7. Setting up Browsing in a DOMAINIf you are adding Samba servers to a Windows NT Domain then you must not set up a Samba server as a domain master browser. By default, a Windows NT Primary Domain Controller for a Domain name is also the Domain master browser for that name, and many things will break if a Samba server registers the Domain master -browser NetBIOS name (DOMAIN>1B<) with WINS instead of the PDC.
For subnets other than the one containing the Windows NT PDC you may set up Samba servers as local master browsers as @@ -644,9 +660,9 @@ CLASS="SECT1" >
15.8. Forcing samba to be the master
15.8. Forcing samba to be the masterWho becomes the "master browser" is determined by an election process using broadcasts. Each election packet contains a number of parameters @@ -659,8 +675,8 @@ option in smb.conf to a higher number. It defaults to 0. Using 34 would make it win all elections over every other system (except other samba systems!)
A "os level" of 2 would make it beat WfWg and Win95, but not NTAS. A -NTAS domain controller uses level 32.
A "os level" of 2 would make it beat WfWg and Win95, but not MS Windows +NT/2K Server. A MS Windows NT/2K Server domain controller uses level 32.The maximum os level is 255
15.9. Making samba the domain master
15.9. Making samba the domain masterThe domain master is responsible for collating the browse lists of multiple subnets so that browsing can occur between subnets. You can @@ -765,9 +781,9 @@ CLASS="SECT1" >
15.10. Note about broadcast addresses
15.10. Note about broadcast addressesIf your network uses a "0" based broadcast address (for example if it ends in a 0) then you will strike problems. Windows for Workgroups @@ -779,9 +795,9 @@ CLASS="SECT1" >
15.11. Multiple interfaces
15.11. Multiple interfacesSamba now supports machines with multiple network interfaces. If you have multiple interfaces then you will need to use the "interfaces" diff --git a/docs/htmldocs/install.html b/docs/htmldocs/install.html index e518e270bf..d596ba4fd9 100644 --- a/docs/htmldocs/install.html +++ b/docs/htmldocs/install.html @@ -5,7 +5,7 @@ >How to Install and Test SAMBA1.1. Read the man pages
The man pages distributed with SAMBA contain - lots of useful info that will help to get you started. - If you don't know how to read man pages then try - something like:
1.1. Obtaining and installing samba$ man smbd.8 - or - $ nroff -man smbd.8 | more - on older unixes.
Other sources of information are pointed to - by the Samba web site,Binary packages of samba are included in almost any Linux or + Unix distribution. There are also some packages available at + http://www.samba.org
To do this, first run the program ./configure - in the source directory. This should automatically - configure Samba for your operating system. If you have unusual - needs then you may wish to run
root# ./configure --help -
first to see what special options you can enable. - Then executing
root# make
will create the binaries. Once it's successfully - compiled you can use
root# make install
to install the binaries and manual pages. You can - separately install the binaries and/or man pages using
root# make installbin -
and
root# make installman -
Note that if you are upgrading for a previous version - of Samba you might like to know that the old versions of - the binaries will be renamed with a ".old" extension. You - can go back to the previous version with
root# make revert -
the samba homepage +if you find this version a disaster!
If you need to compile samba from source, check the + appropriate appendix chapter.At this stage you must fetch yourself a - coffee or other drink you find stimulating. Getting the rest - of the install right can sometimes be tricky, so you will - probably need it.
1.2. Configuring sambaIf you have installed samba before then you can skip - this step.
There are sample configuration files in the examples subdirectory in the distribution. I suggest you read them @@ -288,19 +172,18 @@ CLASS="FILENAME" >
For more information about security settings for the [homes] share please refer to the document UNIX_SECURITY.txt.
It's important that you test the validity of your smb.conf!
You must choose to start smbd and nmbd either - as daemons or from inetd. Don't try - to do both! Either you can put them in inetd.conf and have them started on demand - by inetd, or you can start them as - daemons either from the command line or in /etc/rc.local. See the man pages for details - on the command line options. Take particular care to read - the bit about what user you need to be in order to start - Samba. In many cases you must be root.
The main advantage of starting smbd - and nmbd using the recommended daemon method - is that they will respond slightly more quickly to an initial connection - request.
NOTE; The following will be different if - you use NIS or NIS+ to distributed services maps.
Look at your /etc/services. - What is defined at port 139/tcp. If nothing is defined - then add a line like this:
netbios-ssn 139/tcp
similarly for 137/udp you should have an entry like:
netbios-ns 137/udp
Next edit your /etc/inetd.conf - and add two lines something like this:
netbios-ssn stream tcp nowait root /usr/local/samba/bin/smbd smbd - netbios-ns dgram udp wait root /usr/local/samba/bin/nmbd nmbd -
The exact syntax of /etc/inetd.conf - varies between unixes. Look at the other entries in inetd.conf - for a guide.
NOTE: Some unixes already have entries like netbios_ns - (note the underscore) in /etc/services. - You must either edit /etc/services or - /etc/inetd.conf to make them consistent.
NOTE: On many systems you may need to use the - "interfaces" option in smb.conf to specify the IP address - and netmask of your interfaces. Run ifconfig - as root if you don't know what the broadcast is for your - net. nmbd tries to determine it at run - time, but fails on some unixes. See the section on "testing nmbd" - for a method of finding if you need to do this.
!!!WARNING!!! Many unixes only accept around 5 - parameters on the command line in inetd.conf. - This means you shouldn't use spaces between the options and - arguments, or you should use a script, and start the script - from inetd.
Restart inetd, perhaps just send - it a HUP. If you have installed an earlier version of nmbd then you may need to kill nmbd as well.
To start the server as a daemon you should create - a script something like this one, perhaps calling - it startsmb.
#!/bin/sh - /usr/local/samba/bin/smbd -D - /usr/local/samba/bin/nmbd -D -
then make it executable with chmod - +x startsmb
You can then run startsmb by - hand or execute it from /etc/rc.local -
To kill it send a kill signal to the processes - nmbd and smbd.
NOTE: If you use the SVR4 style init system then - you may like to look at the examples/svr4-startup - script to make Samba fit into that system.
1.2.2. SWATSWAT is a web-based interface that helps you configure samba. + SWAT might not be available in the samba package on your platform, + but in a seperate package. Please read the swat manpage + on compiling, installing and configuring swat from source. +
To launch SWAT just run your favorite web browser and + point it at "http://localhost:901/". Replace localhost with the name of the computer you are running samba on if you + are running samba on a different computer then your browser.
Note that you can attach to SWAT from any IP connected + machine but connecting from a remote machine leaves your + connection open to password sniffing as passwords will be sent + in the clear over the wire.
$ $ smbclient -L - yourhostnameyourhostname
You should get back a list of shares available on @@ -566,39 +273,31 @@ CLASS="SECT1" >
$ $ smbclient smbclient //yourhostname/aservice //yourhostname/aservice
Typically the Typically the yourhostnameyourhostname would be the name of the host where you installed smbd. The . The aserviceaservice is any service you have defined in the For example if your unix host is bambi and your login name is fred you would type:
$ $ smbclient //bambi/fred -
Try mounting disks. eg:
C:\WINDOWS\> C:\WINDOWS\> net use d: \\servername\service -
Try printing. eg:
C:\WINDOWS\> C:\WINDOWS\> net use lpt1: - \\servername\spoolservice
C:\WINDOWS\> C:\WINDOWS\> print filename -
Celebrate, or send me a bug report!
If nothing works and you start to think "who wrote - this pile of trash" then I suggest you do step 2 again (and - again) till you calm down.
1.6. What If Things Don't Work?Then you might read the file DIAGNOSIS.txt and the +>Then you might read the file HOWTO chapter Diagnosis and the FAQ. If you are still stuck then try the mailing list or newsgroup (look in the README for details). Samba has been successfully installed at thousands of sites worldwide, so maybe someone else has hit your problem and has overcome it. You could also use the WWW site to scan back issues of the samba-digest.
When you fix the problem PLEASE send me some updates to the - documentation (or source code) so that the next person will find it - easier.
If you have installation problems then go to the - Diagnosis chapter to try to find the - problem.
By default Samba uses a blank scope ID. This means all your windows boxes must also have a blank scope ID. If you really want to use a non-blank scope ID then you will need to use the 'netbios scope' smb.conf option. - All your PCs will need to have the same setting for + All your PCs will need to have the same setting for this to work. I do not recommend scope IDs.
The SMB protocol has many dialects. Currently - Samba supports 5, called CORE, COREPLUS, LANMAN1, - LANMAN2 and NT1.
You can choose what maximum protocol to support - in the smb.conf file. The default is - NT1 and that is the best for the vast majority of sites.
In older versions of Samba you may have found it - necessary to use COREPLUS. The limitations that led to - this have mostly been fixed. It is now less likely that you - will want to use less than LANMAN1. The only remaining advantage - of COREPLUS is that for some obscure reason WfWg preserves - the case of passwords in this protocol, whereas under LANMAN1, - LANMAN2 or NT1 it uppercases all passwords before sending them, - forcing you to use the "password level=" option in some cases.
The main advantage of LANMAN2 and NT1 is support for - long filenames with some clients (eg: smbclient, Windows NT - or Win95).
See the smb.conf(5) manual page for more details.
Note: To support print queue reporting you may find - that you have to use TCP/IP as the default protocol under - WfWg. For some reason if you leave Netbeui as the default - it may break the print queue reporting on some systems. - It is presumably a WfWg bug.
To use a printer that is available via a smb-based - server from a unix host with LPR you will need to compile the - smbclient program. You then need to install the script - "smbprint". Read the instruction in smbprint for more details. -
There is also a SYSV style script that does much - the same thing called smbprint.sysv. It contains instructions.
See the CUPS manual for information about setting up - printing from a unix host with CUPS to a smb-based server.
To identify the key functional mechanisms of MS Windows networking to enable the deployment of Samba as a means of extending and/or @@ -147,9 +147,9 @@ CLASS="SECT1" >
The key configuration files covered in this section are:
Contains a static list of IP Addresses and names. @@ -270,11 +270,11 @@ CLASS="SECT2" >
This file tells the name resolution libraries:
This file controls the actual name resolution targets. The @@ -406,9 +406,9 @@ CLASS="SECT1" >
MS Windows networking is predicated about the name each machine is given. This name is known variously (and inconsistently) as @@ -428,16 +428,16 @@ the client/server.
Unique NetBIOS Names: - MACHINENAME<00> = Server Service is running on MACHINENAME - MACHINENAME<03> = Generic Machine Name (NetBIOS name) - MACHINENAME<20> = LanMan Server service is running on MACHINENAME - WORKGROUP<1b> = Domain Master Browser + MACHINENAME<00> = Server Service is running on MACHINENAME + MACHINENAME<03> = Generic Machine Name (NetBIOS name) + MACHINENAME<20> = LanMan Server service is running on MACHINENAME + WORKGROUP<1b> = Domain Master Browser Group Names: - WORKGROUP<03> = Generic Name registered by all members of WORKGROUP - WORKGROUP<1c> = Domain Controllers / Netlogon Servers - WORKGROUP<1d> = Local Master Browsers - WORKGROUP<1e> = Internet Name Resolvers
It should be noted that all NetBIOS machines register their own @@ -456,7 +456,7 @@ be needed. An example of this is what happens when an MS Windows client wants to locate a domain logon server. It find this service and the IP address of a server that provides it by performing a lookup (via a NetBIOS broadcast) for enumeration of all machines that have -registered the name type *<1c>. A logon request is then sent to each +registered the name type *<1c>. A logon request is then sent to each IP address that is returned in the enumerated list of IP addresses. Which ever machine first replies then ends up providing the logon services.
All MS Windows machines employ an in memory buffer in which is stored the NetBIOS names and IP addresses for all external @@ -518,9 +518,9 @@ CLASS="SECT2" >
This file is usually located in MS Windows NT 4.0 or
2000 in 9.3.3. HOSTS file
9.3.3. HOSTS file
This file is usually located in MS Windows NT 4.0 or 2000 in
9.3.4. DNS Lookup
9.3.4. DNS Lookup
This capability is configured in the TCP/IP setup area in the network configuration facility. If enabled an elaborate name resolution sequence @@ -663,9 +663,9 @@ CLASS="SECT2" >
A WINS (Windows Internet Name Server) service is the equivaent of the rfc1001/1002 specified NBNS (NetBIOS Name Server). A WINS server stores @@ -692,11 +692,9 @@ CLASS="PROGRAMLISTING" wins server = xxx.xxx.xxx.xxx
where where xxx.xxx.xxx.xxxxxx.xxx.xxx.xxx is the IP address of the WINS server.
As stated above, MS Windows machines register their NetBIOS names (i.e.: the machine name for each service type in operation) on start @@ -773,10 +771,10 @@ CLASS="SECT1" >
MS Windows clients may use encrypted passwords as part of a challenege/response authentication model (a.k.a. NTLMv1) or @@ -845,43 +843,35 @@ CLASS="PROGRAMLISTING" HREF="smb.conf.5.html#PASSWORDLEVEL" TARGET="_top" >passsword level = = integerinteger username level = = integerinteger
By default Samba will lower case the username before attempting to lookup the user in the database of local system accounts. Because UNIX usernames conventionally only contain lower case -character, the username levelusername level parameter is rarely even needed.
However, password on UNIX systems often make use of mixed case characters. This means that in order for a user on a Windows 9x client to connect to a Samba server using clear text authentication, -the password levelpassword level must be set to the maximum number of upper case letter which appear is a password. Note that is the server OS uses the traditional -DES version of crypt(), then a password levelpassword level of 8 will result in case insensitive passwords as seen from Windows users. This will also result in longer login times as Samba @@ -910,9 +898,9 @@ CLASS="SECT2" >
This method involves the additions of the following parameters in the smb.conf file:
This method involves additon of the following paramters in the smb.conf file:
This mode of authentication demands that there be on the Unix/Linux system both a Unix style account as well as an @@ -1046,9 +1034,9 @@ CLASS="SECT3" >
A user account that may provide a home directory should be created. The following Linux system commands are typical of @@ -1058,10 +1046,10 @@ the procedure for creating an account.
# useradd -s /bin/bash -d /home/"userid" -m "userid" # passwd "userid" - Enter Password: <pw> + Enter Password: <pw> # smbpasswd -a "userid" - Enter Password: <pw>These are required only when Samba is used as a domain controller. Refer to the Samba-PDC-HOWTO for more details.
Samba provides a flexible means to operate as...
General installation
The Distributed File System (or Dfs) provides a means of separating the logical view of files and directories that users @@ -99,21 +99,17 @@ TARGET="_top" machine (for Dfs-aware clients to browse) using Samba.
To enable SMB-based DFS for Samba, configure it with the - --with-msdfs--with-msdfs option. Once built, a Samba server can be made a Dfs server by setting the global boolean host msdfs host msdfs parameter in the msdfs root msdfs root parameter. A Dfs root directory on Samba hosts Dfs links in the form of symbolic links that point to other servers. For example, a symbolic link junction->msdfs:storage1\share1junction->msdfs:storage1\share1 in the share directory acts as the Dfs junction. When Dfs-aware clients attempt to access the junction link, they are redirected @@ -162,54 +156,44 @@ CLASS="PROGRAMLISTING" >In the /export/dfsroot directory we set up our dfs links to other servers on the network.
root# root# cd /export/dfsrootcd /export/dfsroot
root# root# chown root /export/dfsrootchown root /export/dfsroot
root# root# chmod 755 /export/dfsrootchmod 755 /export/dfsroot
root# root# ln -s msdfs:storageA\\shareA linkaln -s msdfs:storageA\\shareA linka
root# root# ln -s msdfs:serverB\\share,serverC\\share linkbln -s msdfs:serverB\\share,serverC\\share linkb
You should set up the permissions and ownership of @@ -229,9 +213,9 @@ CLASS="SECT2" >
delete specified user
list the domain groups of the specified user
Add specified user @@ -345,14 +345,14 @@ CLASS="VARIABLELIST"
Delete specified group
Create specified group @@ -366,14 +366,14 @@ CLASS="VARIABLELIST"
Adds a share from a server (makes the export active)
NetBIOS lmhosts file. The lmhosts @@ -253,12 +253,10 @@ CLASS="COMMAND" resolution mechanism name resolve - order described in .
debuglevel is an integer @@ -344,11 +342,9 @@ CLASS="COMMAND" the log levellog level parameter in the file.
The -l parameter specifies a directory @@ -395,7 +391,7 @@ CLASS="COMMAND"
This option allows you to override @@ -403,12 +399,10 @@ CLASS="COMMAND" to setting the NetBIOS - name parameter in the .
UDP port number is a positive integer value. @@ -440,7 +434,7 @@ CLASS="COMMAND" won't need help!
The default configuration file name
@@ -565,9 +559,9 @@ CLASS="FILENAME"
wins support
wins support
parameter in the (see the local master
local master
parameter in the nmblookupnmblookup [-M] [-R] [-S] [-r] [-A] [-h] [-B <broadcast address>] [-U <unicast address>] [-d <debug level>] [-s <smb config file>] [-i <NetBIOS scope>] [-T] [-f] {name}
Searches for a master browser by looking - up the NetBIOS name namename with a - type of 0x1d. If 0x1d. If name name is "-" then it does a lookup on the special name - __MSBROWSE____MSBROWSE__.
Interpret Interpret namename as an IP Address and do a node status query on this address.
Send the query to the given broadcast address. Without @@ -169,11 +163,9 @@ CLASS="REPLACEABLE" either auto-detected or defined in the interfacesinterfaces parameter of the
Do a unicast query to the specified address or - host unicast addressunicast address. This option - (along with the -R-R option) is needed to query a WINS server.
debuglevel is an integer from 0 to 10.
log level log level parameter in the file.This parameter specifies the pathname to @@ -253,7 +239,7 @@ TARGET="_top" the Samba setup on the machine.
This specifies a NetBIOS scope that @@ -307,7 +293,7 @@ CLASS="EMPHASIS" >This is the NetBIOS name being queried. Depending upon the previous options this may be a NetBIOS name or IP address. If a NetBIOS name then the different name types may be specified - by appending '#<type>' to the name. This name may also be + by appending '#<type>' to the name. This name may also be '*', which will return all registered names within a broadcast area.
When a client opens a file it can request an "oplock" or file -lease. This is (to simplify a bit) a guarentee that no one else -has the file open simultaneously. It allows the client to not -send any updates on the file to the server, thus reducing a -network file access to local access (once the file is in -client cache). An "oplock break" is when the server sends -a request to the client to flush all its changes back to -the server, so the file is in a consistent state for other -opens to succeed. If a client fails to respond to this -asynchronous request then the file can be corrupted. Hence -the "turn off oplocks" answer if people are having multi-user -file access problems.
Unless the kernel is "oplock aware" (SGI IRIX and Linux are -the only two UNIXes that are at the moment) then if a local -UNIX process accesses the file simultaneously then Samba -has no way of telling this is occuring, so the guarentee -to the client is broken. This can corrupt the file. Short -answer - it you have UNIX clients accessing the same file -as smbd locally or via NFS and you're not running Linux or -IRIX then turn off oplocks for that file or share.
"Share modes". These are modes of opening a file, that -guarentee an invarient - such as DENY_WRITE - which means -that if any other opens are requested with write access after -this current open has succeeded then they should be denied -with a "sharing violation" error message. Samba handles these -internally inside smbd. UNIX clients accessing the same file -ignore these invarients. Just proving that if you need simultaneous -file access from a Windows and UNIX client you *must* have an -application that is written to lock records correctly on both -sides. Few applications are written like this, and even fewer -are cross platform (UNIX and Windows) so in practice this isn't -much of a problem.
"Locking". This really means "byte range locking" - such as -lock 10 bytes at file offset 24 for write access. This is the -area in which well written UNIX and Windows apps will cooperate. -Windows locks (at least from NT or above) are 64-bit unsigned -offsets. UNIX locks are either 31 bit or 63 bit and are signed -(the top bit is used for the sign). Samba handles these by -first ensuring that all the Windows locks don't conflict (ie. -if other Windows clients have competing locks then just reject -immediately) - this allows us to support 64-bit Windows locks -on 32-bit filesystems. Secondly any locks that are valid are -then mapped onto UNIX fcntl byte range locks. These are the -locks that will be seen by UNIX processes. If there is a conflict -here the lock is rejected.
Note that if a client has an oplock then it "knows" that no -other client can have the file open so usually doesn't bother -to send to lock request to the server - this means once again -if you need to share files between UNIX and Windows processes -either use IRIX or Linux, or turn off oplocks for these -files/shares.
Prev | Home | Next |
Improved browsing in samba | Up | Quick Cross Subnet Browsing / Cross Workgroup Browsing guide |
Yes. 22.2. OS2 Client
22.2. OS2 Client
A more complete answer to this question can be
found on You can use the free Microsoft LAN Manager 2.2c Client
for OS/2 from
@@ -239,10 +239,10 @@ CLASS="SECT2"
> When you do a NET VIEW or use the "File and Print
Client Resource Browser", no Samba servers show up. This can
@@ -261,10 +261,10 @@ CLASS="SECT2"
> First, create a share called [PRINTDRV] that is
world-readable. Copy your OS/2 driver files there. Note
@@ -274,17 +274,13 @@ NAME="AEN3350"
> Install the NT driver first for that printer. Then,
add to your smb.conf a parameter, os2 driver map =
- filenamefilename". Then, in the file
- specified by filenamefilename, map the
name of the NT driver name to the OS/2 driver name as
follows:22.2.2. How can I configure OS/2 Warp 3 (not Connect),
- OS/2 1.2, 1.3 or 2.x for Samba?
22.2.3. Are there any other issues when OS/2 (any version)
- is used as a client?
22.2.4. How do I get printer driver download working
- for OS/2 clients?
22.3. Windows for Workgroups
22.3. Windows for Workgroups
Use the latest TCP/IP stack from microsoft if you use Windows for workgroups.
WfWg does a lousy job with passwords. I find that if I change my password on either the unix box or the PC the safest thing to do is to @@ -362,9 +358,9 @@ CLASS="SECT2" >
There is a program call admincfg.exe on the last disk (disk 8) of the WFW 3.11 disk set. To install it @@ -381,9 +377,9 @@ CLASS="SECT2" >
Windows for Workgroups uppercases the password before sending it to the server. Unix passwords can be case-sensitive though. Check the password level to specify what characters samba should try to uppercase when checking.
To support print queue reporting you may find +that you have to use TCP/IP as the default protocol under +WfWg. For some reason if you leave Netbeui as the default +it may break the print queue reporting on some systems. +It is presumably a WfWg bug.
When using Windows 95 OEM SR2 the following updates are recommended where Samba is being used. Please NOTE that the above change will affect you once these @@ -448,9 +459,9 @@ CLASS="SECT1" >
There are several annoyances with Windows 2000 SP2. One of which @@ -560,7 +571,7 @@ WIDTH="33%" ALIGN="right" VALIGN="top" >NextReporting BugsHow to compile SAMBA
Samba has several features that you might want or might not want to use. The chapters in this -part each cover one specific feature.
This part contains general info on how to install samba -and how to configure the parts of samba you will most likely need. -PLEASE read this.
This part contains information on using samba in a (NT 4 or ADS) domain. -If you wish to run samba as a domain member or DC, read the appropriate chapter in -this part.
Prev | Home | Next |
LanMan and NT Password Encryption in Samba | How to Configure Samba as a NT4 Primary Domain Controller |
A number of Unix systems (eg: Sun Solaris), as well as the xxxxBSD family and Linux, now utilize the Pluggable Authentication @@ -296,9 +296,9 @@ CLASS="SECT1" >
The astute administrator will realize from this that the
combination of 11.3. PAM Configuration in smb.conf
11.3. PAM Configuration in smb.conf
There is an option in smb.conf called When Samba 2.2 is configure to enable PAM support (i.e.
---with-pam--with-pam), this parameter will
control whether or not Samba should obey PAM's account
and session management directives. The default behavior
diff --git a/docs/htmldocs/passdb.html b/docs/htmldocs/passdb.html
index f53641624a..7a8fb7fdec 100644
--- a/docs/htmldocs/passdb.html
+++ b/docs/htmldocs/passdb.html
@@ -5,7 +5,7 @@
>User information database3.1. Introduction
3.1. Introduction
Old windows clients send plain text passwords over the wire. Samba can check these passwords by crypting them and comparing them @@ -121,9 +121,9 @@ CLASS="SECT1" >
The unix and SMB password encryption techniques seem similar on the surface. This similarity is, however, only skin deep. The unix @@ -229,9 +229,9 @@ CLASS="SECT2" >
Note that Windows NT 4.0 Service pack 3 changed the - default for permissible authentication so that plaintext - passwords are never sent over the wire. - The solution to this is either to switch to encrypted passwords - with Samba or edit the Windows NT registry to re-enable plaintext - passwords. See the document WinNT.txt for details on how to do - this. Other Microsoft operating systems which also exhibit - this behavior includes
Note :All current release of - Microsoft SMB/CIFS clients support authentication via the - SMB Challenge/Response mechanism described here. Enabling - clear text authentication does not disable the ability - of the client to participate in encrypted authentication. |
plain text passwords are not passed across - the network. Someone using a network sniffer cannot just - record passwords going to the SMB server.
WinNT doesn't like talking to a server - that isn't using SMB encrypted passwords. It will refuse - to browse the server if the server is also in user level - security mode. It will insist on prompting the user for the - password on each connection, which is very annoying. The - only things you can do to stop this is to use SMB encryption. -
plain text passwords are not kept - on disk.
uses same password file as other unix - services such as login and ftp
you are probably already using other - services (such as telnet and ftp) which send plain text - passwords over the net, so sending them for SMB isn't - such a big deal.
The smbpasswd command maintains the two 32 byte password fields - in the smbpasswd file. If you wish to make it similar to the unix - passwd or yppasswd programs, - install it in /usr/local/samba/bin/ (or your - main Samba binary directory).
smbpasswd now works in a client-server mode - where it contacts the local smbd to change the user's password on its - behalf. This has enormous benefits - as follows.
smbpasswd now has the capability - to change passwords on Windows NT servers (this only works when - the request is sent to the NT Primary Domain Controller if you - are changing an NT Domain user's password).
To run smbpasswd as a normal user just type :
$ smbpasswd
Old SMB password: <type old value here - - or hit return if there was no old password>
New SMB Password: <type new value> -
Repeat New SMB Password: <re-type new value -
If the old value does not match the current value stored for - that user, or the two new values do not match each other, then the - password will not be changed.
If invoked by an ordinary user it will only allow the user - to change his or her own Samba password.
If run by the root user smbpasswd may take an optional - argument, specifying the user name whose SMB password you wish to - change. Note that when run as root smbpasswd does not prompt for - or check the old password value, thus allowing root to set passwords - for users who have forgotten their passwords.
smbpasswd is designed to work in the same way - and be familiar to UNIX users who use the passwd or - yppasswd commands.
For more details on using smbpasswd refer - to the man page which will always be the definitive reference.
username = <value> -password = <value> -domain = <value>username = <value> +password = <value> +domain = <value>
Make certain that the permissions on the file restrict @@ -136,11 +134,9 @@ domain = <value>-d|--debug=debuglevel
debugleveldebuglevel is an integer from 0 to 10. The default value if this parameter is not specified is zero.
-I IP-addressIP addressIP address is the address of the server to connect to. It should be specified in standard "a.b.c.d" notation.
Normally the client would attempt to locate a named SMB/CIFS server by looking it up via the NetBIOS name resolution - mechanism described above in the name resolve ordername resolve order parameter above. Using this parameter will force the client to assume that the server is on the machine with the specified IP @@ -207,9 +199,9 @@ CLASS="PARAMETER" >
File name for log/debug files. The extension - '.client''.client' will be appended. The log file is never removed by the client.
rpcclient will - prompt for a password. See also the -U-U option.If %password is not specified, the user will be prompted. The - client will first check the USERUSER environment variable, then the - LOGNAMELOGNAME variable and if either exists, the string is uppercased. If these environmental variables are not - found, the username GUESTGUEST is used.
A third option is to use a credentials file which @@ -271,11 +261,9 @@ CLASS="CONSTANT" wish to pass the credentials on the command line or via environment variables. If this method is used, make certain that the permissions on the file restrict access from unwanted users. See the - -A-A for more details.
Be cautious about including passwords in scripts. Also, on @@ -441,7 +429,7 @@ CLASS="EMPHASIS" >
adddriver <arch> <config>adddriver <arch> <config> - Execute an AddPrinterDriver() RPC to install the printer driver information on the server. Note that the driver files should @@ -450,21 +438,17 @@ CLASS="COMMAND" CLASS="COMMAND" >getdriverdir. Possible values for - archarch are the same as those for the getdriverdir command. - The configconfig parameter is defined as follows:
addprinter <printername> - <sharename> <drivername> <port>addprinter <printername> + <sharename> <drivername> <port> - Add a printer on the remote server. This printer will be automatically shared. Be aware that the printer driver @@ -502,11 +486,9 @@ CLASS="COMMAND" CLASS="COMMAND" >adddriver) - and the portportmust be a valid port name (see
enumjobs <printer>enumjobs <printer> - List the jobs and status of a given printer. This command corresponds to the MS Platform SDK EnumJobs() @@ -582,7 +564,7 @@ CLASS="COMMAND" >
getdata <printername>getdata <printername> - Retrieve the data for a given printer setting. See the
getdriver <printername>getdriver <printername> - Retrieve the printer driver information (such as driver file, config file, dependent files, etc...) for @@ -608,16 +590,14 @@ CLASS="COMMAND" >
getdriverdir <arch>getdriverdir <arch> - Execute a GetPrinterDriverDirectory() RPC to retrieve the SMB share name and subdirectory for storing printer driver files for a given architecture. Possible - values for archarch are "Windows 4.0" (for Windows 95/98), "Windows NT x86", "Windows NT PowerPC", "Windows Alpha_AXP", and "Windows NT R4000".
getprinter <printername>getprinter <printername> - Retrieve the current printer information. This command corresponds to the GetPrinter() MS Platform SDK function. @@ -636,7 +616,7 @@ CLASS="COMMAND" >
openprinter <printername>openprinter <printername> - Execute an OpenPrinterEx() and ClosePrinter() RPC against a given printer.
setdriver <printername> - <drivername>setdriver <printername> + <drivername> - Execute a SetPrinter() command to update the printer driver associated with an installed printer. The printer driver must diff --git a/docs/htmldocs/samba-bdc.html b/docs/htmldocs/samba-bdc.html index 42f653fb7d..c0c1805f8f 100644 --- a/docs/htmldocs/samba-bdc.html +++ b/docs/htmldocs/samba-bdc.html @@ -5,7 +5,7 @@ >How to Act as a Backup Domain Controller in a Purely Samba Controlled Domain
Before you continue reading in this chapter, please make sure that you are comfortable with configuring a Samba PDC @@ -97,9 +97,9 @@ CLASS="SECT1" >
What is a Domain Controller? It is a machine that is able to answer logon requests from workstations in a Windows NT Domain. Whenever a @@ -142,9 +142,9 @@ CLASS="SECT1" >
Every machine that is a Domain Controller for the domain SAMBA has to register the NetBIOS group name SAMBA#1c with the WINS server and/or @@ -159,9 +159,9 @@ CLASS="SECT2" >
A NT workstation in the domain SAMBA that wants a local user to be authenticated has to find the domain controller for SAMBA. It does @@ -178,9 +178,9 @@ CLASS="SECT2" >
Whenever a user wants to change his password, this has to be done on the PDC. To find the PDC, the workstation does a NetBIOS name query @@ -194,9 +194,9 @@ CLASS="SECT1" >
With version 2.2, no. The native NT SAM replication protocols have not yet been fully implemented. The Samba Team is working on @@ -217,9 +217,9 @@ CLASS="SECT1" >
Several things have to be done:
Replication of the smbpasswd file is sensitive. It has to be done whenever changes to the SAM are made. Every user's password change is @@ -305,9 +305,9 @@ CLASS="SECT2" >
The simple answer is YES. Samba's pdb_ldap code supports binding to a replica LDAP server, and will also follow referrals and diff --git a/docs/htmldocs/samba-howto-collection.html b/docs/htmldocs/samba-howto-collection.html index 82e29206ac..51b4fddcba 100644 --- a/docs/htmldocs/samba-howto-collection.html +++ b/docs/htmldocs/samba-howto-collection.html @@ -5,7 +5,7 @@ >SAMBA Project DocumentationSAMBA Project DocumentationSAMBA Project Documentation
This document describes how to use an LDAP directory for storing Samba user -account information traditionally stored in the smbpasswd(5) file. It is -assumed that the reader already has a basic understanding of LDAP concepts -and has a working directory server already installed. For more information -on LDAP architectures and Directories, please refer to the following sites.
OpenLDAP - http://www.openldap.org/
iPlanet Directory Server - http://iplanet.netscape.com/directory
Note that O'Reilly Publishing is working on -a guide to LDAP for System Administrators which has a planned release date of -early summer, 2002.
Two additional Samba resources which may prove to be helpful are
The Samba-PDC-LDAP-HOWTO - maintained by Ignacio Coupeau.
The NT migration scripts from IDEALX that are - geared to manage users and group in such a Samba-LDAP Domain Controller configuration. -
Traditionally, when configuring "encrypt -passwords = yes" in Samba's smb.conf file, user account -information such as username, LM/NT password hashes, password change times, and account -flags have been stored in the smbpasswd(5) file. There are several -disadvantages to this approach for sites with very large numbers of users (counted -in the thousands).
The first is that all lookups must be performed sequentially. Given that -there are approximately two lookups per domain logon (one for a normal -session connection such as when mapping a network drive or printer), this -is a performance bottleneck for lareg sites. What is needed is an indexed approach -such as is used in databases.
The second problem is that administrators who desired to replicate a -smbpasswd file to more than one Samba server were left to use external -tools such as rsync(1) and ssh(1) -and wrote custom, in-house scripts.
And finally, the amount of information which is stored in an -smbpasswd entry leaves no room for additional attributes such as -a home directory, password expiration time, or even a Relative -Identified (RID).
As a result of these defeciencies, a more robust means of storing user attributes -used by smbd was developed. The API which defines access to user accounts -is commonly referred to as the samdb interface (previously this was called the passdb -API, and is still so named in the CVS trees). In Samba 2.2.3, enabling support -for a samdb backend (e.g. --with-ldapsam or ---with-tdbsam) requires compile time support.
When compiling Samba to include the --with-ldapsam autoconf -option, smbd (and associated tools) will store and lookup user accounts in -an LDAP directory. In reality, this is very easy to understand. If you are -comfortable with using an smbpasswd file, simply replace "smbpasswd" with -"LDAP directory" in all the documentation.
There are a few points to stress about what the --with-ldapsam -does not provide. The LDAP support referred to in the this documentation does not -include:
A means of retrieving user account information from - an Windows 2000 Active Directory server.
A means of replacing /etc/passwd.
The second item can be accomplished by using LDAP NSS and PAM modules. LGPL -versions of these libraries can be obtained from PADL Software -(http://www.padl.com/). However, -the details of configuring these packages are beyond the scope of this document.
The LDAP samdb code in 2.2.3 has been developed and tested using the OpenLDAP -2.0 server and client libraries. The same code should be able to work with -Netscape's Directory Server and client SDK. However, due to lack of testing -so far, there are bound to be compile errors and bugs. These should not be -hard to fix. If you are so inclined, please be sure to forward all patches to -samba-patches@samba.org and -jerry@samba.org.
Samba 2.2.3 includes the necessary schema file for OpenLDAP 2.0 in -examples/LDAP/samba.schema. (Note that this schema -file has been modified since the experimental support initially included -in 2.2.2). The sambaAccount objectclass is given here:
objectclass ( 1.3.1.5.1.4.1.7165.2.2.2 NAME 'sambaAccount' SUP top STRUCTURAL - DESC 'Samba Account' - MUST ( uid $ rid ) - MAY ( cn $ lmPassword $ ntPassword $ pwdLastSet $ logonTime $ - logoffTime $ kickoffTime $ pwdCanChange $ pwdMustChange $ acctFlags $ - displayName $ smbHome $ homeDrive $ scriptPath $ profilePath $ - description $ userWorkstations $ primaryGroupID $ domain ))
The samba.schema file has been formatted for OpenLDAP 2.0. The OID's are -owned by the Samba Team and as such is legal to be openly published. -If you translate the schema to be used with Netscape DS, please -submit the modified schema file as a patch to jerry@samba.org
Just as the smbpasswd file is mean to store information which supplements a -user's /etc/passwd entry, so is the sambaAccount object -meant to supplement the UNIX user account information. A sambaAccount is a -STRUCTURAL objectclass so it can be stored individually -in the directory. However, there are several fields (e.g. uid) which overlap -with the posixAccount objectclass outlined in RFC2307. This is by design.
In order to store all user account information (UNIX and Samba) in the directory, -it is necessary to use the sambaAccount and posixAccount objectclasses in -combination. However, smbd will still obtain the user's UNIX account -information via the standard C library calls (e.g. getpwnam(), et. al.). -This means that the Samba server must also have the LDAP NSS library installed -and functioning correctly. This division of information makes it possible to -store all Samba account information in LDAP, but still maintain UNIX account -information in NIS while the network is transitioning to a full LDAP infrastructure.
To include support for the sambaAccount object in an OpenLDAP directory -server, first copy the samba.schema file to slapd's configuration directory.
root# cp samba.schema /etc/openldap/schema/
Next, include the samba.schema file in slapd.conf. -The sambaAccount object contains two attributes which depend upon other schema -files. The 'uid' attribute is defined in cosine.schema and -the 'displayName' attribute is defined in the inetorgperson.schema -file. Both of these must be included before the samba.schema file.
## /etc/openldap/slapd.conf - -## schema files (core.schema is required by default) -include /etc/openldap/schema/core.schema - -## needed for sambaAccount -include /etc/openldap/schema/cosine.schema -include /etc/openldap/schema/inetorgperson.schema -include /etc/openldap/schema/samba.schema - -## uncomment this line if you want to support the RFC2307 (NIS) schema -## include /etc/openldap/schema/nis.schema - -....
It is recommended that you maintain some indices on some of the most usefull attributes, -like in the following example, to speed up searches made on sambaAccount objectclasses -(and possibly posixAccount and posixGroup as well).
# Indices to maintain -## required by OpenLDAP 2.0 -index objectclass eq - -## support pb_getsampwnam() -index uid pres,eq -## support pdb_getsambapwrid() -index rid eq - -## uncomment these if you are storing posixAccount and -## posixGroup entries in the directory as well -##index uidNumber eq -##index gidNumber eq -##index cn eq -##index memberUid eq
The following parameters are available in smb.conf only with --with-ldapsam -was included with compiling Samba.
These are described in the smb.conf(5) man -page and so will not be repeated here. However, a sample smb.conf file for -use with an LDAP directory could appear as
## /usr/local/samba/lib/smb.conf -[global] - security = user - encrypt passwords = yes - - netbios name = TASHTEGO - workgroup = NARNIA - - # ldap related parameters - - # define the DN to use when binding to the directory servers - # The password for this DN is not stored in smb.conf. Rather it - # must be set by using 'smbpasswd -w secretpw' to store the - # passphrase in the secrets.tdb file. If the "ldap admin dn" values - # changes, this password will need to be reset. - ldap admin dn = "cn=Samba Manager,ou=people,dc=samba,dc=org" - - # specify the LDAP server's hostname (defaults to locahost) - ldap server = ahab.samba.org - - # Define the SSL option when connecting to the directory - # ('off', 'start tls', or 'on' (default)) - ldap ssl = start tls - - # define the port to use in the LDAP session (defaults to 636 when - # "ldap ssl = on") - ldap port = 389 - - # specify the base DN to use when searching the directory - ldap suffix = "ou=people,dc=samba,dc=org" - - # generally the default ldap search filter is ok - # ldap filter = "(&(uid=%u)(objectclass=sambaAccount))"
As users accounts are managed thru the sambaAccount objectclass, you should -modify you existing administration tools to deal with sambaAccount attributes.
Machines accounts are managed with the sambaAccount objectclass, just -like users accounts. However, it's up to you to stored thoses accounts -in a different tree of you LDAP namespace: you should use -"ou=Groups,dc=plainjoe,dc=org" to store groups and -"ou=People,dc=plainjoe,dc=org" to store users. Just configure your -NSS and PAM accordingly (usually, in the /etc/ldap.conf configuration -file).
In Samba release 2.2.3, the group management system is based on posix -groups. This meand that Samba make usage of the posixGroup objectclass. -For now, there is no NT-like group system management (global and local -groups).
There are two important points to remember when discussing the security -of sambaAccount entries in the directory.
Never retrieve the lmPassword or - ntPassword attribute values over an unencrypted LDAP session.
Never allow non-admin users to - view the lmPassword or ntPassword attribute values.
These password hashes are clear text equivalents and can be used to impersonate -the user without deriving the original clear text strings. For more information -on the details of LM/NT password hashes, refer to the ENCRYPTION chapter of the Samba-HOWTO-Collection.
To remedy the first security issue, the "ldap ssl" smb.conf parameter defaults -to require an encrypted session (ldap ssl = on) using -the default port of 636 -when contacting the directory server. When using an OpenLDAP 2.0 server, it -is possible to use the use the StartTLS LDAP extended operation in the place of -LDAPS. In either case, you are strongly discouraged to disable this security -(ldap ssl = off).
Note that the LDAPS protocol is deprecated in favor of the LDAPv3 StartTLS -extended operation. However, the OpenLDAP library still provides support for -the older method of securing communication between clients and servers.
The second security precaution is to prevent non-administrative users from -harvesting password hashes from the directory. This can be done using the -following ACL in slapd.conf:
## allow the "ldap admin dn" access, but deny everyone else -access to attrs=lmPassword,ntPassword - by dn="cn=Samba Admin,ou=people,dc=plainjoe,dc=org" write - by * none
The sambaAccount objectclass is composed of the following attributes:
lmPassword: the LANMAN password 16-byte hash stored as a character - representation of a hexidecimal string.
ntPassword: the NT password hash 16-byte stored as a character - representation of a hexidecimal string.
pwdLastSet: The integer time in seconds since 1970 when the - lmPassword and ntPassword attributes were last set. -
acctFlags: string of 11 characters surrounded by square brackets [] - representing account flags such as U (user), W(workstation), X(no password expiration), and - D(disabled).
logonTime: Integer value currently unused
logoffTime: Integer value currently unused
kickoffTime: Integer value currently unused
pwdCanChange: Integer value currently unused
pwdMustChange: Integer value currently unused
homeDrive: specifies the drive letter to which to map the - UNC path specified by homeDirectory. The drive letter must be specified in the form "X:" - where X is the letter of the drive to map. Refer to the "logon drive" parameter in the - smb.conf(5) man page for more information.
scriptPath: The scriptPath property specifies the path of - the user's logon script, .CMD, .EXE, or .BAT file. The string can be null. The path - is relative to the netlogon share. Refer to the "logon script" parameter in the - smb.conf(5) man page for more information.
profilePath: specifies a path to the user's profile. - This value can be a null string, a local absolute path, or a UNC path. Refer to the - "logon path" parameter in the smb.conf(5) man page for more information.
smbHome: The homeDirectory property specifies the path of - the home directory for the user. The string can be null. If homeDrive is set and specifies - a drive letter, homeDirectory should be a UNC path. The path must be a network - UNC path of the form \\server\share\directory. This value can be a null string. - Refer to the "logon home" parameter in the smb.conf(5) man page for more information. -
userWorkstation: character string value currently unused. -
rid: the integer representation of the user's relative identifier - (RID).
primaryGroupID: the relative identifier (RID) of the primary group - of the user.
The majority of these parameters are only used when Samba is acting as a PDC of -a domain (refer to the Samba-PDC-HOWTO for details on -how to configure Samba as a Primary Domain Controller). The following four attributes -are only stored with the sambaAccount entry if the values are non-default values:
smbHome
scriptPath
logonPath
homeDrive
These attributes are only stored with the sambaAccount entry if -the values are non-default values. For example, assume TASHTEGO has now been -configured as a PDC and that logon home = \\%L\%u was defined in -its smb.conf file. When a user named "becky" logons to the domain, -the logon home string is expanded to \\TASHTEGO\becky. -If the smbHome attribute exists in the entry "uid=becky,ou=people,dc=samba,dc=org", -this value is used. However, if this attribute does not exist, then the value -of the logon home parameter is used in its place. Samba -will only write the attribute value to the directory entry is the value is -something other than the default (e.g. \\MOBY\becky).
The following is a working LDIF with the inclusion of the posixAccount objectclass:
dn: uid=guest2, ou=people,dc=plainjoe,dc=org -ntPassword: 878D8014606CDA29677A44EFA1353FC7 -pwdMustChange: 2147483647 -primaryGroupID: 1201 -lmPassword: 552902031BEDE9EFAAD3B435B51404EE -pwdLastSet: 1010179124 -logonTime: 0 -objectClass: sambaAccount -uid: guest2 -kickoffTime: 2147483647 -acctFlags: [UX ] -logoffTime: 2147483647 -rid: 19006 -pwdCanChange: 0
The following is an LDIF entry for using both the sambaAccount and -posixAccount objectclasses:
dn: uid=gcarter, ou=people,dc=plainjoe,dc=org -logonTime: 0 -displayName: Gerald Carter -lmPassword: 552902031BEDE9EFAAD3B435B51404EE -primaryGroupID: 1201 -objectClass: posixAccount -objectClass: sambaAccount -acctFlags: [UX ] -userPassword: {crypt}BpM2ej8Rkzogo -uid: gcarter -uidNumber: 9000 -cn: Gerald Carter -loginShell: /bin/bash -logoffTime: 2147483647 -gidNumber: 100 -kickoffTime: 2147483647 -pwdLastSet: 1010179230 -rid: 19000 -homeDirectory: /home/tashtego/gcarter -pwdCanChange: 0 -pwdMustChange: 2147483647 -ntPassword: 878D8014606CDA29677A44EFA1353FC7
Please mail all comments regarding this HOWTO to jerry@samba.org. This documents was -last updated to reflect the Samba 2.2.3 release.
Before you continue reading in this chapter, please make sure that you are comfortable with configuring basic files services @@ -108,9 +108,9 @@ CLASS="SECT1" >
The first step in creating a working Samba PDC is to understand the parameters necessary in smb.conf. I will not @@ -288,21 +288,17 @@ CLASS="PROGRAMLISTING" HREF="smb.conf.5.html#NETBIOSNAME" TARGET="_top" >netbios name = = POGOPOGO workgroup = = NARNIANARNIA ; we should act as the domain and local master browser @@ -392,11 +388,9 @@ TARGET="_top" HREF="smb.conf.5.html#WRITELIST" TARGET="_top" >write list = = ntadminntadmin ; share for storing user profiles @@ -472,10 +466,10 @@ CLASS="SECT1" >
A machine trust account is a Samba account that is used to authenticate a client machine (rather than a user) to the Samba @@ -546,9 +540,9 @@ CLASS="SECT2" >
The first step in manually creating a machine trust account is to manually create the corresponding Unix account in @@ -563,55 +557,45 @@ CLASS="COMMAND" used to create new Unix accounts. The following is an example for a Linux based Samba server:
root# root# /usr/sbin/useradd -g 100 -d /dev/null -c /usr/sbin/useradd -g 100 -d /dev/null -c "machine -nickname" -s /bin/false -s /bin/false machine_namemachine_name$
root# root# passwd -l passwd -l machine_namemachine_name$
On *BSD systems, this can be done using the 'chpass' utility:
root# root# chpass -a "chpass -a "machine_name$:*:101:100::0:0:Workstation machine_name$:*:101:100::0:0:Workstation machine_namemachine_name:/dev/null:/sbin/nologin"
doppy$:x:505:501:doppy$:x:505:501:machine_nicknamemachine_nickname:/dev/null:/bin/false
Above, Above, machine_nicknamemachine_nickname can be any descriptive name for the client, i.e., BasementComputer. -machine_namemachine_name absolutely must be the NetBIOS name of the client to be joined to the domain. The "$" must be appended to the NetBIOS name of the client or Samba will not recognize @@ -665,24 +643,20 @@ CLASS="COMMAND" > command as shown here:
root# root# smbpasswd -a -m smbpasswd -a -m machine_namemachine_name
where where machine_namemachine_name is the machine's NetBIOS name. The RID of the new machine account is generated from the UID of the corresponding Unix account.
The second (and recommended) way of creating machine trust accounts is simply to allow the Samba server to create them as needed when the client @@ -764,7 +738,7 @@ be created manually.
[global] - # <...remainder of parameters...> + # <...remainder of parameters...> add user script = /usr/sbin/useradd -d /dev/null -g 100 -s /bin/false -M %u
The procedure for joining a client to the domain varies with the version of Windows.
C:\WINNT\>C:\WINNT\> net use * /d
This problem is caused by the PDC not having a suitable machine trust account. - If you are using the add user scriptadd user script method to create accounts then this would indicate that it has not worked. Ensure the domain admin user system is working. @@ -1010,11 +982,9 @@ CLASS="COMMAND"
In order to work around this problem in 2.2.0, configure the
- accountaccount control flag in
5.6. System Policies and Profiles
5.6. System Policies and Profiles
Much of the information necessary to implement System Policies and Roving User Profiles in a Samba domain is the same as that for @@ -1228,9 +1198,9 @@ CLASS="SECT1" >
There are many sources of information available in the form of mailing lists, RFC's and documentation. The docs that come @@ -1648,9 +1618,9 @@ CLASS="SECT1" >
The client broadcasts (to the IP broadcast address of the subnet it is in) - a NetLogon request. This is sent to the NetBIOS name DOMAIN<1c> at the + a NetLogon request. This is sent to the NetBIOS name DOMAIN<1c> at the NetBIOS layer. The client chooses the first response it receives, which contains the NetBIOS name of the logon server to use in the format of \\SERVER. @@ -1782,9 +1752,9 @@ CLASS="SECT2" >
The main difference between a PDC and a Windows 9x logon server configuration is that
There are a few comments to make in order to tie up some loose ends. There has been much debate over the issue of whether or not it is ok to configure Samba as a Domain Controller in security -modes other than USERUSER. The only security mode -which will not work due to technical reasons is SHARESHARE -mode security. DOMAIN and DOMAIN andSERVER
SERVER
mode security is really just a variation on SMB user level security.To support WinNT clients, in the [global] section of smb.conf set the following (for example):
To support Win9X clients, you must use the "logon home" parameter. Samba has now been fixed so that "net use/home" now works as well, and it, too, relies @@ -2023,9 +1993,9 @@ CLASS="SECT3" >
You can support profiles for both Win9X and WinNT clients by setting both the "logon home" and "logon path" parameters. For example:
When a user first logs in on Windows 9X, the file user.DAT is created, as are folders "Start Menu", "Desktop", "Programs" and "Nethood". @@ -2228,9 +2198,9 @@ CLASS="SECT3" >
When a user first logs in to a Windows NT Workstation, the profile NTuser.DAT is created. The profile location can be now specified @@ -2342,9 +2312,9 @@ CLASS="SECT3" >
There is nothing to stop you specifying any path that you like for the location of users' profiles. Therefore, you could specify that the @@ -2356,9 +2326,9 @@ CLASS="SECT3" >
The registry files can be located on any Windows NT machine by opening a command prompt and typing:
C:\WINNT\>C:\WINNT\> dir %SystemRoot%\System32\config
The environment variable %SystemRoot% value can be obtained by typing:
C:\WINNT>C:\WINNT>echo %SystemRoot%
The active parts of the registry that you may want to be familiar with are diff --git a/docs/htmldocs/samba.7.html b/docs/htmldocs/samba.7.html index 796bce7d20..689fba7cee 100644 --- a/docs/htmldocs/samba.7.html +++ b/docs/htmldocs/samba.7.html @@ -5,7 +5,7 @@ >samba
+This note was attached to the Samba 2.2.8 release notes as it contained an +important security fix. The information contained here applies to Samba +installations in general.
In many installations of Samba the greatest threat comes for outside +your immediate network. By default Samba will accept connections from +any host, which means that if you run an insecure version of Samba on +a host that is directly connected to the Internet you can be +especially vulnerable.
One of the simplest fixes in this case is to use the 'hosts allow' and +'hosts deny' options in the Samba smb.conf configuration file to only +allow access to your server from a specific range of hosts. An example +might be:
hosts allow = 127.0.0.1 192.168.2.0/24 192.168.3.0/24 + hosts deny = 0.0.0.0/0
The above will only allow SMB connections from 'localhost' (your own +computer) and from the two private networks 192.168.2 and +192.168.3. All other connections will be refused connections as soon +as the client sends its first packet. The refusal will be marked as a +'not listening on called name' error.
By default Samba will accept connections on any network interface that +it finds on your system. That means if you have a ISDN line or a PPP +connection to the Internet then Samba will accept connections on those +links. This may not be what you want.
You can change this behaviour using options like the following:
interfaces = eth* lo + bind interfaces only = yes
This tells Samba to only listen for connections on interfaces with a +name starting with 'eth' such as eth0, eth1, plus on the loopback +interface called 'lo'. The name you will need to use depends on what +OS you are using, in the above I used the common name for Ethernet +adapters on Linux.
If you use the above and someone tries to make a SMB connection to +your host over a PPP interface called 'ppp0' then they will get a TCP +connection refused reply. In that case no Samba code is run at all as +the operating system has been told not to pass connections from that +interface to any process.
Many people use a firewall to deny access to services that they don't +want exposed outside their network. This can be a very good idea, +although I would recommend using it in conjunction with the above +methods so that you are protected even if your firewall is not active +for some reason.
If you are setting up a firewall then you need to know what TCP and +UDP ports to allow and block. Samba uses the following:
UDP/137 - used by nmbd +UDP/138 - used by nmbd +TCP/139 - used by smbd +TCP/445 - used by smbd
The last one is important as many older firewall setups may not be +aware of it, given that this port was only added to the protocol in +recent years.
If the above methods are not suitable, then you could also place a +more specific deny on the IPC$ share that is used in the recently +discovered security hole. This allows you to offer access to other +shares while denying access to IPC$ from potentially untrustworthy +hosts.
To do that you could use:
[ipc$] + hosts allow = 192.168.115.0/24 127.0.0.1 + hosts deny = 0.0.0.0/0
this would tell Samba that IPC$ connections are not allowed from +anywhere but the two listed places (localhost and a local +subnet). Connections to other shares would still be allowed. As the +IPC$ share is the only share that is always accessible anonymously +this provides some level of protection against attackers that do not +know a username/password for your host.
If you use this method then clients will be given a 'access denied' +reply when they try to access the IPC$ share. That means that those +clients will not be able to browse shares, and may also be unable to +access some other resources.
This is not recommended unless you cannot use one of the other +methods listed above for some reason.
Please check regularly on http://www.samba.org/ for updates and +important announcements. Occasionally security releases are made and +it is highly recommended to upgrade Samba when a security vulnerability +is discovered.
name = name = value -
The file is line-based - that is, each newline-terminated @@ -178,11 +174,11 @@ CLASS="FILENAME" The share is accessed via the share name "foo":
[foo] path = /home/bar - read only = no
The following sample section defines a printable share. @@ -199,13 +195,13 @@ CLASS="EMPHASIS" elsewhere):
[aprinter] path = /usr/spool/public read only = yes printable = yes - guest ok = yes
path = /data/pchome/%Spath = /data/pchome/%S
would be useful if you have different home directories @@ -300,10 +294,10 @@ CLASS="USERINPUT" section:
[homes] - read only = no
An important point is that if guest access is specified @@ -401,12 +395,12 @@ NAME="AEN80" this:
[printers] path = /usr/spool/public guest ok = yes - printable = yes
All aliases given for a printer in the printcap file @@ -416,9 +410,9 @@ CLASS="COMPUTEROUTPUT" more lines like this:
alias|alias|alias|alias... alias|alias|alias|alias...
Each alias should be an acceptable printer name for @@ -614,20 +608,16 @@ TARGET="_top" >Name of the domain or workgroup of the current user.
The value of the environment variable - envarenvar.
abort shutdown scriptabort shutdown script
add group scriptadd group script
addprinter commandaddprinter command
add share commandadd share command
add user scriptadd user script
add user to group scriptadd user to group script
add machine scriptadd machine script
delete group scriptdelete group script
algorithmic rid basealgorithmic rid base
allow trusted domainsallow trusted domains
announce versionannounce version
bind interfaces onlybind interfaces only
change notify timeoutchange notify timeout
change share commandchange share command
debug hires timestampdebug hires timestamp
debug timestampdebug timestamp
default servicedefault service
deleteprinter commanddeleteprinter command
delete share commanddelete share command
delete user scriptdelete user script
delete user from group scriptdelete user from group script
disable netbiosdisable netbios
disable spoolssdisable spoolss
display charsetdisplay charset
encrypt passwordsencrypt passwords
enhanced browsingenhanced browsing
enumports commandenumports command
hide local usershide local users
hide unreadablehide unreadable
hide unwriteable fileshide unwriteable files
hide special fileshide special files
hostname lookupshostname lookups
large readwritelarge readwrite
ldap user suffixldap user suffix
ldap machine suffixldap machine suffix
ldap passwd syncldap passwd sync
lock spin countlock spin count
machine password timeoutmachine password timeout
max smbd processesmax smbd processes
message commandmessage command
min passwd lengthmin passwd length
min password lengthmin password length
name cache timeoutname cache timeout
name resolve ordername resolve order
netbios aliasesnetbios aliases
non unix account rangenon unix account range
nt pipe supportnt pipe support
nt status supportnt status support
obey pam restrictionsobey pam restrictions
oplock break wait timeoplock break wait time
pam password changepam password change
paranoid server securityparanoid server security
passwd chat debugpasswd chat debug
password serverpassword server
prefered masterprefered master
preferred masterpreferred master
remote announceremote announce
remote browse syncremote browse sync
restrict anonymousrestrict anonymous
show add printer wizardshow add printer wizard
shutdown scriptshutdown script
smb passwd filesmb passwd file
source environmentsource environment
stat cache sizestat cache size
template homedirtemplate homedir
total print jobstotal print jobs
unix extensionsunix extensions
unix password syncunix password sync
update encryptedupdate encrypted
winbind cache timewinbind cache time
winbind enum userswinbind enum users
winbind enum groupswinbind enum groups
winbind separatorwinbind separator
winbind use default domainwinbind use default domain
default devmodedefault devmode
delete readonlydelete readonly
delete veto filesdelete veto files
directory security maskdirectory security mask
dos filetime resolutiondos filetime resolution
fake directory create timesfake directory create times
follow symlinksfollow symlinks
force create modeforce create mode
force directory modeforce directory mode
force directory security modeforce directory security mode
force security modeforce security mode
inherit permissionsinherit permissions
lppause commandlppause command
lpresume commandlpresume command
mangling methodmangling method
max connectionsmax connections
min print spacemin print space
oplock contention limitoplock contention limit
queuepause commandqueuepause command
queueresume commandqueueresume command
root preexec closeroot preexec close
short preserve caseshort preserve case
strict allocatestrict allocate
use client driveruse client driver
veto oplock filesveto oplock files
write cache sizewrite cache size
For a Samba host this means that the printer must be - physically added to the underlying printing system. The add - printer command 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 @@ -4788,11 +4102,9 @@ CLASS="REFENTRYTITLE" >(8).
The The addprinter commandaddprinter command is automatically invoked with the following parameter (in order):
printer nameprinter name
share nameshare name
port nameport name
driver namedriver name
locationlocation
Windows 9x driver locationWindows 9x driver location
Once the Once the addprinter commandaddprinter command has been executed, will return an ACCESS_DENIED error to the client.
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. +
See also deleteprinter command deleteprinter command, printingprinting, show add - printer wizard
Samba 2.2.0 introduced the ability to dynamically add and delete shares via the Windows NT 4.0 Server Manager. The - add share commandadd share command is used to define an external program or script which will add a new service definition to smb.conf. In order to successfully - execute the add share commandadd share command, smbdsmbd will automatically invoke the - add share commandadd share command with four parameters.
configFileconfigFile - the location of the global
shareNameshareName - the name of the new share.
pathNamepathName - path to an **existing** directory on disk.
commentcomment - comment string to associate with the new share.
This parameter is only used for add file shares. To add printer shares, see the addprinter - command.See also change share - command, delete share - command.
Default: add machine script = <empty string> +>add machine script = <empty string>
NOT be set to be set to security = sharesecurity = share - and add user scriptadd user script must be set to a full pathname for a script that will create a UNIX - user given one argument of %u%u, which expands into the UNIX user name to create.
smbd(8) contacts the contacts the password serverpassword server and attempts to authenticate the given user with the given password. If the authentication succeeds then smbd attempts to find a UNIX user in the UNIX password database to map the - Windows user into. If this lookup fails, and add user script - is set then smbdAS ROOT, expanding - any %u%u argument to be the user name to create.
If this script successfully creates the user then
See also security security, password serverpassword server, delete user - script.
Default: add user script = <empty string> +>add user script = <empty string>
(8) when a new group is requested. It will expand any - %g%g to the group name passed. This script is only useful for installations using the Windows NT domain administration tools. The script is @@ -5370,17 +4627,13 @@ CLASS="EMPHASIS" >AS ROOT. - Any %g%g will be replaced with the group name and - any %u%u will be replaced with the user name.
Synonym for hosts allowhosts allow.
This option only takes effect when the securitysecurity option is set to
- server or server or This is a synonym for the preloadpreload.domain
domain.
If it is set to no, then attempts to connect to a resource from
a domain or workgroup other than the one which
Default: auth methods = <empty string>auth methods = <empty string>
Example: This parameter lets you "turn off" a service. If
- available = noavailable = no, then nmbd
If If bind interfaces onlybind interfaces only is set then unless the network address 127.0.0.1 is added - to the interfacesinterfaces parameter list address as an SMB client to issue the password change request. If - bind interfaces onlybind interfaces only is set then unless the network address 127.0.0.1 is added to the - interfacesinterfaces parameter list then smbpasswdsmbpasswd(8) -r -r remote machineremote machine - parameter, with remote machineremote machine set to the IP name of the primary interface of the local host.
If this parameter is set to If this parameter is set to no
no, then
samba will behave as previous versions of Samba would and
will fail the lock request immediately if the lock range
@@ -5937,11 +5160,9 @@ NAME="BROWSABLE"
>
See the browseable browseable.
NetServerEnum call. Normally - set to yesyes. You should never need to change this.smbd(8) daemon only performs such a scan - on each requested directory once every change notify - timeout seconds.
Default:
Samba 2.2.0 introduced the ability to dynamically add and delete shares via the Windows NT 4.0 Server Manager. The - change share commandchange share command is used to define an external program or script which will modify an existing service definition in smb.conf. In order to successfully - execute the change share commandchange share command, smbdsmbd will automatically invoke the - change share commandchange share command with four parameters.
configFileconfigFile - the location of the global
shareNameshareName - the name of the new share.
pathNamepathName - path to an **existing** directory on disk.
commentcomment - comment string to associate with the new share.
See also add share - command, delete - share command.
If you want to set the string that is displayed next to the machine name then see the server string server string parameter.A synonym for this parameter is create modecreate mode .
Following this Samba will bit-wise 'OR' the UNIX mode created from this parameter with the value of the force create modeforce create mode parameter which is set to 000 by default.This parameter does not affect directory modes. See the parameter directory mode - for details.See also the force - create mode parameter for forcing particular mode bits to be set on created files. See also the directory modedirectory mode parameter for masking mode bits on created directories. See also the inherit permissionsinherit permissions parameter.
security masksecurity mask.
This is a synonym for create mask create mask.
Note that the parameter debug timestamp debug timestamp must be on for this to have an effect.
Note that the parameter debug timestamp debug timestamp must be on for this to have an effect.
Samba debug log messages are timestamped by default. If you are running at a high debug leveldebug level these timestamps can be distracting. This boolean parameter allows timestamping @@ -6591,11 +5768,9 @@ NAME="DEBUGUID" >Note that the parameter debug timestamp debug timestamp must be on for this to have an effect.
Synonym for log level log level.
A synonym for default service default service.
NAME MANGLING. Also note the short preserve caseshort preserve case parameter.Typically the default service would be a guest okguest ok, read-onlyread-only service.
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 %S%S to make a wildcard service.
smbd(8) when a group is requested to be deleted. - It will expand any %g%g to the group name passed. This script is only useful for installations using the Windows NT domain administration tools.
For a Samba host this means that the printer must be - physically deleted from underlying printing system. The deleteprinter command deleteprinter command defines a script to be run which will perform the necessary operations for removing the printer from the print system and from .
The The deleteprinter commanddeleteprinter command is - automatically called with only one parameter: "printer name" "printer name".
Once the Once the deleteprinter commanddeleteprinter command has been executed,
See also addprinter command addprinter command, printingprinting, show add - printer wizard
Samba 2.2.0 introduced the ability to dynamically add and delete shares via the Windows NT 4.0 Server Manager. The - delete share commanddelete share command is used to define an external program or script which will remove an existing service definition from smb.conf. In order to successfully - execute the delete share commanddelete share command, smbdsmbd will automatically invoke the - delete share commanddelete share command with two parameters.
configFileconfigFile - the location of the global
shareNameshareName - the name of the existing service.
This parameter is only used to remove file shares. To delete printer shares, see the deleteprinter - command.See also add share - command, change - share command.
Default: delete user script = <empty string> +>delete user script = <empty string>
AS ROOT. - Any %g%g will be replaced with the group name and - any %u%u will be replaced with the user name.
veto filesveto files - option). If this option is set to nono (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.
If this option is set to If this option is set to yes
yes, then Samba
will attempt to recursively delete any files and directories within
the vetoed directory. This can be useful for integration with file
@@ -7184,12 +6309,10 @@ CLASS="COMMAND"
>
See also the veto - files parameter.
Synonym for hosts - deny.
>dfree command (G)The The dfree commanddfree command 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, @@ -7306,12 +6425,10 @@ NAME="DIRECTORY" >
Synonym for path - .
See the force - directory mode parameter to cause particular mode bits to always be set on created directories.
See also the create mode - parameter for masking mode bits on created files, and the directory - security mask parameter.
Also refer to the inherit permissions inherit permissions parameter.
Synonym for directory mask directory mask
07770777.See also the force directory security mode force directory security mode, security masksecurity mask, force security mode - parameters.
See also the parameter wins support wins support.
>domain logons (G)
If set to If set to yes
yes, the Samba server will serve
Windows 95/98 Domain logons for the workgroupworkgroup it is in. Samba 2.2
has limited capability to act as a domain controller for Windows
@@ -7698,18 +6791,14 @@ CLASS="COMMAND"
claim a special domain specific NetBIOS name that identifies
it as a domain master browser for its given workgroupworkgroup. Local master browsers
- in the same workgroupworkgroup on broadcast-isolated
subnets will give this
Note that Windows NT Primary Domain Controllers expect to be - able to claim this workgroupworkgroup specific special NetBIOS name that identifies them as domain master browsers for - that workgroupworkgroup 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 nmbd claims - the special name for a workgroupworkgroup before a Windows NT PDC is able to do so then cross subnet browsing will behave strangely and may fail.
domain logons = yes , then the default behavior is to enable the , then the default behavior is to enable the domain - master parameter. If parameter. If domain logonsdomain logons is - not enabled (the default setting), then neither will domain - master be enabled by default.Default: smbd is acting
- on behalf of is not the file owner. Setting this option to yes yes allows DOS semantics and "Samba Printer Port""Samba Printer Port". Under
Windows NT/2000, all printers must have a valid port name.
If you wish to have a list of ports displayed (smbd
does not use a port name for anything) other than
- the default "Samba Printer Port""Samba Printer Port", you
- can define enumports commandenumports command 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
@@ -8082,11 +7157,9 @@ NAME="EXEC"
> This is a synonym for preexecpreexec.
It is generally much better to use the real oplocksoplocks support rather than this parameter.
(8) from following symbolic links in a particular share. Setting this - parameter to nono 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 @@ -8240,33 +7311,27 @@ CLASS="EMPHASIS" 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 create maskcreate mask parameter is applied.See also the parameter create - mask for details on masking mode bits on files.
See also the inherit - permissions parameter.
directory maskdirectory mask is applied.
See also the parameter directory mask directory mask for details on masking mode bits on created directories.
See also the inherit permissions inherit permissions parameter.
See also the directory security mask directory security mask, security masksecurity mask, force security mode - parameters.
If the force user - parameter is also set the group specified in - force groupforce group will override the primary group - set in force userforce user.
See also force - user.
See also the force directory security mode force directory security mode, directory security - mask, security mask security mask parameters.
See also force group -
smbd(8) when a client queries the filesystem type
- for a share. The default type is NTFSNTFS for
compatibility with Windows NT but this can be changed to other
- strings such as Samba or Samba or FAT
-
if required.
Default: wide linkswide links
parameter is set to parameter is set to no
no.
Default:
Synonym for force - group.
This is a username which will be used for access to services which are specified as guest ok guest ok (see below). Whatever privileges this user has will be available to any client connecting to the guest service. @@ -8764,40 +7795,34 @@ NAME="GUESTOK" >>guest ok (S)If this parameter is If this parameter is yes
yes for
a service, then no password is required to connect to the service.
Privileges will be those of the guest account guest account.
This paramater nullifies the benifits of setting restrict - anonymous = 2
See the section below on security security for more information about this option.
>guest only (S)If this parameter is If this parameter is yes
yes for
a service, then only guest connections to the service are permitted.
This parameter will have no effect if guest okguest ok is not set for the service.
See the section below on security security for more information about this option.
See also hide - dot files, veto files veto files and case sensitivecase sensitive.
Ifnis homedir
- is is yes
yes, and smbd(8) is also acting
- as a Win95/98 logon serverlogon server 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
@@ -9057,27 +8068,23 @@ CLASS="EMPHASIS"
>
See also nis homedirnis homedir , domain logonsdomain logons .
Default: homedir map = <empty string>homedir map = <empty string>
Example: --with-msdfs option. If set to option. If set to yes
yes,
Samba will act as a Dfs server, and allow Dfs-aware clients
to browse Dfs trees hosted on the server.
See also the msdfs root msdfs root share level parameter. For more information on setting up a Dfs tree on Samba, @@ -9161,12 +8166,10 @@ NAME="HOSTSALLOW" >>hosts allow (S)
A synonym for this parameter is A synonym for this parameter is allow - hosts.
This parameter is a comma, space, or tab delimited @@ -9193,11 +8196,9 @@ CLASS="FILENAME" >Note that the localhost address 127.0.0.1 will always be allowed access unless specifically denied by a hosts denyhosts deny option.
>hosts deny (S)
The opposite of The opposite of hosts allowhosts allow - hosts listed here are permitted access to services unless the specific services have their own lists to override - this one. Where the lists conflict, the allowallow list takes precedence.
This is not be confused with hosts allowhosts allow which is about hosts - access to services and is more useful for guest services. hosts equiv hosts equiv may be useful for NT clients which will not supply passwords to Samba.
NOTE : The use of The use of hosts equiv
- can be a major security hole. This is because you are
trusting the PC to supply the correct username. It is very easy to
get a PC to supply a false username. I recommend that the
- hosts equivhosts equiv option be only used if you really
know what you are doing, or perhaps on a home network where you trust
your spouse and kids. And only if you It takes the standard substitutions, except It takes the standard substitutions, except %u
- , , %P and %P and %S%S.
The permissions on new files and directories
are normally governed by create mask create mask, directory maskdirectory mask, force create modeforce create mode
and force
- directory mode but the boolean inherit
permissions parameter overrides this.
See also create mask - , directory mask directory mask, force create modeforce create mode and force directory modeforce directory mode .
See also bind - interfaces only.
A name starting with '+' is interpreted only by looking in the UNIX group database. A name starting with - '&' is interpreted only by looking in the NIS netgroup database + '&' 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 +&group+&group means check the UNIX group database, followed by the NIS netgroup database, and - the value &+group&+group means check the NIS netgroup database, followed by the UNIX group database (the same as the '@' prefix).
The current servicename is substituted for The current servicename is substituted for %S%S. This is useful in the [homes] section.
See also valid users - .
The value of the parameter (an integer) represents - the number of seconds between keepalivekeepalive packets. If this parameter is zero, no keepalive packets will be sent. Keepalive packets, if sent, allow the server to tell whether @@ -9765,11 +8714,9 @@ CLASS="PARAMETER" >Keepalives should, in general, not be needed if the socket being used has the SO_KEEPALIVE attribute set on it (see socket optionssocket options). Basically you should only use this option if you strike difficulties.
For UNIXes that support kernel based oplocksoplocks (currently only IRIX and the Linux 2.4 kernel), this parameter allows the use of them to be turned on or off.
Kernel oplocks support allows Samba Kernel oplocks support allows Samba oplocks - to be broken whenever a local UNIX process or NFS operation accesses a file that cool feature :-).
This parameter defaults to This parameter defaults to on
on, 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.
See also the oplocksoplocks and level2 oplocks - parameters.
>ldap admin dn (G)
The The ldap admin dnldap admin dn defines the Distinguished
Name (DN) name used by Samba to contact the ldap server when retreiving
- user account information. The ldap
- admin dn is used in conjunction with the admin dn password
stored in the This parameter specifies the RFC 2254 compliant LDAP search filter.
- The default is to match the login name with the uiduid
- attribute for all entries matching the sambaAccountsambaAccount
objectclass. Note that this filter should only return one entry.
Default : ldap filter = (&(uid=%u)(objectclass=sambaAccount))ldap filter = (&(uid=%u)(objectclass=sambaAccount))
The The ldap sslldap ssl can be set to one of three values:
OffOff = Never use SSL when querying the directory.
Start_tlsStart_tls = Use the LDAPv3 StartTLS extended operation (RFC2830) for communicating with the directory server.
OnOn = Use SSL on the ldaps port when contacting the - ldap serverldap server. Only available when the backwards-compatiblity option is specified to configure. See passdb backendpassdb backend
The The ldap passwd syncldap passwd sync can be set to one of three values:
YesYes = Try to update the LDAP, NT and LM passwords and update the pwdLastSet time.
NoNo = Update NT and LM passwords and update the pwdLastSet time.
OnlyOnly = Only update the LDAP password and let the LDAP server do the rest.
Currently, if kernel
- oplocks are supported then level2 oplocks are
- not granted (even if this parameter is set to yesyes).
Note also, the oplocksoplocks
parameter must be set to parameter must be set to yes
yes on this share in order for
this parameter to have any effect.
See also the oplocksoplocks and kernel oplockskernel oplocks parameters.
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, yes, yes,no
no, or
- auto. The default is auto. The default is auto
auto.
- If set to nono Samba will never produce these
- broadcasts. If set to yesyes Samba will produce
Lanman announce broadcasts at a frequency set by the parameter
- lm interval. If set to lm interval. If set to auto
auto
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
- lm intervallm interval.See also lm interval - .
If Samba is set to produce Lanman announce broadcasts needed by OS/2 clients (see the lm announcelm 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 lm announcelm announce parameter.
See also lm - announce.
nmbd(8) to try and become a local master browser
- on a subnet. If set to nono then nmbd 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 yes. Setting this value to yes. Setting this value to yes
yes doesn't
mean that Samba will in elections for local master browser.
Setting this value to Setting this value to no
no will cause nmbd
Synonym for lock directory lock directory.
This parameter specifies the local path to which the home directory will be connected (see logon homelogon home) and is only used by NT Workstations.
C:\> C:\> NET USE H: /HOMENET USE H: /HOME
Note that in prior versions of Samba, the logon pathlogon path was returned rather than - logon homelogon home. This broke net use @@ -10902,11 +9781,9 @@ NAME="LOGONPATH" nothing to do with Win 9X roaming profiles. To find out how to handle roaming profiles for Win 9X system, see the logon homelogon home parameter.
The script must be a relative path to the [netlogon] service. If the [netlogon] service specifies a pathpath of
If a If a %p%p is given then the printer name - is put in its place. A %j%j is replaced with - the job number (an integer). On HPUX (see printing=hpux - ), if the ), if the -p%p-p%p 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 @@ -11097,25 +9964,21 @@ CLASS="PARAMETER" >
See also the printing - parameter.
Default: Currently no default value is given to - this string, unless the value of the printingprinting - parameter is SYSVSYSV, in which case the default is :
lp -i %p-%j -H hold
or if the value of the or if the value of the printingprinting parameter - is SOFTQSOFTQ, then the default is:
See also the printing - parameter.
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 printing =printing = option.
Some clients (notably Windows for Workgroups) may not @@ -11244,43 +10101,35 @@ CLASS="PARAMETER" server reports on the first printer service connected to by the client. This only happens if the connection number sent is invalid.
If a If a %p%p is given then the printer name is put in its place. Otherwise it is placed at the end of the command.
Note that it is good practice to include the absolute path - in the lpq command as the lpq command as the $PATH - may not be available to the server. When compiled with - the CUPS libraries, no lpq commandlpq command is needed because smbd will make a library call to obtain the print queue listing.
See also the printing - parameter.
depends on the setting of depends on the setting of printing printing
lppause command - parameter.If a If a %p%p is given then the printer name - is put in its place. A %j%j is replaced with the job number (an integer).
Note that it is good practice to include the absolute path - in the lpresume commandlpresume command as the PATH may not be available to the server.
See also the printing - parameter.
Default: Currently no default value is given - to this string, unless the value of the printingprinting - parameter is SYSVSYSV, in which case the default is :
lp -i %p-%j -H resume
or if the value of the or if the value of the printingprinting parameter - is SOFTQSOFTQ, then the default is:
This command should be a program or script which takes a printer name and job number, and deletes the print job.
If a If a %p%p is given then the printer name - is put in its place. A %j%j is replaced with the job number (an integer).
Note that it is good practice to include the absolute - path in the lprm commandlprm command as the PATH may not be available to the server.
See also the printing - parameter.
depends on the setting of depends on the setting of printing -
magic scriptmagic script parameter below).Warning: If two clients use the same Warning: If two clients use the same magic script - in the same directory the output file content is undefined.
Default: magic output = <magic script name>.out +>magic output = <magic script name>.out
If the script generates output, output will be sent to the file specified by the magic output magic output parameter (see above).
Note that the character to use may be specified using the mangling charmangling char option, if you don't like '~'.
Note that this requires the Note that this requires the create maskcreate mask parameter to be set such that owner execute bit is not masked out (i.e. it must include 100). See the parameter create maskcreate mask for details.
This controls whether DOS style hidden files should be mapped to the UNIX world execute bit.
Note that this requires the Note that this requires the create maskcreate mask to be set such that the world execute bit is not masked out (i.e. it must include 001). See the parameter create maskcreate mask for details.
This controls whether DOS style system files should be mapped to the UNIX group execute bit.
Note that this requires the Note that this requires the create maskcreate mask to be set such that the group execute bit is not masked out (i.e. it must include 010). See the parameter create maskcreate mask for details.
This parameter is only useful in security modes other than modes other than security = sharesecurity = share
- - i.e. user, user, server
server,
- and domaindomain.
This parameter can take three different values, which tell @@ -12040,36 +10841,34 @@ CLASS="REFENTRYTITLE" >
Never
Never - Means user login
requests with an invalid password are rejected. This is the
default.
Bad User
Bad User - 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 guest account guest account.
Bad Password
Bad Password - Means user logins
with an invalid password are treated as a guest login and mapped
into the hate you if you set the you if you set the map to
- guest parameter this way :-).
Note that this parameter is needed to set up "Guest"
- share services when using securitysecurity modes other than
share. This is because in these modes the name of the resource being
requested is For people familiar with the older Samba releases, this
- parameter maps to the old compile-time setting of the GUEST_SESSSETUP GUEST_SESSSETUP value in local.h. Default: This option allows the number of simultaneous
- connections to a service to be limited. If max connections
- 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.
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.
A A max disk sizemax disk size of 0 means no limit.
Default: will remote "Out of Space" to the client. See all total - print jobs.
CORE
CORE: Earliest version. No
concept of user names.
COREPLUS
COREPLUS: Slight improvements on
CORE for efficiency.
LANMAN1
LANMAN1: First
LANMAN2
LANMAN2: Updates to Lanman1 protocol.
NT1
NT1: Current up to date version of
the protocol. Used by Windows NT. Known as CIFS.
See also min - protocol
(8) when acting as a WINS server ( wins support = yeswins support = yes) what the maximum 'time to live' of NetBIOS names that
See also the min - wins ttl parameter.
message command = csh -c 'xedit %s;rm %s' &message command = csh -c 'xedit %s;rm %s' &
. That's why I - have the '&' on the end. If it doesn't return immediately then + 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).
All messages are delivered as the global guest user. - The command takes the standard substitutions, although %u won't work ( %u won't work (%U%U may be better in this case).
%s%s = the filename containing the message.
%t%t = the destination that the message was sent to (probably the server name).
%f%f = who the message is from.
If you don't have a message command then the message @@ -12673,7 +11442,7 @@ CLASS="EMPHASIS" >Example: message command = csh -c 'xedit %s; - rm %s' &
Synonym for min password lengthmin password length.
See also unix - password sync, passwd programpasswd program and passwd chat debugpasswd chat debug .
See also the printing - parameter.
max protocolmax protocol parameter for a list of valid protocol names and a brief description @@ -12802,12 +11559,10 @@ CLASS="FILENAME" >If you are viewing this parameter as a security measure, you should also refer to the lanman - auth parameter. Otherwise, you should never need to change this parameter.
when acting as a WINS server ( wins support = yes wins support = yes) what the minimum 'time to live' of NetBIOS names that Only Dfs roots can act as proxy shares. Take a look at the msdfs rootmsdfs root and host msdfshost msdfs options to find out how to set up a Dfs root share. --with-msdfs option. If set to option. If set toyes
yes,
Samba treats the share as a Dfs root and allows clients to browse
the distributed file system tree rooted at the share directory.
@@ -12930,12 +11679,10 @@ TARGET="_top"
>See also host msdfs -
lmhosts
lmhosts : 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
host
host : Do a standard host
name to IP address resolution, using the system
wins
wins : Query a name with
the IP address listed in the wins server wins server parameter. If no WINS server has
been specified this method will be ignored.
bcast
bcast : Do a broadcast on
each of the known local interfaces listed in the interfacesinterfaces
parameter. This is the least reliable of the name resolution
@@ -13092,12 +11835,10 @@ TARGET="_top"
>
See also netbios - name.
See also netbios - aliases.
homedir maphomedir map and return the server listed there.
Default: non unix account range = <empty string> +>non unix account range = <empty string>
smbd(8) will allow Windows NT - clients to connect to the NT SMB specific IPC$IPC$ pipes. This is a developer debugging option and can be left alone.
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 nono then Samba offers exactly the same DOS error codes that versions prior to Samba 2.2.3 reported.encrypt passwords = yesencrypt passwords = yes . The reason is that PAM modules cannot support the challenge/response @@ -13376,20 +12111,16 @@ NAME="ONLYUSER" >This is a boolean option that controls whether - connections with usernames not in the useruser 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 useruser list and is only really useful in user = %S which means your which means your useruser list will be just the service name, which for home directories is the name of the user.
See also the useruser parameter.
A synonym for guest only guest only.
See also the kernel - oplocks and level2 oplocks level2 oplocks parameters.
nmbd(8) - has a chance of becoming a local master browser for the WORKGROUP WORKGROUP in the local broadcast area.
<nt driver name> = <os2 driver
- name>.<device name>
For example, a valid entry using the HP LaserJet 5 printer driver would appear as
Default: os2 driver map = <empty string> +>os2 driver map = <empty string>
passwd programpasswd program. It should be possible to enable this without changing your passwd chatpasswd chat parameter for most setups. @@ -13777,7 +12488,7 @@ CLASS="REFENTRYTITLE" >Default: panic action = <empty string>panic action = <empty string>
Example:
See also non unix account - range
ldap sslldap ssl) or by - specifying ldaps://ldaps:// in the URL argument.
uses to determine what to send to the passwd programpasswd program and what to expect back. If the expected output is not @@ -14066,16 +12761,14 @@ CLASS="PARAMETER" >Note that this parameter only is only used if the unix
- password sync parameter is set to parameter is set to The string can contain the macro The string can contain the macro %n%n which is substituted
for the new password. The chat sequence can also contain the standard
- macros \\n, \\n, If the pam
- password change parameter is set to parameter is set to See also unix password
- sync, passwd program passwd program , passwd chat debugpasswd chat debug and pam password changepam password change. log with a
debug leveldebug level
of 100. This is a dangerous option as it will allow plaintext passwords
@@ -14225,55 +12904,43 @@ CLASS="PARAMETER"
CLASS="COMMAND"
>smbd log. It is available to help
- Samba admins debug their passwd chatpasswd chat scripts
- when calling the passwd programpasswd program and should
be turned off after this has been done. This option has no effect if the
pam password changepam password change
paramter is set. This parameter is off by default. See also passwd chatpasswd chat
, pam password changepam password change
, passwd programpasswd program
. The name of a program that can be used to set
- UNIX user passwords. Any occurrences of %u%u
will be replaced with the user name. The user name is checked for
existence before calling the password changing program.yes
yes. This
sequence is then called \\r
, \\r, \\t
and \\t and \\s
\\s to give line-feed,
carriage-return, tab and space. The chat sequence string can also contain
a '*' which matches any sequence of characters.
@@ -14125,16 +12816,14 @@ CLASS="CONSTANT"
>yes
yes, 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.
@@ -14142,36 +12831,28 @@ CLASS="CONSTANT"
>yes
-
then this program is called will fail to change the SMB password also
(this is by design).
If the If the unix password syncunix password sync parameter
is set this parameter ALL programs called, and must be examined
- for security implications. Note that by default unix
- password sync is set to is set to no
no.
See also unix - password sync.
This parameter defines the maximum number of characters that may be upper case in passwords.
For example, say the password given was "FRED". If For example, say the password given was "FRED". If password level password level is set to 1, the following combinations would be tried if "FRED" failed:
"Fred", "fred", "fRed", "frEd","freD"
If If password levelpassword level was set to 2, the following combinations would also be tried:
The name of the password server is looked up using the parameter name - resolve order and so may resolved by any method and order described in that parameter.
The name of the password server takes the standard - substitutions, but probably the only useful one is %m - , 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!
If the If the securitysecurity parameter is set to - domaindomain, 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 @@ -14553,11 +13200,9 @@ CLASS="CONSTANT" CLASS="COMMAND" > security = domain is that if you list several hosts in the - password serverpassword server option then smbd @@ -14565,17 +13210,15 @@ CLASS="COMMAND" > will try each in turn till it finds one that responds. This is useful in case your primary server goes down.
If the If the password serverpassword server 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 WORKGROUP<1C>WORKGROUP<1C> and then contacting each server returned in the list of IP addresses from the name resolution source.
If the If the securitysecurity parameter is
- set to serverserver, then there are different
restrictions that You may list several password servers in
- the password serverpassword server parameter, however if an
See also the security
- parameter. Default: password server = <empty string>password server = <empty string>
Any occurrences of Any occurrences of %u%u in the path will be replaced with the UNIX username that the client is using - on this connection. Any occurrences of %m%m will be replaced by the NetBIOS name of the machine they are connecting from. These replacements are very useful for setting @@ -14705,11 +13338,9 @@ CLASS="PARAMETER" >
Note that this path will be based on root dirroot dir if one was specified.
See also preexecpreexec .
Example: postexec = echo \"%u disconnected from %S - from %m (%I)\" >> /tmp/logThis parameter forces a printer to interpret - the print files as PostScript. This is done by adding a %! - to the start of print output.
This is most useful when you have lots of PCs that persist - in putting a control-D at the start of print jobs, which then - confuses your printer.
Default: postscript = no
Of course, this could get annoying after a while :-)
See also preexec close - and postexec - .
Example: preexec = echo \"%u connected to %S from %m - (%I)\" >> /tmp/log
is a preferred master browser for its workgroup.
If this is set to If this is set to yes
yes, on startup, nmbd domain master domain master = yes, so that
See also os levelos level .
Synonym for preferred master preferred master for people who cannot spell :-).
Note that if you just want all printers in your printcap file loaded then the load printersload printers option is easier.default case - .
MUST contain at least - one occurrence of %s or %s or %f - - the - the %p%p is optional. At the time - a job is submitted, if no printer name is supplied the %p - will be silently removed from the printer command.
If specified in the [global] section, the print command given @@ -15146,17 +13728,15 @@ CLASS="PARAMETER" be created but not processed and (most importantly) not removed.
Note that printing may fail on some UNIXes from the - nobodynobody account. If this happens then create an alternative guest account that can print and set the guest accountguest account in the [global] section.
print command = echo Printing %s >> +>print command = echo Printing %s >> /tmp/print.log; lpr -P %p %s; rm %s
printingprinting parameter.
Synonym for printableprintable.
>printable (S)If this parameter is If this parameter is yes
yes, then
clients may open, write to and submit spool files on the directory
specified for the service.
Synonym for printcap name printcap name.
Default: printer admin = <empty string>printer admin = <empty string>
Note :This is a deprecated - parameter and will be removed in the next major release - following version 2.2. Please see the instructions in - the Samba 2.2. Printing - HOWTO for more information - on the new method of loading printer drivers onto a Samba server. -
This option allows you to control the string - that clients receive when they ask the server for the printer driver - associated with a printer. If you are using Windows95 or Windows NT - then you can use this to automate the setup of printers on your - system.
You need to set this parameter to the exact string (case - sensitive) that describes the appropriate printer driver for your - system. If you don't know the exact string to use then you should - first try with no printer driver option set and the client will - give you a list of printer drivers. The appropriate strings are - shown in a scroll box after you have chosen the printer manufacturer.
See also printer - driver file.
Example: printer driver = HP LaserJet 4L
Note :This is a deprecated - parameter and will be removed in the next major release - following version 2.2. Please see the instructions in - the Samba 2.2. Printing - HOWTO for more information - on the new method of loading printer drivers onto a Samba server. -
This parameter tells Samba where the printer driver - definition file, used when serving drivers to Windows 95 clients, is - to be found. If this is not set, the default is :
SAMBA_INSTALL_DIRECTORY - /lib/printers.def
This file is created from Windows 95 msprint.inf - files found on the Windows 95 client system. For more - details on setting up serving of printer drivers to Windows 95 - clients, see the outdated documentation file in the docs/ - directory, PRINTER_DRIVER.txt.
See also printer driver location.
Default: None (set in compile).
Example: printer driver file = - /usr/local/samba/printers/drivers.def
Note :This is a deprecated - parameter and will be removed in the next major release - following version 2.2. Please see the instructions in - the Samba 2.2. Printing - HOWTO for more information - on the new method of loading printer drivers onto a Samba server. -
This parameter tells clients of a particular printer - share where to find the printer driver files for the automatic - installation of drivers for Windows 95 machines. If Samba is set up - to serve printer drivers to Windows 95 machines, this should be set to
\\MACHINE\PRINTER$
Where MACHINE is the NetBIOS name of your Samba server, - and PRINTER$ is a share you set up for serving printer driver - files. For more details on setting this up see the outdated documentation - file in the docs/ directory, PRINTER_DRIVER.txt.
See also printer driver file.
Default: none
Example: printer driver location = \\MACHINE\PRINTER$ -
lp
lp
on many systems)Synonym for printer name printer name.
This parameters controls how printer status information is interpreted on your system. It also affects the - default values for the print commandprint command, - lpq command, lpq command, lppause command - , , lpresume commandlpresume command, and - lprm commandlprm command if specified in the [global] section.
Currently nine printing styles are supported. They are
- BSD, BSD, AIX
AIX,
- LPRNG, LPRNG, PLP
PLP,
- SYSV, SYSV, HPUX
HPUX,
- QNX, QNX, SOFTQ
SOFTQ,
- and CUPSCUPS.
To see what the defaults are for the other print @@ -15810,11 +14160,9 @@ NAME="PROTOCOL" >
Synonym for max protocolmax protocol.
Synonym for guest - ok.
If a If a %p%p is given then the printer name is put in its place. Otherwise it is placed at the end of the command.
depends on the setting of depends on the setting of printing - queuepause command queuepause command).If a If a %p%p is given then the printer name is put in its place. Otherwise it is placed at the end of the command.
depends on the setting of printingprintingsmbd(8) will support the "Read Block Multiplex" SMB. This is now rarely used and defaults to - nono. You should never need to set this parameter.read onlyread only option is set to. The list can include group names using the syntax described in the invalid users invalid users parameter.
See also the write list write list parameter and the invalid usersinvalid users parameter.
Default: read list = <empty string>read list = <empty string>
Example:
An inverted synonym is writeablewriteable.
If this parameter is If this parameter is yes
yes, then users
of a service may not create or modify files in the service's
directory.
>read size (G)
The option The option read sizeread size affects the overlap of disk reads/writes with network reads/writes. If the amount of data being transferred in several of the SMB @@ -16210,11 +14532,9 @@ CLASS="COMMAND" If you leave out the workgroup name then the one given in the workgroupworkgroup parameter is used instead.
Default: remote announce = <empty string> +>remote announce = <empty string>
Default: remote browse sync = <empty string> +>remote browse sync = <empty string>
This is a integer parameter, and mirrors as much as possible the functinality the - RestrictAnonymousRestrictAnonymous registry key does on NT/Win2k.
Synonym for root directory"root directory".
Synonym for root directory"root directory".
wide linkswide links parameter).Adding a Adding a root directoryroot directory 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 root directoryroot directory
option, 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 root directoryroot directory tree. In particular
you will need to mirror >root postexec (S) This is the same as the This is the same as the postexecpostexec
parameter except that the command is run as root. This
is useful for unmounting filesystems
@@ -16436,17 +14742,15 @@ CLASS="PARAMETER"
> See also postexec postexec. Default: root postexec = <empty string>
+>root postexec = <empty string>
This is the same as the This is the same as the preexecpreexec
parameter except that the command is run as root. This
is useful for mounting filesystems (such as CDROMs) when a
@@ -16469,25 +14771,21 @@ CLASS="PARAMETER"
> See also preexec preexec and preexec closepreexec close. Default: root preexec = <empty string>
+>root preexec = <empty string>
This is the same as the This is the same as the preexec close
- parameter except that the command is run as root. See also preexec preexec and preexec closepreexec close. , see
the map to guestmap to guest
parameter for details.
If the guest - only parameter is set, then all the other stages are missed and only the guest accountguest account username is checked.
Is a username is sent with the share connection request, then this username (after mapping - see username mapusername map), is added as a potential username.Any users on the user user list are added as potential usernames.
If the If the guest onlyguest only 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.
If the If the guest onlyguest only parameter is set, or no username can be determined then if the share is marked - as available to the guest accountguest account, then this guest user will be used, otherwise access is denied.
username mapusername map parameter). Encrypted passwords (see the encrypted passwordsencrypted passwords parameter) can also be used in this security mode. Parameters such as useruser and guest onlyguest only if set are then applied and may change the UNIX user to use on this connection, but only after @@ -16880,20 +15146,16 @@ CLASS="EMPHASIS" guest shares don't work in user level security without allowing the server to automatically map unknown users into the guest accountguest account. See the map to guestmap to guest parameter for details on doing this.
has been used to add this machine into a Windows NT Domain. It expects the encrypted passwordsencrypted passwords parameter to be set to parameter to be set toyes
yes. 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
@@ -16985,20 +15245,16 @@ CLASS="EMPHASIS"
guest shares don't work in user level security without allowing
the server to automatically map unknown users into the guest accountguest account.
See the map to guestmap to guest
parameter for details on doing this.See also the password - server parameter and the encrypted passwordsencrypted passwords parameter.
. It expects the encrypted passwordsencrypted passwords parameter to be set to - yesyes, unless the remote server does not support them. However note that if encrypted passwords have been negotiated then Samba cannot @@ -17130,20 +15380,16 @@ CLASS="EMPHASIS" guest shares don't work in user level security without allowing the server to automatically map unknown users into the guest accountguest account. See the map to guestmap to guest parameter for details on doing this.See also the password - server parameter and the encrypted passwordsencrypted passwords parameter.
07770777.See also the force directory security modeforce directory security mode, directory - security mask, force security modeforce security mode parameters.
It also sets what will appear in browse lists next to the machine name.
A A %v%v will be replaced with the Samba version number.
A A %h%h will be replaced with the hostname.
This enables or disables the honoring of - the share modesshare modes during a file open. These modes are used by clients to gain exclusive read or write access to a file.
The share modes that are enabled by this option are
- DENY_DOS, DENY_DOS, DENY_ALL
DENY_ALL,
- DENY_READ, DENY_READ, DENY_WRITE
DENY_WRITE,
- DENY_NONE and DENY_NONE and DENY_FCB
DENY_FCB.
default case - . This option can be use with printer adminprinter admin 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.
Disabling the Disabling the show add printer wizardshow add printer wizard
parameter will always cause the OpenPrinterEx() on the server
to fail. Thus the APW icon will never be displayed. See also addprinter
- command, deleteprinter commanddeleteprinter command, printer adminprinter admin %m %t %r %f parameters are expanded %m%m will be substituted with the
shutdown message sent to the server. %t%t will be substituted with the
number of seconds to wait before effectively starting the
shutdown procedure. %r%r will be substituted with the
switch %f%f will be substituted with the
switch
Shutdown does not return so we need to launch it in background.
This parameter determines the number of - entries in the stat cachestat cache. You should never need to change this parameter.
This is a boolean that controls the handling of - disk space allocation in the server. When this is set to yesyes the server will change from UNIX behaviour of not committing real disk storage blocks when a file is extended to the Windows behaviour @@ -17947,15 +16153,15 @@ CLASS="CONSTANT" terminology this means that Samba will stop creating sparse files. This can be slow on some systems.
When strict allocate is When strict allocate is no
no the server does sparse
disk block allocation when a file is extended.
Setting this to Setting this to yes
yes can help Samba return
out of quota messages on systems that are restricting the disk quota
of users.
This is a boolean that controls the handling of - file locking in the server. When this is set to yesyes 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.
When strict locking is When strict locking is no
no the server does file
lock checks only when the client explicitly asks for them.
nono (the
default) means that See also the sync
- always> parameter. This is a boolean parameter that controls
whether writes will always be written to stable storage before
- the write call returns. If this is nono 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 yesyes then every write will be followed by a fsync()
call to ensure the data is written to disk. Note that
- the strict syncstrict sync parameter must be set to
- yesyes in order for this parameter to have
any affect. See also the strict
- sync parameter. This parameter maps how Samba debug messages
are logged onto the system syslog logging levels. Samba debug
- level zero maps onto syslog LOG_ERRLOG_ERR, debug
- level one maps onto LOG_WARNINGLOG_WARNING, debug level
- two maps onto LOG_NOTICELOG_NOTICE, debug level three
- maps onto LOG_INFO. All higher levels are mapped to LOG_DEBUG LOG_DEBUG. This parameter sets the threshold for sending messages
@@ -18176,18 +16376,14 @@ TARGET="_top"
>winbindd(8) daemon
uses this parameter to fill in the home directory for that user.
- If the string %D%D is present it is substituted
- with the user's Windows NT domain name. If the string %U
- is present it is substituted with the user's Windows
NT user name. Synonym for debug timestamp debug timestamp.
See also passwd - program, passwd chat passwd chat.
nono.
In order for this parameter to work correctly the encrypt passwordsencrypt passwords
parameter must be set to parameter must be set to no
no when
- this parameter is set to yesyes.
Note that even when this parameter is set a user @@ -18551,9 +16735,9 @@ NAME="USEMMAP" >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 nono 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 @@ -18567,51 +16751,6 @@ CLASS="COMMAND" >
If this global parameter is yes, it specifies - that the UNIX user's .rhosts file in their home directory - will be read to find the names of hosts and users who will be allowed - access without specifying a password.
NOTE: The use of use rhosts - can be a major security hole. This is because you are - trusting the PC to supply the correct username. It is very easy to - get a PC to supply a false username. I recommend that the use rhosts option be only used if you really know what - you are doing.
Default: use rhosts = no
Synonym for username username.
Synonym for username username.
The The usernameusername 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.
The The usernameusername 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 - usernameusername 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 @@ -18695,12 +16824,10 @@ CLASS="PARAMETER" >To restrict a service to a particular set of users you can use the valid users - parameter.
If any of the usernames begin with a '&' then the name +>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.
Default: The guest account if a guest service, - else <empty string>.Examples:AstrangeUser - .
Default:
For example to map from the name For example to map from the name admin
admin
- or administrator to the UNIX name administrator to the UNIX name root
root you would use:
root = admin administrator
Or to map anyone in the UNIX group Or to map anyone in the UNIX group system
system
- to the UNIX name syssys you would use:
Note that the remapping is applied to all occurrences
- of usernames. Thus if you connect to \\server\fred and fred is remapped to fred is remapped to mary
mary then you
will actually be connecting to \\server\mary and will need to
- supply a password suitable for marymary not
- fredfred. The only exception to this is the
username passed to the password server password server (if you have one). The password
server will receive whatever username the client supplies without
@@ -18931,9 +17056,9 @@ NAME="USESENDFILE"
>>use sendfile (S)
If this parameter is If this parameter is yes
yes, and Samba
was built with the --with-sendfile-support option, and the underlying operating
system supports sendfile system call, then some SMB read calls (mainly ReadAndX
@@ -18959,9 +17084,9 @@ NAME="UTMP"
Samba has been configured and compiled with the option --with-utmp. If set to . If set to yes
yes 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
@@ -18975,11 +17100,9 @@ CLASS="CONSTANT"
>
See also the utmp directory utmp directory parameter.
utmputmp parameter. By default this is not set, meaning the system will use whatever utmp file the @@ -19049,11 +17170,9 @@ CLASS="COMMAND" See also the utmputmp parameter. By default this is not set, meaning the system will use whatever utmp file the @@ -19084,40 +17203,32 @@ NAME="VALIDUSERS" >
This is a list of users that should be allowed - to login to this service. Names starting with '@', '+' and '&' + to login to this service. Names starting with '@', '+' and '&' are interpreted using the same rules as described in the - invalid usersinvalid users parameter.
If this is empty (the default) then any user can login. - If a username is in both this list and the invalid - users list then access is denied for that user.
The current servicename is substituted for The current servicename is substituted for %S - . This is useful in the [homes] section.
See also invalid users -
include the unix directory separator '/'.
Note that the Note that the case sensitivecase sensitive option is applicable in vetoing files.
fail unless you also set - the delete veto filesdelete veto files parameter to - yesyes.
Setting this parameter will affect the performance @@ -19196,20 +17301,16 @@ CLASS="PARAMETER" >
See also hide files - and case sensitive case sensitive.
This parameter is only valid when the oplocksoplocks parameter is turned on for a share. It allows the Samba administrator @@ -19255,11 +17354,9 @@ CLASS="PARAMETER" match a wildcarded list, similar to the wildcarded list used in the veto filesveto files parameter.
vfs object vfs object.endpwent() group of system calls. If - the winbind enum userswinbind enum users parameter is - nono, calls to the getpwentendgrent() group of system calls. If - the winbind enum groupswinbind enum groups parameter is - nono, calls to the getgrent()
Default: winbind gid = <empty string> +>winbind gid = <empty string>
This parameter allows an admin to define the character - used when listing a username of the form of DOMAIN - \\useruser. This parameter is only applicable when using the
Default: winbind uid = <empty string> +>winbind uid = <empty string>
Default: winbind use default domain = <no> +>winbind use default domain = <no>
nmbd(8) will respond to broadcast name queries on behalf of other hosts. You may need to set this - to yesyes for some older clients.
Default: nmbd(8) process in Samba will act as a WINS server. You should
- not set this to yesyes unless you have a multi-subnetted network and
you wish a particular NEVER set this to set this to yes
yes
on more than one machine in your network.
Synonym for writeable writeable for people who can't spell :-).
See also the read list - option.
Default: write list = <empty string> +>write list = <empty string>
Inverted synonym for read only read only.
Inverted synonym for read only read only.
The owner of a file or directory can be changed - to the name given using the -C-C option. The name can be a sid in the form S-1-x-y-z or a name resolved against the server specified in the first argument.
The group owner of a file or directory can - be changed to the name given using the -G-G option. The name can be a sid in the form S-1-x-y-z or a name resolved against the server specified n the first argument. @@ -198,10 +194,10 @@ NAME="AEN79" >
-REVISION:<revision number> -OWNER:<sid or name> -GROUP:<sid or name> -ACL:<sid or name>:<type>/<flags>/<mask>
The revision of the ACL specifies the internal Windows @@ -229,30 +225,30 @@ ACL:<sid or name>:<type>/<flags>/<mask>
#define SEC_ACE_FLAG_OBJECT_INHERIT 0x1
#define SEC_ACE_FLAG_OBJECT_INHERIT 0x1
#define SEC_ACE_FLAG_CONTAINER_INHERIT 0x2
#define SEC_ACE_FLAG_CONTAINER_INHERIT 0x2
#define SEC_ACE_FLAG_NO_PROPAGATE_INHERIT 0x4
#define SEC_ACE_FLAG_NO_PROPAGATE_INHERIT 0x4
#define SEC_ACE_FLAG_INHERIT_ONLY 0x8
#define SEC_ACE_FLAG_INHERIT_ONLY 0x8
The server name is looked up according to either - the -R-R parameter to smbclient
The password required to access the specified service on the specified server. If this parameter is - supplied, the -N-N option (suppress password prompt) is assumed.
There is no default password. If no password is supplied on the command line (either by using this parameter or adding - a password to the -U-U option (see - below)) and the -N-N option is not specified, the client will prompt for a password, even if the desired service does not require one. (If no password is @@ -212,7 +200,7 @@ CLASS="REFENTRYTITLE" options.
This option is used by the programs in the Samba @@ -227,9 +215,9 @@ CLASS="REFENTRYTITLE" >
lmhosts
lmhosts: Lookup an IP
address in the Samba lmhosts file. If the line in lmhosts has
no name type attached to the NetBIOS name (see
@@ -244,9 +232,9 @@ CLASS="REFENTRYTITLE"
>
host
host: Do a standard host
name to IP address resolution, using the system
wins
wins: Query a name with
- the IP address listed in the wins serverwins server
parameter. If no WINS server has
been specified this method will be ignored.
bcast
bcast: Do a broadcast on
each of the known local interfaces listed in the
- interfacesinterfaces
parameter. This is the least reliable of the name resolution
methods as it depends on the target host being on a locally
@@ -307,12 +291,10 @@ CLASS="REFENTRYTITLE"
(name resolve order) will be used.
The default order is lmhosts, host, wins, bcast and without - this parameter or any entry in the name resolve order - parameter of the to the machine FRED.
You may also find the You may also find the -U-U and - -I-I options useful, as they allow you to control the FROM and TO parts of the message.
See the See the message commandmessage command parameter in the -d debuglevel debugleveldebuglevel is an integer from 0 to 10, or
the letter 'A'. debugleveldebuglevel is set to the letter 'A', then -l logfilename If specified, If specified, logfilenamelogfilename specifies a base filename
into which operational data from the running client will be
logged. IP addressIP address is the address of the server to connect to.
It should be specified in standard "a.b.c.d" notation. Normally the client would attempt to locate a named
SMB/CIFS server by looking it up via the NetBIOS name resolution
- mechanism described above in the name resolve ordername resolve order
parameter above. Using this parameter will force the client
to assume that the server is on the machine with the specified IP
@@ -578,19 +544,19 @@ CLASS="PARAMETER"
> Sets the SMB username or username and password.
If %pass is not specified, The user will be prompted. The client
- will first check the USERUSER environment variable, then the
- LOGNAMELOGNAME variable and if either exists, the
string is uppercased. Anything in these variables following a '%'
sign will be treated as the password. If these environment
- variables are not found, the username GUESTGUEST
is used. smbclient will look for
- a PASSWDPASSWD environment variable from which
to read the password. -A-A for more details. Be cautious about including passwords in scripts or in
- the PASSWDPASSWD environment variable. Also, on
many systems the command line of a running process may be seen
via the If the domain parameter is missing the current workgroup name
@@ -663,12 +627,10 @@ domain = <value>smbclient -L
host and a list should appear. The and a list should appear. The -I
- option may be useful if your NetBIOS names don't
match your TCP/IP DNS host names or if you are trying to reach a
host on another network. cc - Create a tar file on UNIX.
Must be followed by the name of a tar file, tape device
or "-" for standard output. If using standard output you must
turn the log level to its lowest value -d0 to avoid corrupting
your tar file. This flag is mutually exclusive with the
- xx flag. xx - Extract (restore) a local
tar file back to a share. Unless the -D option is given, the tar
files will be restored from the top level of the share. Must be
followed by the name of the tar file, device or "-" for standard
- input. Mutually exclusive with the cc flag.
Restored files have their creation times (mtime) set to the
date saved in the tar file. Directories currently do not get
@@ -787,11 +741,9 @@ CLASS="PARAMETER"
> II - Include files and directories.
Is the default behavior when filenames are specified above. Causes
tar files to be included in an extract or create (and therefore
@@ -800,28 +752,22 @@ CLASS="PARAMETER"
> XX - Exclude files and directories.
Causes tar files to be excluded from an extract or create. See
example below. Filename globbing works in one of two ways now.
- See rr below. bb - Blocksize. Must be followed
by a valid (greater than zero) blocksize. Causes tar file to be
written out in blocksize*TBLOCK (usually 512 byte) blocks.
@@ -829,38 +775,30 @@ CLASS="PARAMETER"
> gg - Incremental. Only back up
files that have the archive bit set. Useful only with the
- cc flag. qq - Quiet. Keeps tar from printing
diagnostics as it works. This is the same as tarmode quiet.
rr - Regular expression include
or exclude. Uses regular expression matching for
excluding or excluding files if compiled with HAVE_REGEX_H.
@@ -870,41 +808,31 @@ CLASS="PARAMETER"
> NN - Newer than. Must be followed
by the name of a file whose date is compared against files found
on the share during a create. Only files newer than the file
specified are backed up to the tar file. Useful only with the
- cc flag. aa - Set archive bit. Causes the
archive bit to be reset when a file is backed up. Useful with the
- g and g and cc flags.
command string is a semicolon-separated list of
- commands to be executed instead of prompting from stdin. -N is implied by -N is implied by -c-c. This is particularly useful in scripts and for printing stdin
@@ -1056,9 +980,9 @@ NAME="AEN336"
>Once the client is running, the user is presented with
a prompt : smb:\> smb:\> The backslash ("\\") indicates the current working directory
@@ -1078,7 +1002,7 @@ CLASS="PROMPT"
> Parameters shown in square brackets (e.g., "[parameter]") are
optional. If not given, the command will use suitable defaults. Parameters
- shown in angle brackets (e.g., "<parameter>") are required.
+ shown in angle brackets (e.g., "<parameter>") are required.
Note that all commands operating on the server are actually
@@ -1096,11 +1020,9 @@ CLASS="VARIABLELIST"
>? [command] If If commandcommand is specified, the ? command will display
a brief informative message about the specified command. If no
command is specified, a list of available commands will
@@ -1110,11 +1032,9 @@ CLASS="REPLACEABLE"
>! [shell command] If If shell commandshell command is specified, the !
command will execute a shell locally and run the specified shell
command. If no command is specified, a local shell will be run.
@@ -1169,27 +1089,23 @@ CLASS="REPLACEABLE"
directory on the server will be reported. The client will request that the server attempt
- to delete all files matching maskmask from the current working
directory on the server. A list of the files matching A list of the files matching maskmask in the current
working directory on the server will be retrieved from the server
and displayed. Copy the file called lcd [directory name] If If directory namedirectory name is specified, the current
working directory on the local machine will be changed to
the directory specified. This operation will fail if for any
@@ -1267,13 +1181,13 @@ CLASS="REPLACEABLE"
lowercase filenames are the norm on UNIX systems. See the dir command above. This command allows the user to set up a mask
@@ -1299,28 +1213,24 @@ CLASS="REPLACEABLE"
mask back to "*" after using the mget or mput commands. See the mkdir command. Copy all files matching Copy all files matching maskmask from the server to
the machine running the client. Note that Note that maskmask is interpreted differently during recursive
operation and non-recursive operation - refer to the recurse and
mask commands for more information. Note that all transfers in
@@ -1330,30 +1240,26 @@ CLASS="COMMAND"
> are binary. See also the lowercase command. Create a new directory on the server (user access
privileges permitting) with the specified name. Copy all files matching Copy all files matching maskmask in the current working
directory on the local machine to the current working directory on
the server. Note that Note that maskmask is interpreted differently during recursive
operation and non-recursive operation - refer to the recurse and mask
commands for more information. Note that all transfers in Print the specified file from the local machine
@@ -1372,7 +1278,7 @@ CLASS="COMMAND"
>See also the printmode command. Set the print mode to suit either binary data
@@ -1392,7 +1298,7 @@ CLASS="COMMAND"
Copy the file called See the exit command. See the rmdir command. Remove all files matching Remove all files matching maskmask from the current
working directory on the server. Remove the specified directory (user access
privileges permitting) from the server. A version of the DOS attrib command to set
@@ -1493,15 +1397,13 @@ CLASS="COMMAND"
Performs a tar operation - see the Performs a tar operation - see the -T
- command line option above. Behavior may be affected
by the tarmode command (see below). Using g (incremental) and N
(newer) will affect tarmode settings. Note that using the "-" option
@@ -1509,20 +1411,18 @@ CLASS="PARAMETER"
Blocksize. Must be followed by a valid (greater
than zero) blocksize. Causes tar file to be written out in
- blocksizeblocksize*TBLOCK (usually 512 byte) blocks. Changes tar's behavior with regard to archive
@@ -1564,25 +1464,25 @@ NAME="AEN532"
> The variable The variable USERUSER may contain the
username of the person using the client. This information is
used only if the protocol level is high enough to support
session-level passwords. The variable The variable PASSWDPASSWD may contain
the password of the person using the client. This information is
used only if the protocol level is high enough to support
session-level passwords. The variable The variable LIBSMB_PROGLIBSMB_PROG may contain
the path, executed with system(), which the client should connect
to instead of connecting to a server. This functionality is primarily
diff --git a/docs/htmldocs/smbcontrol.1.html b/docs/htmldocs/smbcontrol.1.html
index 25c8e33e08..dcea1b564a 100644
--- a/docs/htmldocs/smbcontrol.1.html
+++ b/docs/htmldocs/smbcontrol.1.html
@@ -5,7 +5,7 @@
>smbcontrol One of One of nmbd, nmbd, smbdsmbd or a process ID. The The smbdsmbd destination causes the
message to "broadcast" to all smbd daemons. The The nmbdnmbd destination causes the
message to be sent to the nmbd daemon specified in the
message-type One of: One of: The The The The The The The The The The The The The The The The username = <value>
-password = <value>
-domain = <value>
username = <value>
+password = <value>
+domain = <value>ENVIRONMENT VARIABLES
close-share
close-share,
- debugdebug,
- force-election, force-election, ping
-
, , profile
, profile, debuglevel
, debuglevel, profilelevel
profilelevel,
- or printnotifyprintnotify.close-share
close-share message-type sends a
message to smbd which will then close the client connections to
the named share. Note that this doesn't affect client connections
@@ -188,25 +180,25 @@ CLASS="CONSTANT"
share name for which client connections will be closed, or the
"*" character which will close all currently open shares.
This may be useful if you made changes to the access controls on the share.
- This message can only be sent to smbdsmbd.debug
debug message-type allows
the debug level to be set to the value specified by the
parameter. This can be sent to any of the destinations.force-election
force-election message-type can only be
- sent to the nmbdnmbd destination. This message
causes the daemon to force a new browse
master election.ping
ping message-type sends the
number of "ping" messages specified by the parameter and waits
for the same number of reply "pong" messages. This can be sent to
any of the destinations.profile
profile message-type sends a
message to an smbd to change the profile settings based on the
parameter. The parameter can be "on" to turn on profile stats
@@ -233,25 +225,25 @@ CLASS="CONSTANT"
disabled), and "flush" to zero the current profile stats. This can
be sent to any smbd or nmbd destinations.debuglevel
debuglevel message-type sends
a "request debug level" message. The current debug level setting
is returned by a "debuglevel" message. This can be
sent to any of the destinations.profilelevel
profilelevel message-type sends
a "request profile level" message. The current profile level
setting is returned by a "profilelevel" message. This can be sent
to any smbd or nmbd destinations.printnotify
printnotify message-type sends a
message to smbd which in turn sends a printer notify message to
any Windows NT clients connected to a printer. This message-type
@@ -308,9 +300,9 @@ CLASS="VARIABLELIST"
event has occured. It doesn't actually cause the
event to happen.
- This message can only be sent to smbdsmbd.
debugleveldebuglevel is an integer from 0 to 10. The default value if this parameter is not specified is zero.
log - level parameter in the file.If specified, - log directorylog directory specifies a log directory into which the "log.smbd" log file will be created for informational and debug @@ -289,11 +283,9 @@ CLASS="REPLACEABLE" its size may be controlled by the max log sizemax log size option in the
See the socket optionssocket options parameter in the file for details.
port numberport number is a positive integer value. The default value if this parameter is not specified is 139.
The file specified contains the @@ -534,17 +522,17 @@ NAME="AEN177" CLASS="VARIABLELIST" >
If no printer name is specified to printable services, most systems will use the value of - this variable (or lplp if this variable is not defined) as the name of the printer to use. This is not specific to the server, however.
obey - pam restricions smbgroupedit/etc/group), let's call it ), let's call itdomadm
domadm.
root# root# smbgroupedit -vs | grep "Domain Admins"root# root# smbgroupedit \ @@ -254,9 +254,9 @@ CLASS="EMPHASIS" >To verify that your mapping has taken effect:root# root# smbgroupedit -vs|grep "Domain Admins"root# root# smbgroupedit -a unixgroup -tdsmbmntsmbmnt {mount-point} [-s <share>] [-r] [-u <uid>] [-g <gid>] [-f <mask>] [-d <mask>] [-o <options>] {mount-point} [-s <share>] [-r] [-u <uid>] [-g <gid>] [-f <mask>] [-d <mask>] [-o <options>]
specifies the username to connect as. If - this is not given, then the environment variable USER USER is used. This option can also take the form "user%password" or "user/workgroup" or "user/workgroup%password" to allow the password and workgroup to be specified as part of the username.
specifies the SMB password. If this option is not given then the environment variable - PASSWDPASSWD is used. If it can find no password
specifies a file that contains a username and/or password. The format of the file is:
username = <value> -password = <value>username = <value> +password = <value>
This is preferred over having passwords in plaintext in a @@ -181,14 +181,14 @@ CLASS="FILENAME"
sets the source NetBIOS name. It defaults to the local hostname.
sets the uid that will own all files on @@ -197,7 +197,7 @@ CLASS="FILENAME"
sets the gid that will own all files on @@ -206,14 +206,14 @@ CLASS="FILENAME" gid.
sets the remote SMB port number. The default is 139.
sets the file mask. This determines the @@ -221,7 +221,7 @@ CLASS="FILENAME" The default is based on the current umask.
sets the directory mask. This determines the @@ -229,7 +229,7 @@ CLASS="FILENAME" The default is based on the current umask.
sets the debug level. This is useful for @@ -238,20 +238,20 @@ CLASS="FILENAME" output, possibly hiding the useful output.
sets the destination host or IP address.
sets the workgroup on the destination
sets the TCP socket options. See the smb.conf(5) socket optionssocket options option.
sets the NetBIOS scope
mount read-writesets the charset used by the Linux side for codepage @@ -307,7 +305,7 @@ CLASS="PARAMETER"
sets the codepage the server uses. See the iocharset @@ -316,7 +314,7 @@ CLASS="PARAMETER"
sets how long a directory listing is cached in milliseconds @@ -341,26 +339,26 @@ NAME="AEN130" >
The variable The variable USERUSER may contain the username of the person using the client. This information is used only if the protocol level is high enough to support session-level passwords. The variable can be used to set both username and password by using the format username%password.
The variable The variable PASSWDPASSWD may contain the password of the person using the client. This information is used only if the protocol level is high enough to support session-level passwords.
The variable The variable PASSWD_FILEPASSWD_FILE may contain the pathname of a file to read the password from. A single line of input is read and used as the password.
smbpasswddisableddisabled and the user will not be able to log onto the Samba server.- This means the account has no password (the passwords in the fields LANMAN Password Hash and NT Password Hash are ignored). Note that this - will only allow users to log on with no password if the null passwords null passwords parameter is set in the smbpasswdsmbpasswd [-a] [-x] [-d] [-e] [-D debuglevel] [-n] [-r <remote machine>] [-R <name resolve order>] [-m] [-U username[%password]] [-h] [-s] [-w pass] [-i] [-L] [username]
[-a] [-x] [-d] [-e] [-D debuglevel] [-n] [-r <remote machine>] [-R <name resolve order>] [-m] [-U username[%password]] [-h] [-s] [-w pass] [-i] [-L] [username]smbpasswd can also be used by a normal user to change their SMB password on remote machines, such as Windows NT Primary Domain - Controllers. See the (-r) and -r) and -U-U options below.
This option specifies that the username following should be added to the local smbpasswd file, with the - new password typed (type <Enter> for the old password). This + new password typed (type <Enter> for the old password). This option is ignored if the username following already exists in the smbpasswd file and it is treated like a regular change password command. Note that the default passdb backends require @@ -181,13 +177,13 @@ CLASS="FILENAME" >
This option specifies that the username following - should be disableddisabled in the local smbpasswd - file. This is done by writing a 'D''D' flag into the account control space in the smbpasswd file. Once this is done all attempts to authenticate via SMB using this username @@ -212,9 +208,9 @@ CLASS="REFENTRYTITLE" >
This option specifies that the username following - should be enabledenabled in the local smbpasswd file, if the account was previously disabled. If the account was not disabled this option has no effect. Once the account is enabled then @@ -240,11 +236,9 @@ CLASS="REFENTRYTITLE" >-D debuglevel
debugleveldebuglevel is an integer from 0 to 10. The default value if this parameter is not specified is zero.
This option allows a user to specify what machine they wish to change their password on. Without this parameter - smbpasswd defaults to the local host. The remote - machine name is the NetBIOS name of the SMB/CIFS server to contact to attempt the password change. This name is resolved into an IP address using the standard name resolution - mechanism in all programs of the Samba suite. See the -R - name resolve order parameter for details on changing this resolving mechanism.
The username whose password is changed is that of the - current UNIX logged on user. See the -U username-U username parameter for details on changing the password for a different username.
lmhosts
lmhosts: 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
host
host: Do a standard host
name to IP address resolution, using the system
wins
wins: Query a name with
- the IP address listed in the wins serverwins server
parameter. If no WINS server has been specified this method
will be ignored.
bcast
bcast: Do a broadcast on
each of the known local interfaces listed in the
- interfacesinterfaces parameter. This is the least
reliable of the name resolution methods as it depends on the
target host being on a locally connected subnet.
This option may only be used in conjunction - with the -r-r option. When changing a password on a remote machine it allows the user to specify the user name on that machine whose password will be changed. It @@ -492,34 +474,28 @@ CLASS="COMMAND" --with-ldapsam option. The option. The -w-w switch is used to specify the password to be used with the ldap admin - dn. Note that the password is stored in the secrets.tdb and is keyed off - of the admin's DN. This means that if the value of ldap - admin dn ever changes, the password will need to be manually updated as well.
smbd running on the local machine by specifying either running on the local machine by specifying either allow - hosts or or deny hostsdeny hosts entry in the smbshsmbsh [-W workgroup] [-U username] [-P prefix] [-R <name resolve order>] [-d <debug level>] [-l logfile] [-L libdir] [-W workgroup] [-U username] [-P prefix] [-R <name resolve order>] [-d <debug level>] [-l logfile] [-L libdir]This option is used to determine what naming @@ -145,9 +145,9 @@ CLASS="EMPHASIS" >
lmhosts
lmhosts:
Lookup an IP address in the Samba lmhosts file. If the
line in lmhosts has no name type attached to the
@@ -164,9 +164,9 @@ CLASS="REFENTRYTITLE"
>
host
host:
Do a standard host name to IP address resolution, using
the system
wins
wins:
Query a name with the IP address listed in the
- wins serverwins server parameter. If no
WINS server has been specified this method will be
ignored.
@@ -203,16 +201,14 @@ CLASS="PARAMETER"
>
bcast
bcast:
Do a broadcast on each of the known local interfaces
- listed in the interfacesinterfaces
parameter. This is the least reliable of the name
resolution methods as it depends on the target host
@@ -229,20 +225,16 @@ CLASS="REFENTRYTITLE"
>smb.conf(5) file parameter
- (name resolve ordername resolve order) will be used.
The default order is lmhosts, host, wins, bcast. Without - this parameter or any entry in the name resolve order - parameter of the
debug level is an integer from 0 to 10.
If specified causes all debug messages to be - written to the file specified by logfilename - . If not specified then all messages will be - written tostderrstderr.
ls /smb/MYGROUP/<machine-name>ls /smb/MYGROUP/<machine-name> will show the share names for that machine. You could then, for example, use the smbspool
smbspool tries to get the URI from argv[0]. If argv[0] - contains the name of the program then it looks in the DEVICE_URI DEVICE_URI environment variable.
Programs using the exec(2) functions can pass the URI in argv[0], while shell scripts must set the - DEVICE_URIDEVICE_URI environment variable prior to running smbspool.
sets debugging to specified level
causes smbstatus to only list shares.The default configuration file name is @@ -146,15 +146,13 @@ CLASS="REFENTRYTITLE" > for more information.
selects information relevant to - usernameusername only.
Change to initial Change to initial directory - before restoring / backing up files.
Tape device. May be regular file or tape
- device. Default: $TAPE$TAPE environmental
variable; if not set, a file called Log (debug) level. Corresponds to the
- -d-d flag of The The $TAPE$TAPE variable specifies the
default tape device to write to. May be overridden
with the -t option. The Samba server uses TCP to talk to the client. Thus if you are
trying to see if it performs well you should really compare it to
@@ -111,9 +111,9 @@ CLASS="SECT1"
> There are a number of socket options that can greatly affect the
performance of a TCP based server like Samba. The option "read size" affects the overlap of disk reads/writes with
network reads/writes. If the amount of data being transferred in
@@ -165,9 +165,9 @@ CLASS="SECT1"
> At startup the client and server negotiate a "maximum transmit" size,
which limits the size of nearly all SMB commands. You can set the
@@ -188,9 +188,9 @@ CLASS="SECT1"
> If you set the log level (also known as "debug level") higher than 2
then you may suffer a large drop in performance. This is because the
@@ -202,9 +202,9 @@ CLASS="SECT1"
> The "read raw" operation is designed to be an optimised, low-latency
file read operation. A server may choose to not support it,
@@ -224,9 +224,9 @@ CLASS="SECT1"
> The "write raw" operation is designed to be an optimised, low-latency
file write operation. A server may choose to not support it,
@@ -241,9 +241,9 @@ CLASS="SECT1"
> One person has reported that setting the protocol to COREPLUS rather
than LANMAN2 gave a dramatic speed improvement (from 10k/s to 150k/s). Slow logins are almost always due to the password checking time. Using
the lowest practical "password level" will improve things a lot. You
@@ -271,9 +271,9 @@ CLASS="SECT1"
> Often a speed problem can be traced to the client. The client (for
example Windows for Workgroups) can often be tuned for better TCP
@@ -431,7 +431,7 @@ ACCESSKEY="U"
WIDTH="33%"
ALIGN="right"
VALIGN="top"
->Creating Group ProfilesCreating Group Prolicy FilesENVIRONMENT VARIABLES
19.1. Comparisons
18.1. Comparisons19.2. Socket options
18.2. Socket options19.3. Read size
18.3. Read size19.4. Max xmit
18.4. Max xmit19.5. Log level
18.5. Log level19.6. Read raw
18.6. Read raw19.7. Write raw
18.7. Write raw19.8. Slow Clients
18.8. Slow Clients19.9. Slow Logins
18.9. Slow Logins19.10. Client tuning
18.10. Client tuning
Sets the value of the %L macro to Sets the value of the %L macro to servernameservername. This is useful for testing include files specified with the %L macro.
testparm will examine the will examine the hosts - allow and and hosts denyhosts deny parameters in the testprnsDIAGNOSTICSIf a printer is found to be valid, the message - "Printer name <printername> is valid" will be + "Printer name <printername> is valid" will be displayed.
If a printer is found to be invalid, the message - "Printer name <printername> is not valid" will be + "Printer name <printername> is not valid" will be displayed.
All messages that would normally be logged during diff --git a/docs/htmldocs/type.html b/docs/htmldocs/type.html index be7e722b2e..d4db19bf43 100644 --- a/docs/htmldocs/type.html +++ b/docs/htmldocs/type.html @@ -5,7 +5,7 @@ >Type of installation
New in the Samba 2.0.4 release is the ability for Windows NT clients to use their native security settings dialog box to @@ -100,9 +100,9 @@ CLASS="SECT1" >
From an NT 4.0 client, single-click with the right mouse button on any file or directory in a Samba mounted @@ -170,9 +170,9 @@ CLASS="SECT1" >
Clicking on the "SERVER\user (Long name)"
Where Where SERVERSERVER is the NetBIOS name of - the Samba server, useruser is the user name of - the UNIX user who owns the file, and (Long name)(Long name) is the descriptive string identifying the user (normally found in the GECOS field of the UNIX password database). Click on the button to remove this dialog.
If the parameter If the parameter nt acl supportnt acl support
- is set to falsefalse then the file owner will
be shown as the NT user 10.4. Viewing file or directory permissions
10.4. Viewing file or directory permissions
The third button is the "SERVER\user (Long name)"
Where Where SERVERSERVER is the NetBIOS name of - the Samba server, useruser is the user name of - the UNIX user who owns the file, and (Long name)(Long name) is the descriptive string identifying the user (normally found in the GECOS field of the UNIX password database).
If the parameter If the parameter nt acl supportnt acl support
- is set to falsefalse then the file owner will
be shown as the NT user 10.4.1. File Permissions
10.4.1. File Permissions
The standard UNIX user/group/world triple and the corresponding "read", "write", "execute" permissions @@ -388,9 +372,9 @@ CLASS="SECT2" >
Directories on an NT NTFS file system have two different sets of permissions. The first set of permissions @@ -420,9 +404,9 @@ CLASS="SECT1" >
Modifying file and directory permissions is as simple as changing the displayed permissions in the dialog box, and @@ -434,15 +418,13 @@ CLASS="COMMAND" with the standard Samba permission masks and mapping of DOS attributes that need to also be taken into account.
If the parameter If the parameter nt acl supportnt acl support
- is set to falsefalse then any attempt to set
security permissions will fail with an 10.6. Interaction with the standard Samba create mask
- parameters
Note that with Samba 2.0.5 there are four new parameters to control this interaction. These are :
security masksecurity mask
force security modeforce security mode
directory security maskdirectory security mask
force directory security modeforce directory security mode
Once a user clicks - security masksecurity mask parameter. Any bits that were changed that are not set to '1' in this parameter are left alone in the file permissions.
Essentially, zero bits in the Essentially, zero bits in the security masksecurity mask mask may be treated as a set of bits the user is create mask - parameter to provide compatibility with Samba 2.0.4 where this permission change facility was introduced. To allow a user to @@ -610,22 +578,18 @@ CLASS="PARAMETER" the bits set in the force security modeforce security mode parameter. Any bits that were changed that correspond to bits set to '1' in this parameter are forced to be set.
Essentially, bits set in the Essentially, bits set in the force security mode - parameter may be treated as a set of bits that, when modifying security on a file, the user has always set to be 'on'.
force - create mode parameter to provide compatibility with Samba 2.0.4 where the permission change facility was introduced. To allow a user to modify all the user/group/world permissions on a file with no restrictions set this parameter to 000.
The The security mask and security mask and force - security mode parameters are applied to the change request in that order.
For a directory Samba will perform the same operations as - described above for a file except using the parameter directory security mask instead of directory security mask instead of security - mask, and , and force directory security mode - parameter instead of parameter instead of force security mode - .
The The directory security maskdirectory security mask parameter - by default is set to the same value as the directory mask - parameter and the parameter and the force directory security - mode parameter by default is set to the same value as - the force directory modeforce directory mode parameter to provide compatibility with Samba 2.0.4 where the permission change facility was introduced.
file in that share specific section :security mask = 0777security mask = 0777
force security mode = 0force security mode = 0
directory security mask = 0777directory security mask = 0777
force directory security mode = 0force directory security mode = 0
As described, in Samba 2.0.4 the parameters :
create maskcreate mask
force create modeforce create mode
directory maskdirectory mask
force directory modeforce directory mode
were used instead of the parameters discussed here.
Samba maps some of the DOS attribute bits (such as "read only") into the UNIX permissions of a file. This means there can diff --git a/docs/htmldocs/vfs.html b/docs/htmldocs/vfs.html index 0e39297ebb..84ff1227d4 100644 --- a/docs/htmldocs/vfs.html +++ b/docs/htmldocs/vfs.html @@ -5,7 +5,7 @@ >Stackable VFS modules
NextSince samba 3.0, samba supports stackable VFS(Virtual File System) modules. Samba passes each request to access the unix file system thru the loaded VFS modules. @@ -121,17 +121,17 @@ CLASS="SECT1" >
A simple module to audit file access to the syslog facility. The following operations are logged: @@ -167,9 +167,9 @@ CLASS="SECT2" >
A recycle-bin like modules. When used any unlink call will be intercepted and files moved to the recycle @@ -238,9 +238,9 @@ CLASS="SECT2" >
A netatalk module, that will ease co-existence of samba and netatalk file sharing services.
This section contains a listing of various other VFS modules that have been posted but don't currently reside in the Samba CVS @@ -287,9 +287,9 @@ CLASS="SECT2" >
URL: 16.3.2. vscan
16.3.2. vscan
URL: NextAccess Samba source code via CVSGroup mapping HOWTO
debugleveldebuglevel is an integer from 0 to 10. The default value if this parameter is not specified is zero.
File name for log/debug files. The extension - '.client''.client' will be appended. The log file is never removed by the client.
load <module.so>load <module.so> - Load specified VFS module
populate <char> <size>populate <char> <size> - Populate a data buffer with the specified data
showdata [<offset> <len>]showdata [<offset> <len>] - Show data currently in data buffer
conf <smb.conf>conf <smb.conf> - Load a different configuration file
help [<command>]help [<command>] - Get list of commands or info about specified command
debuglevel <level>debuglevel <level> - Set debug level
The The -N-N option queries (8) to query the WINS server for the IP address associated with the NetBIOS name - specified by the namename parameter.
The The -I-I option queries (8) to send a node status request to get the NetBIOS name associated with the IP address - specified by the ipip parameter.
The The -n-n option queries smb.conf(5) workgroup - parameter.
Use Use -s-s to resolve - a SID to a name. This is the inverse of the -n - option above. SIDs must be specified as ASCII strings in the traditional Microsoft format. For example, S-1-5-21-1455342024-3071081365-2475485837-500.
Unified Logons between Windows NT and UNIX using WinbindIntegration of UNIX and Microsoft Windows NT through a unified logon has been considered a "holy grail" in heterogeneous @@ -107,9 +107,9 @@ CLASS="SECT1" >
It is well known that UNIX and Microsoft Windows NT have different models for representing user and group information and @@ -161,9 +161,9 @@ CLASS="SECT1" >
Winbind unifies UNIX and Windows NT account management by allowing a UNIX box to become a full member of a NT domain. Once @@ -203,9 +203,9 @@ CLASS="SECT2" >
Winbind is targeted at organizations that have an existing NT based domain infrastructure into which they wish @@ -227,9 +227,9 @@ CLASS="SECT1" >
The winbind system is designed around a client/server
architecture. A long running 14.4.1. Microsoft Remote Procedure Calls
14.4.1. Microsoft Remote Procedure Calls
Over the last few years, efforts have been underway by various Samba Team members to decode various aspects of @@ -273,9 +273,9 @@ CLASS="SECT2" >
Since late 2001, Samba has gained the ability to interact with Microsoft Windows 2000 using its 'Native @@ -292,9 +292,9 @@ CLASS="SECT2" >
The Name Service Switch, or NSS, is a feature that is present in many UNIX operating systems. It allows system @@ -372,9 +372,9 @@ CLASS="SECT2" >
Pluggable Authentication Modules, also known as PAM, is a system for abstracting authentication and authorization @@ -421,9 +421,9 @@ CLASS="SECT2" >
When a user or group is created under Windows NT is it allocated a numerical relative identifier (RID). This is @@ -447,9 +447,9 @@ CLASS="SECT2" >
An active system can generate a lot of user and group name lookups. To reduce the network cost of these lookups winbind @@ -470,9 +470,9 @@ CLASS="SECT1" >
Many thanks to John Trostel 14.5.1. Introduction
14.5.1. Introduction
This HOWTO describes the procedures used to get winbind up and running on my RedHat 7.1 system. Winbind is capable of providing access @@ -556,9 +556,9 @@ CLASS="SECT2" >
If you have a samba configuration file that you are currently
using... Before starting, it is probably best to kill off all the SAMBA
related daemons running on your server. Kill off all The configuration and compilation of SAMBA is pretty straightforward.
The first three steps may not be necessary depending upon
@@ -681,44 +681,44 @@ whether or not you have previously built the Samba binaries. The libraries needed to run the daemon
through nsswitch need to be copied to their proper locations, so root#root# cp ../samba/source/nsswitch/libnss_winbind.so /lib I also found it necessary to make the following symbolic link: root#root# ln -s /lib/libnss_winbind.so /lib/libnss_winbind.so.2 And, in the case of Sun solaris: root#root# ln -s /usr/lib/libnss_winbind.so /usr/lib/libnss_winbind.so.1
-root#root# ln -s /usr/lib/libnss_winbind.so /usr/lib/nss_winbind.so.1
-root#root# ln -s /usr/lib/libnss_winbind.so /usr/lib/nss_winbind.so.2 root#root# /sbin/ldconfig -v | grep winbind Several parameters are needed in the smb.conf file to control
the behavior of Enter the following command to make the SAMBA server join the
-PDC domain, where DOMAINDOMAIN is the name of
-your Windows domain and AdministratorAdministrator is
a domain user who has administrative privileges in the domain. root#root# /usr/local/samba/bin/net join -S PDC -U Administrator The proper response to the command should be: "Joined the domain
-DOMAIN" where DOMAIN" where DOMAINDOMAIN
is your DOMAIN name. Eventually, you will want to modify your smb startup script to
automatically invoke the winbindd daemon when the other parts of
@@ -973,9 +965,9 @@ SAMBA start, but it is possible to test out just the winbind
portion first. To start up winbind services, enter the following
command as root: root#root# /usr/local/samba/bin/winbinddI'm always paranoid and like to make sure the daemon
is really running... root#root# ps -ae | grep winbinddNow... for the real test, try to get some information about the
users on your PDC root#root# /usr/local/samba/bin/wbinfo -u Obviously, I have named my domain 'CEO' and my Obviously, I have named my domain 'CEO' and my winbind
-separator is '+'. You can do the same sort of thing to get group information from
@@ -1034,9 +1024,9 @@ the PDC: root#root# getent passwd The same thing can be done for groups with the command root#root# getent group The On solaris, you need to modify the
If you restart the If you have made it this far, you know that winbindd and samba are working
together. If you want to use winbind to provide authentication for other
@@ -1305,9 +1295,9 @@ CLASS="FILENAME"
> directory
by invoking the command root#root# make nsswitch/pam_winbind.so/usr/lib/security. root#root# cp ../samba/source/nsswitch/pam_winbind.so /lib/security The The /etc/pam.conf needs to be changed. I changed this file so that my Domain
users can logon both locally as well as telnet.The following are the changes
@@ -1559,9 +1549,9 @@ CLASS="SECT1"
> Winbind has a number of limitations in its current
released version that we hope to overcome in future
@@ -1601,9 +1591,9 @@ CLASS="SECT1"
> The winbind system, through the use of the Name Service
Switch, Pluggable Authentication Modules, and appropriate
diff --git a/docs/htmldocs/winbindd.8.html b/docs/htmldocs/winbindd.8.html
index dba9988e30..b114c40647 100644
--- a/docs/htmldocs/winbindd.8.html
+++ b/docs/htmldocs/winbindd.8.html
@@ -5,7 +5,7 @@
>winbindd Note in particular the use of the Note in particular the use of the sufficient
- keyword and the keyword and the use_first_passuse_first_pass keyword. Now replace the account lines with this: The username after the The username after the -U-U can be any
Domain user that has administrator privileges on the machine.
Substitute the name or IP of your PDC for "PDC". Storage for the Windows NT rid to UNIX user/group
id mapping. The lock directory is specified when Samba is initially
- compiled using the --with-lockdir--with-lockdir option.
This directory is by default
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng 14.5.3. Testing Things Out
14.5.3. Testing Things Out14.5.3.1. Configure and compile SAMBA
14.5.3.1. Configure and compile SAMBAroot#root# autoconf
-root#root# make clean
-root#root# rm config.cache
-root#root# ./configure
-root#root# make
-root#root# make install
14.5.3.2. Configure nsswitch.conf and the
-winbind libraries
14.5.3.3. Configure smb.conf
14.5.3.3. Configure smb.conf[global]
- <...>
+ <...>
# separate domain and username with '+', like DOMAIN+username
14.5.3.4. Join the SAMBA server to the PDC domain
14.5.3.4. Join the SAMBA server to the PDC domain14.5.3.5. Start up the winbindd daemon and test it!
14.5.3.5. Start up the winbindd daemon and test it!root#root# /usr/local/samba/bin/wbinfo -g
14.5.3.6. Fix the init.d startup scripts
14.5.3.6. Fix the init.d startup scripts14.5.3.6.1. Linux
14.5.3.6.1. Linux14.5.3.6.2. Solaris
14.5.3.6.2. Solaris14.5.3.6.3. Restarting
14.5.3.6.3. Restarting14.5.3.7. Configure Winbind and PAM
14.5.3.7. Configure Winbind and PAM14.5.3.7.1. Linux/FreeBSD-specific PAM configuration
14.5.3.7.1. Linux/FreeBSD-specific PAM configuration14.5.3.7.2. Solaris-specific configuration
14.5.3.7.2. Solaris-specific configuration14.6. Limitations
14.6. Limitations14.7. Conclusion
14.7. Conclusion