caasd
[metze/test/web/.git] / history / samba-2.2.2.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4
5 <head>
6 <title>Samba - Release Notes Archive</title>
7 </head>
8
9 <body>
10
11 <h2>The Samba Team are pleased to announce Samba&nbsp;2.2.2</h2>
12
13 <p>
14 <pre>
15 The Samba Team is proud to announce the release of Samba 2.2.2.
16
17 This is the latest stable release of Samba. This is the version that all
18 production Samba servers should be running for all current bug-fixes.
19
20 There are several important oplock logic bugs that have been fixed in
21 this release, so an upgrade is recommended.
22
23 Samba 2.2.2 is available in source form from samba.org and all of our
24 mirror sites at the url
25
26 <a href="/samba/ftp/samba-2.2.2.tar.gz">/samba/ftp/samba-2.2.2.tar.gz </a>
27
28 The release notes follow.
29
30 If you think you have found a bug please email a report to :
31
32         <a href="mailto:samba@samba.org">samba@samba.org</a>
33
34 As always, all bugs are our responsibility.
35
36 Regards,
37
38         The Samba Team.  
39
40 ----------------------------------------------------------------------
41               WHATS NEW IN Samba 2.2.2: 13th October 2001
42               ===========================================
43
44 This is the latest stable release of Samba. This is the version that all
45 production Samba servers should be running for all current bug-fixes.
46
47 There are several important oplock logic bugs that have been fixed in
48 this release, so an upgrade is recommended.
49
50 New daemon included - winbindd
51 ------------------------------
52
53 Samba 2.2.2 is the first release to include the winbind daemon.
54 This code allows UNIX systems that implement the name service
55 switch (nss) to be entered into a Windows NT/2000 domain and
56 use the Domain controller for all user and group enumeration.
57
58 This allows a Samba server added to a Windows domain to serve
59 file and print services with *NO* local users needed in /etc/passwd
60 and /etc/group - all users and groups are read directly from the
61 Windows domain controller. In addition with pam_winbind which allows
62 a PAM enabled UNIX system to use a Windows domain for authentication
63 service this allows single sign on and account control across
64 UNIX and Windows systems.
65
66 The current version of winbindd shipped in 2.2.2 does have some
67 memory leaks, which will be addressed for the next Samba release,
68 so it is advisable to monitor the winbind process. This code is
69 being used in production by several vendors, so the leaks are
70 managable. In addition, this version of winbind does not work
71 correctly against a Samba PDC, due to some missing calls on the
72 PDC side. These problems are being addressed for the next Samba
73 release, but it was thought better to release the code now rather
74 than delay the main Samba code to match the winbind release schedule.
75
76 For more information on using winbind, see the man pages for 
77 winbindd and wbinfo.
78
79 Note that winbindd is not installed by default.
80
81 New/Changed parameters in 2.2.2
82 -------------------------------
83
84 For more information on these parameters, see the man pages for
85 smb.conf.
86
87 Added/changed parameters.
88 -------------------------
89
90 strict allocate
91
92 Causes Samba not to create UNIX 'sparse' files, but to follow the
93 Windows behaviour of always allocating on-disk space.
94
95 use mmap
96
97 Set to 'on' by default, only set to 'off' on HPUX 11.x or below or other
98 UNIX systems that don't have coherent mmap/read-write internal caches.
99 You should not need to set this parameter.
100
101 nt acl support
102
103 This parameter has been changed to a per-share option, and is very
104 useful in enabling Windows 2000 SP2 to load/save profiles from a 
105 Samba share.
106
107 New printing parameters.
108 ------------------------
109
110 disable spoolss
111
112 Setting this parameter causes Samba to go back to the old 2.0.x
113 LANMAN printing behaviour, for people who wish to disable the
114 new SPOOLSS pipe.
115
116 use client driver
117
118 Causes Windows NT/2000 clients to need have a local printer driver
119 installed and to treat the printer as local.
120
121 New LDAP parameters.
122 --------------------
123
124 Samba 2.2.2 contains new code to maintain a Samba SAM database
125 on a remote LDAP server. These parameters have been added as
126 part of this code. These parameters are only available when Samba
127 has been compiled with the --with-ldapsam option.
128
129 ldap admin dn
130 ldap ssl
131
132 New SSL parameters.
133 -------------------
134
135 The SSL support in Samba has been fixed. These new parameters
136 are part of the changes added. These parameters are only available
137 when Samba has been compiled with the --with-ssl option. 
138 Please see the smb.conf man page for details.
139
140 ssl egd socket
141 ssl entropy file
142 ssl entropy bytes
143
144 New winbindd parameters.
145 ------------------------
146
147 These parameters are used by winbindd. See the man page for
148 winbindd for details.
149
150 winbind separator
151 winbind uid
152 winbind gid
153 winbind cache time
154 winbind enum users
155 winbind enum groups
156 template homedir
157 template shell
158
159 Removed parameters.
160 -------------------
161
162 share modes
163 ldap root
164 ldap root passwd
165
166 New Documentation.
167 ------------------
168
169 Some new README's have been added in the docs/ directory. These cover
170 using roving profiles with Windows 2000 SP2 (docs/README.Win2kSP2),
171 and how to use Samba to help prevent Windows virus spread
172 (docs/README.Win32-Viruses).
173
174 Quota problems on a Linux 2.4 kernel.
175 -------------------------------------
176
177 Currently the quota interfaces have diverged between the Linus
178 2.4.x kernels and the Alan Cox 2.4.x kernels (the Alan Cox varients
179 are shipped with RedHat). Running quota-enabled Samba compiled on
180 an Alan Cox kernel works correctly on an Alan Cox kernel (the one
181 shipped by default with RedHat 7.x) but fails on a Linus kernel.
182
183 This is a mess, and hopefully Alan and Linus will sort it out soon.
184 In the meantime we need to ship.....
185
186 Changes in 2.2.2
187 -----------------
188
189 1). mmap tdb code disabled on HPUX. This should prevent the reports of
190 tdb corruption on HPUX.
191 2). Large file support set to off in Solaris 5.5 and below.
192 3). Better CUPS detection.
193 4). New SAM (password database) backends - smbpasswd (traditional),
194 LDAP, NIS+ and Samba TDB.
195 5). Quota fixups on Linux.
196 6). libsmbclient stand-alone code added. Can be built as a shared library
197 under Linux.
198 7). Tru64 ACL suppport added.
199 8). winbindd option added.
200 9). Realloc fail tidyup fixes all over the code.
201 10). Large improvement in hash table code efficiency - would be found with
202 large stat caches.
203 11). Error code consistency improved (still needs more work).
204 12). Profile shared memory support added to nmbd.
205 13). New Windows 2000/NT passthrough info levels added.
206 14). readraw/writeraw code rewritten - many bugs fixed.
207 15). UNIX password sync (non pam) code fixed, use correct wildcard matcher.
208 16). Reverse DNS lookup avoided on socket open.
209 17). Bug preventing nmbd re-registering names on WINS server timeout fixed.
210 18). Zero length byte range lock code added. Much closer to Windows semantics.
211 19). Alignment fault fixes for Linux/Alpha.
212 20). Error checking on tdb returns vastly improved.
213 21). Handling of delete on close fixed. No longer possible to leave 'dead'
214 file entries.
215 22). Handling of oplock break failure cleanups improved. Should not be
216 able to leave 'dead' entries.
217 23). Fix handling of errors trying to set 64 bit locks on 32 bit NFS mounts.
218 24). Misc. MS-DFS code fixes.
219 25). Ignore logon packets if not a PDC (needed for PDC/BDC failover).
220 26). winbind pam module added.
221 27). Order N^^2 enumeration of printers problem fixed.
222 28). Password backend database code re-ordered to allow different password
223 backends (at compile time currently).
224 29). Improved print driver version detection for Windows 2000.
225 30). Driver DEVMODE initialization fixes.
226 31). Improved SYSV print parse code.
227 32). Fixed enumeration of large numbers of users/groups from Windows clients.
228 Code still too slow.
229 33). Fix for buggy NetApp RPC pipe clients.
230 34). Fix for NT sending multiple SetPrinterDataEx calls.
231 35). Fix for logic bug where smbd could delay oplock break request messages
232 from other smbd daemons whilst client kept us busy.
233 36). Fix deadlock problem with connections tdb on enumeration.
234 37). Fixes for setting/getting NT ACLs - improved POSIX mapping both ways.
235 38). Removed unused readbmpx/writebmpx code.
236 39). Attempt to fix Linux 2.4.x quota mess.
237 40). Improved ctemp code for Windows 2000 compatibilty.
238 41). Finally understood difference between set EOF and set allocation requests.
239 Added strict allocate parameter to help.
240 42). Correctly return name types on name to SID lookups.
241 43). tdb spinlock code update.
242 44). Use pread/pwrite on systems that have it to fix race condition in tdb code.
243
244 Older release notes for Samba 2.2.x follow.
245
246 -----------------------------------------------------------------------------
247 The release notes for 2.2.1a follow :
248
249 This is a minor bugfix release for 2.2.1, *NOT* security related.
250
251 1). 2.2.1 had a bug where using smbpasswd -m to add a Windows NT or
252 Windows2000 machine into a Samba hosted PDC would fail due to our
253 stricter user name checking. We were disallowing user names
254 containing '$', which is needed when using smbpasswd to add a
255 machine into a domain. Automatically adding machines (using the
256 native Windows tools) into a Samba domain worked correctly.
257
258 2.2.1a fixes this single problem.
259
260 -----------------------------------------------------------------------------
261 The release notes for 2.2.1 follow :
262
263 New/Changed parameters in 2.2.1
264 -------------------------------
265
266 Added parameters.
267 -----------------
268
269 obey pam restrictions
270
271 When Samba is configured to use PAM, turns on or off Samba checking
272 the PAM account restrictions. Defaults to off.
273
274 pam password change
275
276 When Samba is configured to use PAM, turns on or off Samba passing
277 the password changes to PAM. Defaults to off.
278
279 large readwrite
280
281 New option to allow new Windows 2000 large file (64k) streaming
282 read/write options. Needs a 64 bit underlying operating system
283 (for Linux use kernel 2.4 with glibc 2.2 or above). Can improve performance
284 by 10% with Windows 2000 clients. Defaults to off. Not as tested
285 as some other Samba code paths.
286
287 hide unreadable
288
289 Prevents clients from seeing the existance of files that cannot
290 be read. Off by default.
291
292 enhanced browsing
293
294 Turn on/off the enhanced Samba browing functionality (*1B names).
295 Default is "on". Can prevent eternal machines in workgroups when
296 WINS servers are not synchronised.
297
298 Removed parameters.
299 -------------------
300
301 domain groups
302 domain admin users
303 domain guest users
304
305 Changes in 2.2.1
306 -----------------
307
308 1). "find" command removed for smbclient. Internal code now used.
309 2). smbspool updates to retry connections from Michael Sweet.
310 3). Fix for mapping 8859-15 characters to UNICODE.
311 4). Changed "security=server" to try with invalid username to prevent
312     account lockouts.
313 5). Fixes to allow Windows 2000 SP2 clients to join a Samba PDC.
314 6). Support for Windows 9x Nexus tools to allow security changes from Win9x.
315 7). Two locking fixes added. Samba 2.2.1 now passes the Clarion network
316     lock tester tool for distributed databases.
317 8). Preliminary support added for Windows 2000 large file read/write SMBs.
318 9). Changed random number generator in Samba to prevent guess attacks.
319 10). Fixes for tdb corruption in connections.tdb and file locking brlock.tdb.
320      smbd's clean the tdb files on startup and shutdown.
321 11). Fixes for default ACLs on Solaris.
322 12). Tidyup of password entry caching code.
323 13). Correct shutdowns added for send fails. Helps tdb cleanup code.
324 14). Prevent invalid '/' characters in workgroup names.
325 15). Removed more static arrays in SAMR code.
326 16). Client code is now UNICODE on the wire.
327 17). Fix 2 second timstamp resolution everywhere if dos timestamp set to yes.
328 18). All tdb opens now going through logging function.
329 19). Add pam password changing and pam restrictions code.
330 20). Printer driver management improvements (delete driver).
331 21). Fix difference between NULL security descriptors and empty
332      security descriptors.
333 22). Fix SID returns for server roles.
334 23). Allow Windows 2000 mmc to view and set Samba share security descriptors.
335 24). Allow smbcontrol to forcibly disconnect a share.
336 25). tdb fixes for HPUX, OpenBSD and other OS's that don't have a coherent
337      mmap/file read/write cache.
338 26). Fix race condition in returning create disposition for file create/open.
339 27). Fix NT rewriting of security descriptors to their canonical form for
340      ACLs.
341 28). Fix for Samba running on top of Linux VFAT ftruncate bug.
342 29). Swat fixes for being run with xinetd that doesn't set the umask.
343 30). Fix for slow writes with Win9x Explorer clients. Emulates Microsoft
344      TCP stack early ack specification error.
345 31). Changed lock & persistant tdb directory to /var/cache/samba by default on
346      RedHat and Mandrake as they clear the /var/lock/samba directory on reboot.
347
348 -----------------------------------------------------------------------------
349 The release notes for 2.2.0a follow :
350
351 SECURITY FIX
352 ============
353
354 This is a security bugfix release for Samba 2.2.0. This release provides the
355 following two changes *ONLY* from the 2.2.0 release.
356
357 1). Fix for the security hole discovered by Michal Zalewski (lcamtuf@bos.bindview.com)
358     and described in the security advisory below.
359 2). Fix for the hosts allow/hosts deny parameters not being honoured.
360
361 No other changes are being made for this release to ensure a security fix only.
362 For new functionality (including these security fixes) download Samba 2.2.1
363 when it is available.
364
365 The security advisory follows :
366
367
368                 IMPORTANT: Security bugfix for Samba
369                 ------------------------------------
370
371 June 23rd 2001
372
373
374 Summary
375 -------
376
377 A serious security hole has been discovered in all versions of Samba
378 that allows an attacker to gain root access on the target machine for
379 certain types of common Samba configuration.
380
381 The immediate fix is to edit your smb.conf configuration file and
382 remove all occurances of the macro "%m". Replacing occurances of %m
383 with %I is probably the best solution for most sites.
384
385 Details
386 -------
387
388 A remote attacker can use a netbios name containing unix path
389 characters which will then be substituted into the %m macro wherever
390 it occurs in smb.conf. This can be used to cause Samba to create a log
391 file on top of an important system file, which in turn can be used to
392 compromise security on the server.
393
394 The most commonly used configuration option that can be vulnerable to
395 this attack is the "log file" option. The default value for this
396 option is VARDIR/log.smbd. If the default is used then Samba is not
397 vulnerable to this attack.
398
399 The security hole occurs when a log file option like the following is
400 used:
401
402   log file = /var/log/samba/%m.log
403
404 In that case the attacker can use a locally created symbolic link to
405 overwrite any file on the system. This requires local access to the
406 server.
407
408 If your Samba configuration has something like the following:
409
410   log file = /var/log/samba/%m
411
412 Then the attacker could successfully compromise your server remotely
413 as no symbolic link is required. This type of configuration is very
414 rare.
415
416 The most commonly used log file configuration containing %m is the
417 distributed in the sample configuration file that comes with Samba:
418
419   log file = /var/log/samba/log.%m
420
421 in that case your machine is not vulnerable to this attack unless you
422 happen to have a subdirectory in /var/log/samba/ which starts with the
423 prefix "log."
424
425 Credit
426 ------
427
428 Thanks to Michal Zalewski (lcamtuf@bos.bindview.com) for finding this
429 vulnerability.
430
431
432 New Release
433 -----------
434
435 While we recommend that vulnerable sites immediately change their
436 smb.conf configuration file to prevent the attack we will also be
437 making new releases of Samba within the next 24 hours to properly fix
438 the problem. Please see http://www.samba.org/ for the new releases.
439
440 Please report any attacks to the appropriate authority.
441
442         The Samba Team
443         security@samba.org
444
445 ---------------------------------------------------------------------------
446
447 The release notes for 2.2.0 follow :
448
449 This is the official Samba 2.2.0 release. This version of Samba provides
450 the following new features and enhancements.
451
452 Integration between Windows oplocks and NFS file opens (IRIX and Linux
453 2.4 kernel only). This gives complete data and locking integrity between
454 Windows and UNIX file access to the same data files.
455
456 Ability to act as an authentication source for Windows 2000 clients as
457 well as for NT4.x clients.
458
459 Integration with the winbind daemon that provides a single
460 sign on facility for UNIX servers in Windows 2000/NT4 networks
461 driven by a Windows 2000/NT4 PDC. winbind is not included in
462 this release, it currently must be obtained separately. We are
463 committed to including winbind in a future Samba 2.2.x release.
464
465 Support for native Windows 2000/NT4 printing RPCs. This includes
466 support for automatic printer driver download.
467
468 Support for server supported Access Control Lists (ACLs).
469 This release contains support for the following filesystems: 
470
471     Solaris 2.6+ 
472     SGI Irix 
473     Linux Kernel with ACL patch from http://acl.bestbits.at
474         Linux Kernel with XFS ACL support.
475         Caldera/SCO UnixWare
476         IBM AIX
477         FreeBSD (with external patch)
478
479 Other platforms will be supported as resources are
480 available to test and implement the encessary modules. If
481 you are interested in writing the support for a particular
482 ACL filesystem, please join the samba-technical mailing
483 list and coordinate your efforts. 
484  
485 On PAM (Pluggable Authentication Module) based systems - better debugging
486 messages and encrypted password users now have access control verified via
487 PAM - Note: Authentication still uses the encrypted password database.
488  
489 Rewritten internal locking semantics for more robustness.
490 This release supports full 64 bit locking semantics on all
491 (even 32 bit) platforms. SMB locks are mapped onto POSIX
492 locks (32 bit or 64 bit) as the underlying system allows.
493
494 Conversion of various internal flat data structures to use
495 database records for increased performance and
496 flexibility. 
497
498 Support for acting as a MS-DFS (Distributed File System) server.
499
500 Support for manipulating Samba shares using Windows client tools
501 (server manager). Per share security can be set using these tools
502 and Samba will obey the access restrictions applied.
503
504 Samba profiling support (see below).
505
506 Compile time option for enabling a (Virtual file system) VFS layer 
507 to allow non-disk resources to be exported as Windows filesystems
508 (such as databases etc.).
509
510 The documentation in this release has been updated and converted
511 from Yodl to DocBook 4.1. There are many new parameters since 2.0.7
512 and some defaults have changed.
513
514 Profiling support.
515 ------------------
516 Support for collection of profile information. A shared 
517 memory area has been created which contains counters for
518 the number of calls to and the amount of time spent in
519 various system calls, smb transactions and nmbd activity. See 
520 the file profile.h for a complete listing of the information 
521 collected. Sample code for a samba pmda (collection agent
522 for Performance Co-Pilot) has been included in the pcp
523 directory. 
524
525 To enable the profile data collection code in samba, you must 
526 compile samba with profile data support (run configure with 
527 the --with-profiling-data option). On startup, collection of 
528 data is disabled. To begin collecting data use the smbcontrol
529 program to turn on profiling (see the smbcontrol man page).
530 Profile information collection can be enabled for nmbd, all smbd
531 processes or one or more selected processes. The profiling
532 data collected is the aggragate for all processes that have
533 profiling enabled.
534
535 With samba compiled for profile data collection, you may see
536 a very slight degradation in performance even with profiling
537 collection turned off. On initial tests with NetBench on an
538 SGI Origin 200 server, this degradation was not measureable 
539 with profile collection off compared to no profile collection
540 compiled into samba. 
541
542 With count profile collection enabled on all clients, the 
543 degradation was less than 2%. With full profile collection 
544 enabled on all clients, the degradation was about 8.5%. 
545
546 =====================================================================
547
548 If you think you have found a bug please email a report to :
549
550         <a href="mailto:samba@samba.org">samba@samba.org</a>
551
552 As always, all bugs are our responsibility.
553
554 Regards,
555
556         The Samba Team.  
557 </pre>
558
559 </html>
560 </body>