WHATSNEW: Update changes since rc4.
[samba.git] / WHATSNEW.txt
1 Release Announcements
2 =====================
3
4 This is the fifth release candidate of Samba 4.0.  This is *not*
5 intended for production environments and is designed for testing
6 purposes only.  Please report any defects via the Samba bug reporting
7 system at https://bugzilla.samba.org/.
8
9 Samba 4.0 will be the next version of the Samba suite and incorporates
10 all the technology found in both the Samba4 series and the
11 stable 3.x series. The primary additional features over Samba 3.6 are
12 support for the Active Directory logon protocols used by Windows 2000
13 and above.
14
15 This release contains the best of all of Samba's
16 technology parts, both a file server (that you can reasonably expect
17 to upgrade existing Samba 3.x releases to) and the AD domain
18 controller work previously known as 'samba4'.
19
20 If you are upgrading, or looking to develop, test or deploy Samba 4.0
21 releases candidates, you should backup all configuration and data.
22
23
24 UPGRADING
25 =========
26
27 Users upgrading from Samba 3.x domain controllers and wanting to use
28 Samba 4.0 as an AD DC should use the 'samba-tool domain
29 classicupgrade' command.  See the wiki for more details:
30 https://wiki.samba.org/index.php/Samba4/samba3upgrade/HOWTO.
31
32 Users upgrading from Samba 4.0 alpha and beta releases since alpha15
33 should run 'samba-tool dbcheck --cross-ncs --fix' before re-starting
34 Samba.  Users upgrading from earlier alpha releases should contact the
35 team for advice.
36
37 Users upgrading an AD DC from any previous release should run
38 'samba-tool ntacl sysvolreset' to re-sync ACLs on the sysvol share
39 with those matching the GPOs in LDAP and the defaults from an initial
40 provision.  This will set an underlying POSIX ACL if required (eg not
41 using the NTVFS file server).
42
43 If you used the BIND9_FLATFILE or BIND9_DLZ features,
44 you'll have to add '-dns' to the 'server services' option,
45 as the internal dns server (SAMBA_INTERNAL) is the default now.
46
47
48 NEW FEATURES
49 ============
50
51 Samba 4.0 supports the server-side of the Active Directory logon
52 environment used by Windows 2000 and later, so we can do full domain
53 join and domain logon operations with these clients.
54
55 Our Domain Controller (DC) implementation includes our own built-in
56 LDAP server and Kerberos Key Distribution Center (KDC) as well as the
57 Samba3-like logon services provided over CIFS.  We correctly generate
58 the infamous Kerberos PAC, and include it with the Kerberos tickets we
59 issue.
60
61 Samba 4.0.0rc5 ships with two distinct file servers.  We now use the
62 file server from the Samba 3.x series 'smbd' for all file serving by
63 default.
64
65 Samba 4.0 also ships with the 'NTVFS' file server.  This file server
66 is what was used in all previous releases of Samba 4.0, and is
67 tuned to match the requirements of an AD domain controller.  We
68 continue to support this, not only to provide continuity to
69 installations that have deployed it as part of an AD DC, but also as a
70 running example of the NT-FSA architecture we expect to move smbd to in
71 the longer term.
72
73 For pure file server work, the binaries users would expect from that
74 series (nmbd, winbindd, smbpasswd) continue to be available.  When
75 running an AD DC, you only need to run 'samba' (not
76 nmbd/smbd/winbind), as the required services are co-coordinated by this
77 master binary.
78
79 As DNS is an integral part of Active Directory, we also provide two DNS
80 solutions, a simple internal DNS server for 'out of the box' configurations
81 and a more elaborate BIND plugin using the BIND DLZ mechanism in versions
82 9.8 and 9.9. During the provision, you can select which backend to use.
83 With the internal backend, your DNS server is good to go.
84 If you chose the BIND_DLZ backend, a configuration file will be generated
85 for bind to make it use this plugin, as well as a file explaining how to
86 set up bind.
87
88 To provide accurate timestamps to Windows clients, we integrate with
89 the NTP project to provide secured NTP replies.  To use you need to
90 start ntpd and configure it with the 'restrict ... ms-sntp' and
91 ntpsigndsocket options.
92
93 Finally, a new scripting interface has been added to Samba 4, allowing
94 Python programs to interface to Samba's internals, and many tools and
95 internal workings of the DC code is now implemented in python.
96
97
98 ######################################################################
99 Changes
100 #######
101
102 smb.conf changes
103 ----------------
104
105    Parameter Name                       Description
106    --------------                       -----------
107
108    allow dns updates                    New
109    announce as                          Removed
110    announce version                     Removed
111    cldap port                           New
112    client max protocol                  New
113    client min protocol                  New
114    client signing                       Changed default
115    dcerpc endpoint servers              New
116    dgram port                           New
117    directory security mask              Removed
118    display charset                      Removed
119    dns forwarder                        New
120    dns update command                   New
121    force security mode                  Removed
122    force directory security mode        Removed
123    homedir map                          Changed default
124    kernel oplocks                       Changed default
125    kernel share modes                   New
126    kpasswd port                         New
127    krb5 port                            New
128    nbt client socket address            New
129    nbt port                             New
130    nsupdate command                     New
131    ntp signd socket directory           New
132    ntvfs handler                        New
133    paranoid server security             Removed
134    pid directory                        New
135    printer admin                        Removed
136    rndc command                         New
137    rpc big endian                       New
138    samba kcc command                    New
139    security mask                        Removed
140    send spnego principal                Removed
141    server max protocol                  New
142    server min protocol                  New
143    server role                          New
144    server services                      New
145    server signing                       Changed default
146    share backend                        New
147    share modes                          Removed
148    smb2 max read                        Changed default
149    smb2 max write                       Changed default
150    smb2 max trans                       Changed default
151    socket address                       Removed
152    spn update command                   New
153    time offset                          Removed
154    tls cafile                           New
155    tls certfile                         New
156    tls crlfile                          New
157    tls dh params file                   New
158    tls enabled                          New
159    tls keyfile                          New
160    unicode                              New
161    web port                             New
162    winbindd privileged socket directory New
163    winbind sealed pipes                 New
164    winbindd socket directory            New
165
166
167 CHANGES SINCE 4.0.0rc4
168 ======================
169
170 With this release candidate the location of the socket samba accepts
171 connections from NTPd has changed, as has the enforced permissions.
172
173 This means the ntp.conf will need to change from (eg)
174
175 ntpsigndsocket /usr/local/samba/var/run/ntp_signd/
176
177 to
178
179 ntpsigndsocket /usr/local/samba/var/lib/ntp_signd/
180
181 To use the socket with ntp on a system with an ntp user and group, you must
182 run:
183
184 chgrp ntp /usr/local/samba/var/lib/ntp_signd/
185
186 o   Michael Adam <obnox@samba.org>
187     * BUG 9321: winbindd:cache: Fix offline logons with cached credentials.
188     * BUG 9339: Build and quota fixes.
189     * BUG 9353: Fix the cluster(ctdb) build without system talloc installed.
190
191
192 o   Christian Ambach <ambi@samba.org>
193     * BUG 9208: Cannot migrate files with inheritance flags to share on top of
194       NFSv4 filesystem.
195     * BUG 9361: Quotas management doesn't work with SMB2/3.
196
197
198 o   Andrew Bartlett <abartlet@samba.org>
199     * BUG 9317: Cannot easily change to internal DNS server.
200     * BUG 9338: lib/replace: Return size of xattr if size argument is 0.
201     * BUG 9339: Build and quota fixes.
202     * BUG 9340: Do not use the wheel group for 'administrators'.
203     * BUG 9347: winbind: Extend wbcAuthenticateUserEx to provide PAC.
204     * BUG 9352: Fix samba crashes with certain RPC calls.
205     * BUG 9355: Set mask values to 0777 and use fileserver.conf.
206     * BUG 9357: Don't expose more symbols than specified by abi_match setting.
207     * BUG 9379: ntp_signd permissions are too broad.
208
209
210 o   Björn Baumbach <bb@sernet.de>
211     * BUG 9300: vfs_streams_depot: Add delete_lost option.
212     * BUG 9348: Fix the build against older ctdb versions.
213     * BUG 9345: fix use of <smbconfoption> tag.
214     * BUG 9349: Fix check for ctdb_private.h
215     * BUG 9351: Fail "configure --with-cluster-support" if ctdb support is not
216       available.
217
218
219 o   Ira Cooper <ira@samba.org>
220     * BUG 9339: Build and quota fixes.
221
222
223 o   Günther Deschner <gd@samba.org>
224     * BUG 9272: 'net ads join' does not provide AES keys in host keytab.
225
226
227 o   David Disseldorp <ddiss@samba.org>
228     * BUG 9125: Revert "s3-winbindd: make sure we obey the -n switch
229       also for samlogon cache access" and describe samlogon cache caveat for
230       'winbindd -n'.
231
232
233 o   Björn Jacke <bj@sernet.de>
234     * BUG 7472: Check for dn_expand also in libinet.
235     * BUG 9339: Build and quota fixes.
236
237
238 o   Volker Lendecke <vl@samba.org>
239     * BUG 9208: Cannot migrate files with inheritance flags to share on top of
240       NFSv4 filesystem.
241     * BUG 9352: dsdb: Simplify DsCrackNameOneFilter a bit.
242
243
244 o   Stefan Metzmacher <metze@samba.org>
245     * BUG 8620: Read ACL are not enabled by default on DS.
246     * BUG 9175: Add smbXcli_session_set_disconnect_expired().
247     * BUG 9341: Fix SMBD_SMB2_NUM_IOV_PER_REQ check for sendfile().
248     * BUG 9359: Optimization needed for SMB2 performance sensitive workloads.
249     * BUG 9360: SMB1 tree connect time is wrong.
250
251
252 o   Ricky Nance <ricky.nance@weaubleau.k12.mo.us>
253     * BUG 9339: Build and quota fixes.
254
255
256 o   Rusty Russell <rusty@rustcorp.com.au>
257     * BUG 9339: Build and quota fixes.
258
259
260 o   Christof Schmitt <christof.schmitt@us.ibm.com>
261     * BUG 9347: winbind: Extend wbcAuthenticateUserEx to provide PAC.
262
263
264 o   Andreas Schneider <asn@samba.org>
265     * BUG 9326: Fix 'net ads join' message for the dns domain.
266     * BUG 9336: Add NetworkManager dispatcher script for Winbind.
267     * BUG 9339: Build and quota fixes.
268
269
270 o   Jelmer Vernooij <jelmer@samba.org>
271     * BUG 9357: Don't expose more symbols than specified by abi_match setting.
272
273
274 CHANGES SINCE 4.0.0rc3
275 ======================
276
277 o   Michael Adam <obnox@samba.org>
278     * BUG 9304: Remove unused sessionid.tdb and connections.tdb related code.
279     * BUG 9319: validate stat(2) information before reconnect durable handles.
280
281
282 o   Jeremy Allison <jra@samba.org>
283     * BUG 9190: Fix regression (change in behavior) of default acl masks.
284       Remove "security mask", "force security mode", "directory security mask"
285       "force directory" and "security mode" parameters.
286     * BUG 9329: Directory listing with SeBackup can crash smbd.
287
288
289 o   Andrew Bartlett <abartlet@samba.org>
290     * BUG 9295: Assert that auth_domain, auth_builtin, auth_sam, auth_winbind
291       are builtin.
292     * BUG 9322: Backport ldb version update.
293
294
295 o   Björn Baumbach <bb@sernet.de>
296     * BUG 9190: docs: Fix opening and ending tag mismatch: para.
297
298
299 o   Gregor Beck <gbeck@sernet.de>
300     * BUG 9304: Remove unused sessionid.tdb and connections.tdb related code.
301
302
303 o   David Disseldorp <ddiss@suse.de>
304     * BUG 8564: Fix segfault in pam_sm_authenticate().
305
306
307 o   Stefan Metzmacher <metze@samba.org>
308     * BUG 9184: Fix loop in tdgram_bsd_recvfrom().
309     * BUG 9209: Fix unitialized padding in smb2_create_blob_push_one().
310     * BUG 9304: Remove unused sessionid.tdb and connections.tdb related code.
311     * BUG 9309: Avoid a level 0 DEBUG if tstream_npa_connect_recv fails.
312     * BUG 9318: Fix write time updates for durable handles.
313
314
315 o   Andreas Schneider <asn@samba.org>
316     * BUG 9295: Build standard auth modules as internal modules.
317     * BUG 9301: Move 'smbprint' to a common location.
318
319
320 o   Jelmer Vernooij <jelmer@samba.org>
321     * BUG 9274: Add documentation and selftest fixes.
322
323
324 CHANGES SINCE 4.0.0rc2
325 ======================
326
327 o   Jeremy Allison <jra@samba.org>
328     * BUG 8966: Fix 'net rpc share allowedusers' to work with 2008r2.
329     * BUG 9209: Parse of invalid SMB2 create blob can cause smbd crash.
330     * BUG 9214: Bad user supplied SMB2 credit value can cause smbd to call
331       smb_panic.
332     * BUG 9222: Document that signing cannot be disabled for SMB2 by design.
333
334
335 o   Andrew Bartlett <abartlet@samba.org>
336     * BUG 9235: Update Samba3-HOWTO Collection.
337     * BUG 9271: samba-tool: Skip chown in sysvolreset when it would fail on
338       a GID.
339     * BUG 9274: Update Samba3-HOWTO Collection.
340
341
342 o   Björn Baumbach <bb@sernet.de>
343     * BUG 9235: Fix opening and ending tag mismatch in Samba3-HOWTO.
344     * BUG 9271: Fix typos in samba_backup.
345     * BUG 9274: Add delete_lost option to vfs_streams_depot.8.
346
347
348 o   Kai Blin <kai@samba.org>
349     * BUG 9225: Fix return code for deleted DNS records.
350     * BUG 8878: Time out UDP requests after DNS_REQUEST_TIMEOUT seconds.
351
352
353 o   Günther Deschner <gd@samba.org>
354     * BUG 9177: pam_winbind: Match more return codes when wbcGetPwnam has
355     failed.
356
357
358 o   David Disseldorp <ddiss@samba.org>
359     * BUG 9269: Fix 64bit-portability-issue.
360
361
362 o   Björn Jacke <bj@sernet.de>
363     * BUG 5670: Apply some Solaris packaging fixes.
364     * BUG 8107: Fix poll replacement to become a msleep replacement.
365     * BUG 8344: Fix --with(out)-sendfile-support option handling.
366
367
368 o   Volker Lendecke <vl@samba.org>
369     * BUG 9223: Fix uninitialized variable in the cldap server.
370     * BUG 9268: Make tdb robust against improper CLEAR_IF_FIRST restart.
371
372
373 o   Stefan Metzmacher <metze@samba.org>
374     * BUG 9271: Several samba-tool fixes.
375     * BUG 9196: Don't take 'state->te' as indication for "was_deferred".
376
377
378 o   Matthieu Patou <mat@matws.net>
379     * BUG 9240: Remove unused variable in DNS server.
380     * BUG 9252: Preliminary tests for dcpromo in Windows 2012 fails with
381       Samba DC.
382     * BUG 9253: Crackname returns a dns domain name even if there is no cracked
383       SID.
384     * BUG 9255: Getncchanges with exop for repl_obj returns highest_usn.
385     * BUG 9256: Getncchanges with exop for repl_obj_with_secrets should always
386       be allowed for RWDC.
387     * BUG 9257: LDAP server has at least one un-initialized variable.
388     * BUG 9258: LDAP server ignore configuration values set in the database for
389       timeout.
390     * BUG 9259: rodc join fails complaining that it can't find a RWDC.
391     * BUG 9260: kccdrs_replica_get_info returns invalid level when non
392       supported should be returned.
393     * BUG 9261: ds_replica_sync fails when specifying a name and not a guid.
394     * BUG 9264: getncchanges returns invalid_parameters when it should return
395       bad_nc.
396     * BUG 9254: DsExecuteKCC returns wrong error code if taskid != 0.
397     * BUG 9265: Bind dlz fails to start if there is a trustedanchors zone.
398
399
400 o   Rusty Russell <rusty@rustcorp.com.au>
401     * BUG 9268: Make tdb robust against shrinking tdbs.
402
403
404 o   Andreas Schneider <asn@samba.org>
405     * BUG 8769: Fix RAW printing for normal users.
406     * BUG 9112: Increase debug level for info that the db is empty.
407     * BUG 9244: Build pam_smbpass module only if enabled.
408     * BUG 9245: Make sure the registry is set up before we init printing.
409     * BUG 9276: Add config for systemd-tmpfiles.
410     * BUG 9280: Add support for reloading systemd services.
411
412
413 o   Karolin Seeger <kseeger@samba.org>
414     * BUG 7826: Remove link to Using Samba.
415     * BUG 8802: Add basic manpages for 'samba' and 'samba-tool'.
416     * BUG 9165: Fix makerpms.sh on RHEL.
417     * BUG 9243: Remove duplicate synonym min protocol.
418     * BUG 9271: Several samba-tool fixes.
419
420
421 o   Jelmer Vernooij <jelmer@samba.org>
422     * BUG 9243: Add basic documentation for 'server min protocol'.
423     * BUG 9271: Several samba-tool fixes.
424     * BUG 9274: Add documentation for several parameters.
425
426
427 o   Matthias Dieter Wallnöfer <mdw@samba.org>
428     * BUG 9183: Introduce the wildcard binding feature to allow DNS to listen on
429       localhost.
430
431
432 CHANGES SINCE 4.0.0rc1
433 ======================
434
435 o   Michael Adam <obnox@samba.org>
436     * BUG 9173: Make the SMB2 compound request create/delete_on_close/
437       close work as Windows.
438
439
440 o   Jeremy Allison <jra@samba.org>
441     * BUG 9161: Re-add the vfs_Chdir() cache.
442     * BUG 9189: SMB2 Create doesn't return correct MAX ACCESS access mask in
443       blob.
444     * BUG 9213: Bad ASN.1 NegTokenInit packet can cause invalid free.
445
446
447 o   Christian Ambach <ambi@samba.org>
448     * BUG 9162: Fix the build of the GPFS VFS module.
449     * BUG 9197: Only do 'printing_subsystem_update' when printing is enabled.
450
451
452 o   Andrew Bartlett <abartlet@samba.org>
453     * BUG 9228: Fix build on systems without ldap development headers.
454
455
456 o   Alexander Bokovoy <ab@samba.org>
457     * BUG 9157: Cleanup idmap_ldap build dependencies.
458     * BUG 9228: Make smbldaphelper subsystem an internal library.
459     * BUG 9229: Fix build of winbindd- and krb5 locator-related manpages.
460
461
462 o   Sumit Bose <sbose@redhat.com>
463     * BUG 9185: Allow DNS resolution of trusted domains if DNS name is
464       available.
465
466
467 o   Ira Cooper <ira@samba.org>
468     * BUG 9162: Fix build on Illumos/Solaris using '--with-acl'.
469     * BUG 9173: Compound requests should continue processing.
470
471
472 o   Günther Deschner <gd@samba.org>
473     * BUG 9185: Winbind cannot resolve AD DC in a different subnet.
474
475
476 o   Björn Jacke <bj@sernet.de>
477     * BUG 9162: Fix the build of the ACL VFS modules.
478     * BUG 9172: Fix reporting of gfs2 quotas.
479
480
481 o   Volker Lendecke <vl@samba.org>
482     * BUG 9217: CreateFile with FILE_DIRECTORY_FILE can create directories
483       on read-only shares.
484
485
486 o   Vladimir Marek <Vladimir.Marek@Oracle.COM>
487     * BUG 9192: Fix service control for non-internal services.
488
489
490 o   Stefan Metzmacher <metze@samba.org>
491     * BUG 9173: Make the SMB2 compound request create/delete_on_close/
492       close work as Windows.
493     * BUG 9184: Fix receiving of UDP packets from 0 bytes.
494     * BUG 9191: Release the share mode lock before calling exit_server().
495     * BUG 9193: Fix usage of invalid memory in smb2_signing_check_pdu().
496     * BUG 9194: Disallow '--prefix=/usr' and '--prefix=/usr/local' without
497       '--enable-fhs'.
498     * BUG 9198: Fix RHEL-CTDB packaging.
499
500
501 o   Matthieu Patou <mat@matws.net>
502     * BUG 9199: Fix usage of "panic action".
503     * BUG 9233: Fix a non handled memory out of memory.
504
505
506 o   Andreas Schneider <asn@samba.org>
507     * BUG 8632: Fix builtin forms order to match Windows again.
508     * BUG 9159: Fix generating idmap manpages.
509     * BUG 9218: Don't segfault if user specified ports out for range.
510     * BUG 9231: Fix NT_STATUS_IO_TIMEOUT during slow import of printers into
511       registry.
512
513
514 KNOWN ISSUES
515 ============
516
517 - 'samba-tool domain classicupgrade' will fail when setting ACLs on
518   the GPO folders with NT_STATUS_INVALID_ONWER in the default
519   configuration.  This happens if, as is typical a 'domain admins'
520   group (-512) is mapped in the passdb backend being upgraded.  This
521   is because the group mapping to a GID only prevents Samba from
522   allocating a uid for that group.  The uid is needed so the 'domain
523   admins' group can own the GPO file objects.
524
525   To work around this issue, remove the 'domain admins' group before
526   upgrade, as it will be re-created automatically.  You will
527   of course need to fill in the group membership again.  A future release
528   will make this automatic, or find some other workaround.
529
530 - This release makes the s3fs file server the default, as this is the
531   file server combination we will use for the Samba 4.0 release.
532
533 - For similar reasons, sites with ACLs stored by the ntvfs file server
534   may wish to continue to use that file server implementation, as a
535   posix ACL will similarly not be set in this case.
536
537 - Replication of DNS data from one AD server to another may not work.
538   The DNS data used by the internal DNS server and bind9_dlz is stored
539   in an application partition in our directory.  The replication of
540   this partition is not yet reliable.
541
542 - Replication may fail on FreeBSD due to getaddrinfo() rejecting names
543   containing _.  A workaround will be in a future release.
544
545 - samba_upgradeprovision should not be run when upgrading to this release
546   from a recent release.  No important database format changes have
547   been made since alpha16.
548
549 - Installation on systems without a system iconv (and developer
550   headers at compile time) is known to cause errors when dealing with
551   non-ASCII characters.
552
553 - Domain member support in the 'samba' binary is in its infancy, and
554   is not comparable to the support found in winbindd.  As such, do not
555   use the 'samba' binary (provided for the AD server) on a member
556   server.
557
558 - There is no NetBIOS browsing support (network neighbourhood)
559   available for the AD domain controller.  (Support in nmbd and smbd
560   for classic domains and member/standalone servers is unchanged).
561
562 - Clock Synchronisation is critical.  Many 'wrong password' errors are
563   actually due to Kerberos objecting to a clock skew between client
564   and server.  (The NTP work in the previous alphas are partly to assist
565   with this problem).
566
567 - The DRS replication code may fail.  Please contact the team if you
568   experience issues with DRS replication, as we have fixed many issues
569   here in response to feedback from our production users.
570
571
572 RUNNING Samba 4.0 as an AD DC
573 =============================
574
575 A short guide to setting up Samba 4 as an AD DC can be found on the wiki:
576
577   http://wiki.samba.org/index.php/Samba4/HOWTO
578
579 #######################################
580 Reporting bugs & Development Discussion
581 #######################################
582
583 Please discuss this release on the samba-technical mailing list or by
584 joining the #samba-technical IRC channel on irc.freenode.net.
585
586 If you do report problems then please try to send high quality
587 feedback. If you don't provide vital information to help us track down
588 the problem then you will probably be ignored.  All bug reports should
589 be filed under the Samba 4.0 product in the project's Bugzilla
590 database (https://bugzilla.samba.org/).
591
592
593 ======================================================================
594 == Our Code, Our Bugs, Our Responsibility.
595 == The Samba Team
596 ======================================================================
597