WHATSNEW: Update release notes for Samba 4.3.0rc3
[Samba.git] / WHATSNEW.txt
blob2a8e09aec4a6b383b43c11e9e5efc926b15d1620
1 Release Announcements
2 =====================
4 This is the fourth release candidate of Samba 4.3.  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/.
9 Samba 4.3 will be the next version of the Samba suite.
12 UPGRADING
13 =========
15 Nothing special.
18 NEW FEATURES
19 ============
21 Logging
22 -------
24 The logging code now supports logging to multiple backends.  In
25 addition to the previously available syslog and file backends, the
26 backends for logging to the systemd-journal, lttng and gpfs have been
27 added. Please consult the section for the 'logging' parameter in the
28 smb.conf manpage for details.
30 Spotlight
31 ---------
33 Support for Apple's Spotlight has been added by integrating with Gnome
34 Tracker.
36 For detailed instructions how to build and setup Samba for Spotlight,
37 please see the Samba wiki: <https://wiki.samba.org/index.php/Spotlight>
39 New FileChangeNotify subsystem
40 ------------------------------
42 Samba now contains a new subsystem to do FileChangeNotify. The
43 previous system used a central database, notify_index.tdb, to store
44 all notification requests. In particular in a cluster this turned out
45 to be a major bottleneck, because some hot records need to be bounced
46 back and forth between nodes on every change event like a new created
47 file.
49 The new FileChangeNotify subsystem works with a central daemon per
50 node. Every FileChangeNotify request and every event are handled by an
51 asynchronous message from smbd to the notify daemon. The notify daemon
52 maintains a database of all FileChangeNotify requests in memory and
53 will distribute the notify events accordingly. This database is
54 asynchronously distributed in the cluster by the notify daemons.
56 The notify daemon is supposed to scale a lot better than the previous
57 implementation. The functional advantage is cross-node kernel change
58 notify: Files created via NFS will be seen by SMB clients on other
59 nodes per FileChangeNotify, despite the fact that popular cluster file
60 systems do not offer cross-node inotify.
62 Two changes to the configuration were required for this new subsystem:
63 The parameters "change notify" and "kernel change notify" are not
64 per-share anymore but must be set globally. So it is no longer
65 possible to enable or disable notify per share, the notify daemon has
66 no notion of a share, it only works on absolute paths.
68 New SMB profiling code
69 ----------------------
71 The code for SMB (SMB1, SMB2 and SMB3) profiling uses a tdb instead
72 of sysv IPC shared memory. This avoids performance problems and NUMA
73 effects. The profile stats are a bit more detailed than before.
75 Improved DCERPC man in the middle detection for kerberos
76 --------------------------------------------------------
78 The gssapi based kerberos backends for gensec have support for
79 DCERPC header signing when using DCERPC_AUTH_LEVEL_PRIVACY.
81 SMB signing required in winbindd by default
82 -------------------------------------------
84 The effective value for "client signing" is required
85 by default for winbindd, if the primary domain uses active directory.
87 Experimental NTDB was removed
88 -----------------------------
90 The experimental NTDB library introduced in Samba 4.0 has been
91 removed again.
93 Improved support for trusted domains (as AD DC)
94 -----------------------------------------------
96 The support for trusted domains/forests has improved a lot.
98 samba-tool got "domain trust" subcommands to manage trusts:
100   create      - Create a domain or forest trust.
101   delete      - Delete a domain trust.
102   list        - List domain trusts.
103   namespaces  - Manage forest trust namespaces.
104   show        - Show trusted domain details.
105   validate    - Validate a domain trust.
107 External trusts between individual domains work in both ways
108 (inbound and outbound). The same applies to root domains of
109 a forest trust. The transitive routing into the other forest
110 is fully functional for kerberos, but not yet supported for NTLMSSP.
112 While a lot of things are working fine, there are currently a few limitations:
114   - Both sides of the trust need to fully trust each other!
115   - No SID filtering rules are applied at all!
116   - This means DCs of domain A can grant domain admin rights
117     in domain B.
118   - It's not possible to add users/groups of a trusted domain
119     into domain groups.
121 SMB 3.1.1 supported
122 -------------------
124 Both client and server have support for SMB 3.1.1 now.
126 This is the dialect introduced with Windows 10, it improves the secure
127 negotiation of SMB dialects and features.
129 There's also a new optinal encryption algorithm aes-gcm-128,
130 but for now this is only selected as fallback and aes-ccm-128
131 is preferred because of the better performance. This might change
132 in future versions when hardware encryption will be supported.
133 See https://bugzilla.samba.org/show_bug.cgi?id=11451.
135 New smbclient subcommands
136 -------------------------
138   - Query a directory for change notifications: notify <dir name>
139   - Server side copy: scopy <source filename> <destination filename>
141 New rpcclient subcommands
142 -------------------------
144   netshareenumall       - Enumerate all shares
145   netsharegetinfo       - Get Share Info
146   netsharesetinfo       - Set Share Info
147   netsharesetdfsflags   - Set DFS flags
148   netfileenum           - Enumerate open files
149   netnamevalidate       - Validate sharename
150   netfilegetsec         - Get File security
151   netsessdel            - Delete Session
152   netsessenum           - Enumerate Sessions
153   netdiskenum           - Enumerate Disks
154   netconnenum           - Enumerate Connections
155   netshareadd           - Add share
156   netsharedel           - Delete share
158 New modules
159 -----------
161   idmap_script          - see 'man 8 idmap_script'
162   vfs_unityed_media     - see 'man 8 vfs_unityed_media'
163   vfs_shell_snap        - see 'man 8 vfs_shell_snap'
165 New sparsely connected replia graph (Improved KCC)
166 --------------------------------------------------
168 The Knowledge Consistency Checker (KCC) maintains a replication graph
169 for DCs across an AD network. The existing Samba KCC uses a fully
170 connected graph, so that each DC replicates from all the others, which
171 does not scale well with large networks. In 4.3 there is an
172 experimental new KCC that creates a sparsely connected replication
173 graph and closely follows Microsoft's specification. It is turned off
174 by default. To use the new KCC, set "kccsrv:samba_kcc=true" in
175 smb.conf and let us know how it goes. You should consider doing this
176 if you are making a large new network. For small networks there is
177 little benefit and you can always switch over at a later date.
179 Configurable TLS protocol support, with better defaults
180 -------------------------------------------------------
182 The "tls priority" option can be used to change the supported TLS
183 protocols. The default is to disable SSLv3, which is no longer
184 considered secure.
186 Samba-tool now supports all 7 FSMO roles
187 -------------------------------------------------------
189 Previously "samba-tool fsmo" could only show, transfer or seize the
190 five well-known FSMO roles:
192         Schema Master
193         Domain Naming Master
194         RID Master
195         PDC Emulator
196         Infrastructure Master
198 It can now also show, transfer or seize the DNS infrastructure roles:
200         DomainDnsZones Infrastructure Master
201         ForestDnsZones Infrastructure Master
203 CTDB logging changes
204 --------------------
206 The destination for CTDB logging is now set via a single new
207 configuration variable CTDB_LOGGING.  This replaces CTDB_LOGFILE and
208 CTDB_SYSLOG, which have both been removed.  See ctdbd.conf(5) for
209 details of CTDB_LOGGING.
211 CTDB no longer runs a separate logging daemon.
213 CTDB NFS support changes
214 ------------------------
216 CTDB's NFS service management has been combined into a single 60.nfs
217 event script.  This updated 60.nfs script now uses a call-out to
218 interact with different NFS implementations.  See the CTDB_NFS_CALLOUT
219 option in the ctdbd.conf(5) manual page for details.  A default
220 call-out is provided to interact with the Linux kernel NFS
221 implementation.  The 60.ganesha event script has been removed - a
222 sample call-out is provided for NFS Ganesha, based on this script.
224 The method of configuring NFS RPC checks has been improved.  See
225 ctdb/config/nfs-checks.d/README for details.
227 Improved Cross-Compiling Support
228 --------------------------------
230 A new "hybrid" build configuration mode is added to improve
231 cross-compilation support.
233 A common challenge in cross-compilation is that of obtaining the results
234 of tests that have to run on the target, during the configuration
235 phase of the build. The Samba build system already supports the following
236 means to do so:
238   - Executing configure tests using the --cross-execute parameter
239   - Obtaining the results from an answers file using the --cross-answers
240     parameter
242 The first method has the drawback of inaccurate results if the tests are
243 run using an emulator, or a need to be connected to a running target
244 while building, if the tests are to be run on an actual target. The
245 second method presents a challenge of figuring out the test results.
247 The new hybrid mode runs the tests and records the result in an answer file.
248 To activate this mode, use both --cross-execute and --cross-answers in the
249 same configure invocation. This mode can be activated once against a
250 running target, and then the generated answers file can be used in
251 subsequent builds.
253 Also supplied is an example script that can be used as the
254 cross-execute program. This script copies the test to a running target
255 and runs the test on the target, obtaining the result. The obtained
256 results are more accurate than running the test with an emulator, because
257 they reflect the exact kernel and system libraries that exist on the
258 target.
260 Improved Sparse File Support
261 ----------------------------
262 Support for the FSCTL_SET_ZERO_DATA and FSCTL_QUERY_ALLOCATED_RANGES
263 SMB2 requests has been added to the smbd file server.
264 This allows for clients to deallocate (hole punch) regions within a
265 sparse file, and check which portions of a file are allocated.
268 ######################################################################
269 Changes
270 #######
272 smb.conf changes
273 ----------------
275   Parameter Name                Description             Default
276   --------------                -----------             -------
277   logging                       New                     (empty)
278   msdfs shuffle referrals       New                     no
279   smbd profiling level          New                     off
280   spotlight                     New                     no
281   tls priority                  New                     NORMAL:-VERS-SSL3.0
282   use ntdb                      Removed
283   change notify                 Changed to [global]
284   kernel change notify          Changed to [global]
285   client max protocol           Changed default         SMB3_11
286   server max protocol           Changed default         SMB3_11
288 Removed modules
289 ---------------
291 vfs_notify_fam - see section 'New FileChangeNotify subsystem'.
294 KNOWN ISSUES
295 ============
297 Currently none.
300 CHANGES SINCE 4.2.0rc3
301 ======================
303 o   Ralph Boehme <slow@samba.org>
304     * Bug 11444: Crash in notify_remove caused by change notify = no
306 o   Günther Deschner <gd@samba.org>
307     * Bug 11411: smbtorture does not build when configured --with-system-mitkrb5
309 o   Volker Lendecke <vl@samba.org>
310     * Bug 11455: fix recursion problem in rep_strtoll in lib/replace/replace.c
311     * Bug 11464: xid2sid gives inconsistent results
312     * Bug 11465: ctdb: Fix the build on FreeBSD 10.1
314 o   Roel van Meer <roel@1afa.com>
315     * Bug 11427: nmbd incorrectly matches netbios names as own name
317 o   Stefan Metzmacher <metze@samba.org>
318     * Bug 11451: Poor SMB3 encryption performance with AES-GCM
319     * Bug 11458: --bundled-libraries=!ldb,!pyldb,!pyldb-util doesn't
320       disable ldb build and install
322 o   Andreas Schneider <asn@samba.org>
323     * Bug 9862: Samba "map to guest = Bad uid" doesn't work
326 CHANGES SINCE 4.3.0rc2
327 ======================
329 o   Andrew Bartlett <abartlet@samba.org>
330     * Bug 11436: samba-tool uncaught exception error
331     * Bug 10493: revert LDAP extended rule 1.2.840.113556.1.4.1941
332                  LDAP_MATCHING_RULE_IN_CHAIN changes
334 o   Ralph Boehme <slow@samba.org>
335     * Bug 11278: Stream names with colon don't work with
336                  fruit:encoding = native
337     * Bug 11426: net share allowedusers crashes
339 o   Amitay Isaacs <amitay@gmail.com>
340     * Bug 11432: Fix crash in nested ctdb banning
341     * Bug 11434: Cannot build ctdbpmda
342     * Bug 11431: CTDB's eventscript error handling is broken
344 o   Stefan Metzmacher <metze@samba.org>
345     * Bug 11451: Poor SMB3 encryption performance with AES-GCM (part1)
346     * Bug 11316: tevent_fd needs to be destroyed before closing the fd
348 o   Arvid Requate <requate@univention.de>
349     * Bug 11291: NetApp joined to a Samba/ADDC cannot resolve SIDs
351 o   Martin Schwenke <martin@meltin.net>
352     * Bug 11432: Fix crash in nested ctdb banning
355 CHANGES SINCE 4.3.0rc1
356 ======================
358 o   Jeremy Allison <jra@samba.org>
359     * BUG 11359: strsep is not available on Solaris
361 o   Björn Baumbach <bb@sernet.de>
362     * BUG 11421: Build with GPFS support is broken
364 o   Justin Maggard <jmaggard@netgear.com>
365     * BUG 11320: "force group" with local group not working
367 o   Martin Schwenke <martin@meltin.net
368     * BUG 11424: Build broken with --disable-python
371 #######################################
372 Reporting bugs & Development Discussion
373 #######################################
375 Please discuss this release on the samba-technical mailing list or by
376 joining the #samba-technical IRC channel on irc.freenode.net.
378 If you do report problems then please try to send high quality
379 feedback. If you don't provide vital information to help us track down
380 the problem then you will probably be ignored.  All bug reports should
381 be filed under the "Samba 4.1 and newer" product in the project's Bugzilla
382 database (https://bugzilla.samba.org/).
385 ======================================================================
386 == Our Code, Our Bugs, Our Responsibility.
387 == The Samba Team
388 ======================================================================