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