winbind: Add smbcontrol disconnect-dc
[Samba.git] / WHATSNEW.txt
blobcea642b2f9ea2faab0ed5b0fec8a3c0085d95f84
1                    =============================
2                    Release Notes for Samba 4.8.0
3                            March 13, 2018
4                    =============================
7 This is the first stable release of the Samba 4.8 release series.
8 Please read the release notes carefully before upgrading.
11 UPGRADING
12 =========
14 New GUID Index mode in sam.ldb for the AD DC
15 --------------------------------------------
17 Users who upgrade a Samba AD DC in-place will experience a short delay
18 in the first startup of Samba while the sam.ldb is re-indexed.
20 Unlike in previous releases a transparent downgrade is not possible.
21 If you wish to downgrade such a DB to a Samba 4.7 or earlier version,
22 please run the source4/scripting/bin/sambaundoguididx script first.
24 Domain member setups require winbindd
25 -------------------------------------
27 Setups with "security = domain" or "security = ads" require a
28 running 'winbindd' now. The fallback that smbd directly contacts
29 domain controllers is gone.
31 smbclient reparse point symlink parameters reversed
32 ---------------------------------------------------
34 See the more detailed description below.
36 Changed trusted domains listing with wbinfo -m --verbose
37 --------------------------------------------------------
39 See the more detailed description below.
41 NEW FEATURES/CHANGES
42 ====================
44 New GUID Index mode in sam.ldb for the AD DC
45 --------------------------------------------
47 The new layout used for sam.ldb is GUID, rather than DN oriented.
48 This provides Samba's Active Directory Domain Controller with a faster
49 database, particularly at larger scale.
51 The underlying DB is still TDB, simply the choice of key has changed.
53 The new mode is not optional, so no configuration is required.  Older
54 Samba versions cannot read the new database (see the upgrade
55 note above).
57 KDC GPO application
58 -------------------
60 Adds Group Policy support for the Samba kdc. Applies password policies
61 (minimum/maximum password age, minimum password length, and password
62 complexity) and kerberos policies (user/service ticket lifetime and
63 renew lifetime).
65 Adds the samba_gpoupdate script for applying and unapplying
66 policy. Can be applied automatically by setting
68  'apply group policies = yes'.
70 Time Machine Support with vfs_fruit
71 -----------------------------------
73 Samba can be configured as a Time Machine target for Apple Mac devices
74 through the vfs_fruit module. When enabling a share for Time Machine
75 support the relevant Avahi records to support discovery will be published
76 for installations that have been built against the Avahi client library.
78 Shares can be designated as a Time Machine share with the following setting:
80   'fruit:time machine = yes'
82 Support for lower casing the MDNS Name
83 --------------------------------------
85 Allows the server name that is advertised through MDNS to be set to the
86 hostname rather than the Samba NETBIOS name. This allows an administrator
87 to make Samba registered MDNS records match the case of the hostname
88 rather than being in all capitals.
90 This can be set with the following settings:
92   'mdns name = mdns'
94 Encrypted secrets
95 -----------------
97 Attributes deemed to be sensitive are now encrypted on disk. The sensitive
98 values are currently:
99         pekList
100         msDS-ExecuteScriptPassword
101         currentValue
102         dBCSPwd
103         initialAuthIncoming
104         initialAuthOutgoing
105         lmPwdHistory
106         ntPwdHistory
107         priorValue
108         supplementalCredentials
109         trustAuthIncoming
110         trustAuthOutgoing
111         unicodePwd
112         clearTextPassword
114 This encryption is enabled by default on a new provision or join, it
115 can be disabled at provision or join time with the new option
116 '--plaintext-secrets'.
118 However, an in-place upgrade will not encrypt the database.
120 Once encrypted, it is not possible to do an in-place downgrade (eg to
121 4.7) of the database. To obtain an unencrypted copy of the database a
122 new DC join should be performed, specifying the '--plaintext-secrets'
123 option.
125 The key file "encrypted_secrets.key" is created in the same directory
126 as the database and should NEVER be disclosed.  It is included by the
127 samba_backup script.
129 Active Directory replication visualisation
130 ------------------------------------------
132 To work out what is happening in a replication graph, it is sometimes
133 helpful to use visualisations. We introduce a samba-tool subcommand to
134 write Graphviz dot output and generate text-based heatmaps of the
135 distance in hops between DCs.
137 There are two subcommands, two graphical modes, and (roughly) two modes of
138 operation with respect to the location of authority.
140 `samba-tool visualize ntdsconn` looks at NTDS Connections.
141 `samba-tool visualize reps` looks at repsTo and repsFrom objects.
143 In '--distance' mode (default), the distances between DCs are shown in
144 a matrix in the terminal. With '--color=yes', this is depicted as a
145 heatmap. With '--utf8' it is a lttle prettier.
147 In '--dot' mode, Graphviz dot output is generated. When viewed using
148 dot or xdot, this shows the network as a graph with DCs as vertices
149 and connections edges. Certain types of degenerate edges are shown in
150 different colours or line-styles.
152 smbclient reparse point symlink parameters reversed
153 ---------------------------------------------------
155 A bug in smbclient caused the 'symlink' command to reverse the
156 meaning of the new name and link target parameters when creating a
157 reparse point symlink against a Windows server. As this is a
158 little used feature the ordering of these parameters has been
159 reversed to match the parameter ordering of the UNIX extensions
160 'symlink' command. The usage message for this command has also
161 been improved to remove confusion.
163 Winbind changes
164 ---------------
166 The dependency to global list of trusted domains within
167 the winbindd processes has been reduced a lot.
169 The construction of that global list is not reliable and often
170 incomplete in complex trust setups. In most situations the list is not needed
171 any more for winbindd to operate correctly. E.g. for plain file serving via SMB
172 using a simple idmap setup with autorid, tdb or ad. However some more complex
173 setups require the list, e.g. if you specify idmap backends for specific
174 domains. Some pam_winbind setups may also require the global list.
176 If you have a setup that doesn't require the global list, you should set
177 "winbind scan trusted domains = no".
179 Improved support for trusted domains (as AD DC)
180 -----------------------------------------------
182 The support for trusted domains/forests has improved a lot.
184 External domain trusts, as well a transitive forest trusts,
185 are supported in both directions (inbound and outbound)
186 for Kerberos and NTLM authentication now.
188 The LSA LookupNames and LookupSids implementations
189 support resolving names and sids from trusts domains/forest
190 now. This is important in order to allow Samba based
191 domain members to make use of the trust.
193 However there are currently still a few limitations:
195 - It's not possible to add users/groups of a trusted domain
196   into domain groups. So group memberships are not expanded
197   on trust boundaries.
198   See https://bugzilla.samba.org/show_bug.cgi?id=13300
199 - Both sides of the trust need to fully trust each other!
200 - No SID filtering rules are applied at all!
201 - This means DCs of domain A can grant domain admin rights
202   in domain B.
203 - Selective (CROSS_ORIGANIZATION) authentication is
204   not supported. It's possible to create such a trust,
205   but the KDC and winbindd ignore them.
207 Changed trusted domains listing with wbinfo -m --verbose
208 --------------------------------------------------------
210 The trust properties printed by wbinfo -m --verbose have been changed to
211 correctly reflect the view of the system where wbinfo is executed.
213 The trust type field in particular can show additional values that correctly
214 reflect the type of the trust: "Local" for the local SAM and BUILTIN,
215 "Workstation" for a workstation trust to the primary domain, "RWDC" for the SAM
216 on a AD DC, "RODC" for the SAM on a read-only DC, "PDC" for the SAM on a
217 NT4-style DC, "Forest" for a AD forest trust and "External" for quarantined,
218 external or NT4-style trusts.
220 Indirect trusts are shown as "Routed" including the routing domain.
222 Example, on a AD DC (SDOM1):
224 Domain Name DNS Domain          Trust Type  Transitive  In   Out
225 BUILTIN                         Local
226 SDOM1       sdom1.site          RWDC
227 WDOM3       wdom3.site          Forest      Yes         No   Yes
228 WDOM2       wdom2.site          Forest      Yes         Yes  Yes
229 SUBDOM31    subdom31.wdom3.site Routed (via WDOM3)
230 SUBDOM21    subdom21.wdom2.site Routed (via WDOM2)
232 Same setup, on a member of WDOM2:
234 Domain Name DNS Domain          Trust Type  Transitive  In   Out
235 BUILTIN                         Local
236 TITAN                           Local
237 WDOM2       wdom2.site          Workstation Yes         No   Yes
238 WDOM1       wdom1.site          Routed (via WDOM2)
239 WDOM3       wdom3.site          Routed (via WDOM2)
240 SUBDOM21    subdom21.wdom2.site Routed (via WDOM2)
241 SDOM1       sdom1.site          Routed (via WDOM2)
242 SUBDOM11    subdom11.wdom1.site Routed (via WDOM2)
244 The list of trusts may be incomplete and additional domains may appear as
245 "Routed" if a user of an unknown domain is successfully authenticated.
247 VirusFilter VFS module
248 ----------------------
250 This new module integrates with Sophos, F-Secure and ClamAV anti-virus
251 software to provide scanning and filtering of files on a Samba share.
254 REMOVED FEATURES
255 ================
257 'net serverid' commands removed
258 -------------------------------
260 The two commands 'net serverid list' and 'net serverid wipe' have been
261 removed, because the file serverid.tdb is not used anymore.
263 'net serverid list' can be replaced by listing all files in the
264 subdirectory "msg.lock" of Samba's "lock directory". The unique id
265 listed by 'net serverid list' is stored in every process' lockfile in
266 "msg.lock".
268 'net serverid wipe' is not necessary anymore. It was meant primarily
269 for clustered environments, where the serverid.tdb file was not
270 properly cleaned up after single node crashes. Nowadays smbd and
271 winbind take care of cleaning up the msg.lock and msg.sock directories
272 automatically.
274 NT4-style replication based net commands removed
275 ------------------------------------------------
277 The following commands and sub-commands have been removed from the
278 "net" utility:
280 net rpc samdump
281 net rpc vampire ldif
283 Also, replicating from a real NT4 domain with "net rpc vampire" and
284 "net rpc vampire keytab" has been removed.
286 The NT4-based commands were accidentally broken in 2013, and nobody
287 noticed the breakage. So instead of fixing them including tests (which
288 would have meant writing a server for the protocols, which we don't
289 have) we decided to remove them.
291 For the same reason, the "samsync", "samdeltas" and "database_redo"
292 commands have been removed from rpcclient.
294 "net rpc vampire keytab" from Active Directory domains continues to be
295 supported.
297 vfs_aio_linux module removed
298 ----------------------------
300 The current Linux kernel aio does not match what Samba would
301 do. Shipping code that uses it leads people to false
302 assumptions. Samba implements async I/O based on threads by default,
303 there is no special module required to see benefits of read and write
304 request being sent do the disk in parallel.
307 smb.conf changes
308 ================
310   Parameter Name                     Description             Default
311   --------------                     -----------             -------
312   apply group policies               New                     no
313   auth methods                       Removed
314   binddns dir                        New
315   client schannel                    Default changed/        yes
316                                      Deprecated
317   gpo update command                 New
318   ldap ssl ads                       Deprecated
319   map untrusted to domain            Removed
320   oplock contention limit            Removed
321   prefork children                   New                     1
322   mdns name                          New                     netbios
323   fruit:time machine                 New                     false
324   profile acls                       Removed
325   use spnego                         Removed
326   server schannel                    Default changed/        yes
327                                      Deprecated
328   unicode                            Deprecated
329   winbind scan trusted domains       New                     yes
330   winbind trusted domains only       Removed
333 CHANGES SINCE 4.8.0rc4
334 ======================
336 o  Jeremy Allison <jra@samba.org>
337    * BUG 11343: CVE-2018-1050: Codenomicon crashes in spoolss server code.
339 o  Ralph Boehme <slow@samba.org>
340    * BUG 13272: CVE-2018-1057: Unprivileged user can change any user (and admin)
341      password.
342    * BUG 13313: nsswitch: Fix wbinfo -m --verbose trust type "Local".
344 o  Stefan Metzmacher <metze@samba.org>
345    * BUG 13272: CVE-2018-1057: Unprivileged user can change any user (and admin)
346      password.
348 o  Dan Robertson <drobertson@tripwire.com>
349    * BUG 13310: libsmb: Use smb2 tcon if conn_protocol >= SMB2_02.
351 o  Andreas Schneider <asn@samba.org>
352    * BUG 13315: s3:smbd: Do not crash if we fail to init the session table.
355 CHANGES SINCE 4.8.0rc3
356 ======================
358 o  Ralph Boehme <slow@samba.org>
359    * BUG 13287: Fix numerous trust related bugs in winbindd and s4 LSA RPC
360      server.
361    * BUG 13296: vfs_fruit: Use off_t, not size_t for TM size calculations.
363 o  Alexander Bokovoy <ab@samba.org>
364    * BUG 13304: mit-kdb: Support MIT Kerberos 1.16 KDB API changes.
366 o  Günther Deschner <gd@samba.org>
367    * BUG 13277: build: Fix libceph-common detection.
369 o  Poornima G <pgurusid@redhat.com>
370    * BUG 13297: vfs_glusterfs: Fix the wrong pointer being sent in
371      glfs_fsync_async.
373 o  Volker Lendecke <vl@samba.org>
374    * BUG 13305: vfs_fileid: Fix the 32-bit build.
376 o  Stefan Metzmacher <metze@samba.org>
377    * BUG 13206: Unable to authenticate with an empty string domain ''.
378    * BUG 13276: configure aborts without libnettle/gnutls.
379    * BUG 13278: winbindd (on an AD DC) should only use netlogon/lsa against
380      trusted domains.
381    * BUG 13287: Fix numerous trust related bugs in winbindd and s4 LSA RPC
382      server.
383    * BUG 13290: A disconnecting winbind client can cause a problem in 
384      the winbind parent child communication.
385    * BUG 13291: tevent: version 0.9.36.
386    * BUG 13292: winbind requests could get stuck in the queue of a busy child,
387      while later requests could get served fine by other children.
388    * BUG 13293: Minimize the lifetime of winbindd_cli_state->{pw,gr}ent_state.
389    * BUG 13294: Avoid using fstrcpy(domain->dcname,...) on a char *.
390    * BUG 13295: winbind parent should find the dc of a foreign domain via the
391      primary domain.
392    * BUG 13299: Disable support for CROSS_ORGANIZATION domains.
393    * BUG 13306: ldb: version 1.3.2.
395 o  Sachin Prabhu <sprabhu@redhat.com>
396    * BUG 13303: vfs_glusterfs: Add fallocate support for vfs_glusterfs.
398 o  Garming Sam <garming@catalyst.net.nz>
399    * BUG 13031: subnet: Avoid a segfault when renaming subnet objects.
400    * BUG 13269: RODC may skip objects during replication due to naming
401      conflicts.
404 CHANGES SINCE 4.8.0rc2
405 ======================
407 o  Trever L. Adams <trever.adams@gmail.com>
408    * BUG 13246: Backport Samba VirusFilter.
410 o  Ralph Boehme <slow@samba.org>
411    * BUG 13228: dbcheck: Add support for restoring missing forward links.
413 o  Günther Deschner <gd@samba.org>
414    * BUG 13221: python: fix the build with python3.
416 o  Stefan Metzmacher <metze@samba.org>
417    * BUG 13228: dbcheck: Add support for restoring missing forward links.
420 CHANGES SINCE 4.8.0rc1
421 ======================
423 o  Günther Deschner <gd@samba.org>
424    * BUG 13227: packaging: Fix default systemd-dir path.
425    * BUG 13238: build: Deal with recent glibc sunrpc header removal.
427 o  Stefan Metzmacher <metze@samba.org>
428    * BUG 13228: repl_meta_data: fix linked attribute corruption on databases
429      with unsorted links on expunge.
431 o  Christof Schmitt <cs@samba.org>
432    * BUG 13217: s3/smbd: Remove file system sharemode before calling unlink.
434 o  Andreas Schneider <asn@samba.org>
435    * BUG 13209: Small improvements in winbindd for the resource cleanup in error
436      cases.
437    * BUG 13238: Make Samba work with tirpc and libnsl2.
440 KNOWN ISSUES
441 ============
443 https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.8#Release_blocking_bugs
446 #######################################
447 Reporting bugs & Development Discussion
448 #######################################
450 Please discuss this release on the samba-technical mailing list or by
451 joining the #samba-technical IRC channel on irc.freenode.net.
453 If you do report problems then please try to send high quality
454 feedback. If you don't provide vital information to help us track down
455 the problem then you will probably be ignored.  All bug reports should
456 be filed under the Samba 4.1 and newer product in the project's Bugzilla
457 database (https://bugzilla.samba.org/).
460 ======================================================================
461 == Our Code, Our Bugs, Our Responsibility.
462 == The Samba Team
463 ======================================================================