r12820: Remove duplicate entry caused by merge.
[kai/samba.git] / NEWS
1 This file aims to document the major changes since the latest released version 
2 of Samba, 3.0. Samba 4.0 contains rewrites of several subsystems 
3 and uses a different internal format for most data. Since this 
4 file is an initial draft, please update missing items.
5
6 One of the main goals of Samba 4 was Active Directory Domain Controller 
7 support. This means Samba now implements several protocols that are required 
8 by AD such as Kerberos and DNS.
9
10 An (experimental) upgrade script that performs a one-way upgrade 
11 from Samba 3 is available in source/setup/upgrade.
12
13 Removal of nmbd and introduction of process models
14 ==================================================
15 smbd now implements several network protocols other then just CIFS and 
16 DCE/RPC. nmbd's functionality has been merged into smbd. smbd supports 
17 various 'process models' that specify how concurrent connections are 
18 handled (when to fork, use threads, etc). 
19
20 Introduction of LDB
21 ===================
22 Samba now stores most of its persistent data in a LDAP-like database 
23 called LDB (see ldb(7) for more info). 
24
25 Much improved SWAT
26 ==================
27 SWAT has had some rather large improvements and is now more then just a 
28 direct editor for smb.conf. Its layout has been improved. SWAT can now also 
29 be used for editing run-time data - maintaining user information, provisioning,
30 etc. TLS is supported out of the box.
31
32 Built-in KDC
33 ============
34 Samba4 ships with an integrated KDC (Kerberos Key Distribution
35 Center).  Backed directly onto our main internal database, and
36 integrated with custom code to handle the PAC, Samba4's KDC is an
37 integral part of our support for AD logon protocols.
38
39 Built-in LDAP Server
40 ====================
41 Like the situation with the KDC, Samba4 ships with it's own LDAP
42 server, included to provide simple, built-in LDAP services in an AD
43 (rather than distinctly standards) matching manner.  The database is
44 LDB, and it shares that in common with the rest of Samba.
45
46 Changed configuration options
47 =============================
48 Several configuration options have been removed in Samba4 while others have 
49 been introduced. This section contains a summary of changes to smb.conf and 
50 where these settings moved. Configuration options that have disappeared may be 
51 re-added later when the functionality that uses them gets reimplemented in 
52 Samba 4.
53
54 The 'security' parameter has been split up. It is now only used to choose 
55 between the 'user' and 'share' security levels (the latter is not supported 
56 in Samba 4 yet). The other values of this option and the 'domain master' and 
57 'domain logons' parameters have been merged into a 'server role' parameter 
58 that can be either 'bdc', 'pdc', 'member server' or 'standalone'. Note that 
59 member server support does not work yet.
60
61 'password server' now takes a DCE/RPC binding string (see prog_guide.txt) 
62 rather then simply a NetBIOS name.
63
64 The following parameters have been removed:
65 - passdb backend: accounts are now stored in a LDB-based SAM database, 
66         see 'sam database' below.
67 - update encrypted
68 - public
69 - guest ok
70 - client schannel
71 - server schannel
72 - allow trusted domains
73 - hosts equiv
74 - map to guest
75 - smb passwd file
76 - algorithmic rid base
77 - root directory
78 - root dir
79 - root
80 - guest account
81 - enable privileges
82 - pam password change
83 - passwd program
84 - passwd chat debug
85 - passwd chat timeout
86 - check password script
87 - username map
88 - username level
89 - unix password sync
90 - restrict anonymous
91 - username
92 - user
93 - users
94 - invalid users
95 - valid users
96 - admin users
97 - read list
98 - write list
99 - printer admin
100 - force user
101 - force group
102 - group
103 - write ok
104 - writeable
105 - writable
106 - acl check permissions
107 - acl group control
108 - acl map full control
109 - create mask
110 - create mode
111 - force create mode
112 - security mask
113 - force security mode
114 - directory mask
115 - directory mode
116 - force directory mode
117 - directory security mask
118 - force directory security mode
119 - force unknown acl user
120 - inherit permissions
121 - inherit acls
122 - inherit owner
123 - guest only
124 - only guest
125 - only user
126 - allow hosts
127 - deny hosts
128 - preload modules
129 - use kerberos keytab
130 - syslog
131 - syslog only
132 - max log size
133 - debug timestamp
134 - timestamp logs
135 - debug hires timestamp
136 - debug pid
137 - debug uid
138 - allocation roundup size
139 - aio read size
140 - aio write size
141 - aio write behind
142 - large readwrite
143 - protocol
144 - read bmpx
145 - reset on zero vc
146 - acl compatibility
147 - defer sharing violations
148 - ea support
149 - nt acl support
150 - nt pipe support
151 - profile acls
152 - map acl inherit
153 - afs share
154 - max ttl
155 - client use spnego
156 - enable asu support
157 - svcctl list
158 - block size
159 - change notify timeout
160 - deadtime
161 - getwd cache
162 - keepalive
163 - kernel change notify
164 - lpq cache time
165 - max smbd processes
166 - max disk size
167 - max open files
168 - min print space
169 - strict allocate
170 - sync always
171 - use mmap
172 - use sendfile
173 - hostname lookups
174 - write cache size
175 - name cache timeout
176 - max reported print jobs
177 - load printers
178 - printcap cache time
179 - printcap name
180 - printcap
181 - printing
182 - cups options
183 - cups server
184 - iprint server
185 - print command
186 - disable spoolss
187 - enable spoolss
188 - lpq command
189 - lprm command
190 - lppause command
191 - lpresume command
192 - queuepause command
193 - queueresume command
194 - enumports command
195 - addprinter command
196 - deleteprinter command
197 - show add printer wizard
198 - os2 driver map
199 - use client driver
200 - default devmode
201 - force printername
202 - mangling method
203 - mangle prefix
204 - default case
205 - case sensitive
206 - casesignames
207 - preserve case
208 - short preserve case
209 - mangling char
210 - hide dot files
211 - hide special files
212 - hide unreadable
213 - hide unwriteable files
214 - delete veto files
215 - veto files
216 - hide files
217 - veto oplock files
218 - map readonly
219 - mangled names
220 - mangled map
221 - max stat cache size
222 - stat cache
223 - store dos attributes
224 - machine password timeout
225 - add user script
226 - rename user script
227 - delete user script
228 - add group script
229 - delete group script
230 - add user to group script
231 - delete user from group script
232 - set primary group script
233 - add machine script
234 - shutdown script
235 - abort shutdown script
236 - username map script
237 - logon script
238 - logon path
239 - logon drive
240 - logon home
241 - domain logons
242 - os level
243 - lm announce
244 - lm interval
245 - domain master
246 - browse list
247 - enhanced browsing
248 - dns proxy
249 - wins proxy
250 - wins hook
251 - wins partners
252 - blocking locks
253 - fake oplocks
254 - kernel oplocks
255 - locking
256 - lock spin count
257 - lock spin time
258 - oplocks
259 - level2 oplocks
260 - oplock break wait time
261 - oplock contention limit
262 - posix locking
263 - share modes
264 - ldap server
265 - ldap port
266 - ldap admin dn
267 - ldap delete dn
268 - ldap group suffix
269 - ldap idmap suffix
270 - ldap machine suffix
271 - ldap passwd sync
272 - ldap password sync
273 - ldap replication sleep
274 - ldap suffix
275 - ldap ssl
276 - ldap timeout
277 - ldap page size
278 - ldap user suffix
279 - add share command
280 - change share command
281 - delete share command
282 - eventlog list
283 - utmp directory
284 - wtmp directory
285 - utmp
286 - default service
287 - default
288 - message command
289 - dfree cache time
290 - dfree command
291 - get quota command
292 - set quota command
293 - remote announce
294 - remote browse sync
295 - homedir map
296 - afs username map
297 - afs token lifetime
298 - log nt token command
299 - time offset
300 - NIS homedir
301 - preexec
302 - exec
303 - preexec close
304 - postexec
305 - root preexec
306 - root preexec close
307 - root postexec
308 - set directory
309 - wide links
310 - follow symlinks
311 - dont descend
312 - magic script
313 - magic output
314 - delete readonly
315 - dos filemode
316 - dos filetimes
317 - dos filetime resolution
318 - fake directory create times
319 - panic action
320 - vfs objects
321 - vfs object
322 - msdfs root
323 - msdfs proxy
324 - host msdfs
325 - enable rid algorithm
326 - passdb expand explicit
327 - idmap backend
328 - idmap uid
329 - winbind uid
330 - idmap gid
331 - winbind gid
332 - template homedir
333 - template shell
334 - winbind separator
335 - winbind cache time
336 - winbind enum users
337 - winbind enum groups
338 - winbind use default domain
339 - winbind trusted domains only
340 - winbind nested groups
341 - winbind max idle children
342 - winbind nss info
343  
344 The following parameters have been added:
345 + rpc big endian (G)
346         Make Samba fake it is running on a bigendian machine when using DCE/RPC. 
347         Useful for debugging.
348
349         Default: no
350
351 + case insensitive filesystem (S)
352         Set to true if this share is located on a case-insensitive filesystem.
353         This disables looking for a filename by trying all possible combinations of 
354         uppercase/lowercase characters and thus speeds up operations when a 
355         file cannot be found. 
356
357         Default: no
358         
359 + js include (G)
360         Path to JavaScript library. 
361
362         Default: Set at compile-time
363         
364 + setup directory
365         Path to data used by provisioning script.
366
367         Default: Set at compile-time
368         
369 + ncalrpc dir
370         Directory to use for UNIX sockets used by the 'ncalrpc' DCE/RPC transport.
371
372         Default: Set at compile-time
373         
374 + ntvfs handler
375         Backend to the NT VFS to use (more then one can be specified). Available
376         backends include: 
377         
378         - posix:
379                 Maps POSIX FS semantics to NT semantics
380
381         - simple:
382                 Very simple backend (original testing backend).
383
384         - unixuid:
385                 Sets up user credentials based on POSIX gid/uid.
386
387         - cifs:
388                 Proxies a remote CIFS FS. Mainly useful for testing.
389
390         - nbench:
391                 Filter module that saves data useful to the nbench benchmark suite.
392
393         - ipc:
394                 Allows using SMB for inter process communication. Only used for 
395                 the IPC$ share.
396
397         - print:
398                 Allows printing over SMB. This is LANMAN-style printing (?), not 
399                 the be confused with the spoolss DCE/RPC interface used by later 
400                 versions of Windows.
401         
402         Default: unixuid default
403
404 + ntptr providor
405         FIXME
406
407 + dcerpc endpoint servers
408         What DCE/RPC servers to start.
409
410         Default: epmapper srvsvc wkssvc rpcecho samr netlogon lsarpc spoolss drsuapi winreg dssetup
411
412 + server services
413         Services Samba should provide.
414
415         Default: smb rpc nbt wrepl ldap cldap web kdc
416
417 + sam database
418         Location of the SAM (account database) database. This should be a 
419         LDB URL.
420
421         Default: set at compile-time
422
423 + spoolss database
424         Spoolss (printer) DCE/RPC server database. This should be a LDB URL.
425
426         Default: set at compile-time
427
428 + wins config database
429         WINS configuration database location. This should be a LDB URL.
430
431         Default: set at compile-time
432         
433 + wins database
434         WINS database location. This should be a LDB URL.
435
436         Default: set at compile-time
437         
438 + client use spnego principal
439         Tells the client to use the Kerberos service principal specified by the 
440         server during the security protocol negotation rather then 
441         looking up the principal itself (cifs/hostname).
442
443         Default: false
444
445 + nbt port
446         TCP/IP Port used by the NetBIOS over TCP/IP (NBT) implementation.
447  
448         Default: 137
449
450 + dgram port
451         UDP/IP port used by the NetBIOS over TCP/IP (NBT) implementation.
452         
453         Default: 138
454
455 + cldap port
456         UDP/IP port used by the CLDAP protocol.
457
458         Default: 389
459
460 + krb5 port
461         IP port used by the kerberos KDC.       
462         
463         Default: 88
464         
465 + kpasswd port
466         IP port used by the kerberos password change protocol.
467
468         Default: 464
469         
470 + web port
471         TCP/IP port SWAT should listen on.
472
473         Default: 901
474
475 + tls enabled
476         Enable TLS support for SWAT
477         
478         Default: true
479         
480 + tls keyfile
481         Path to TLS key file (PEM format) to be used by SWAT. If no 
482         path is specified, Samba will create a key.
483
484         Default: none
485
486 + tls certfile
487         Path to TLS certificate file (PEM format) to be used by SWAT. If no 
488         path is specified, Samba will create a certificate.
489
490         Default: none
491         
492 + tls cafile
493         Path to CA authority file Samba will use to sign TLS keys it generates. If 
494         no path is specified, Samba will create a self-signed CA certificate.
495
496         Default: none
497
498 + tls crlfile
499         Path to TLS certificate revocation lists file.
500
501         Default: none
502
503 + swat directory
504         SWAT data directory.
505
506         Default: set at compile-time
507
508 + large readwrite
509         Indicate the CIFS server is able to do large reads/writes.
510
511         Default: true
512         
513 + unicode
514         Enable/disable unicode support in the protocol.
515
516         Default: true