WHATSNEW: add shadow:snapprefix and shadow:delimiter
[vlendec/samba-autobuild/.git] / WHATSNEW.txt
1 Release Announcements
2 =====================
3
4 This is the first preview release of Samba 4.5.  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.5 will be the next version of the Samba suite.
10
11
12 UPGRADING
13 =========
14
15 NTLMv1 authentication disabled by default
16 -----------------------------------------
17
18 In order to improve security we have changed
19 the default value for the "ntlm auth" option from
20 "yes" to "no". This may have impact on very old
21 client which doesn't support NTLMv2 yet.
22
23 The primary user of NTLMv1 is MSCHAPv2 for VPNs and 802.1x.
24
25 By default Samba will only allow NTLMv2 via NTLMSSP now,
26 as we have the following default "lanman auth = no",
27 "ntlm auth = no" and "raw NTLMv2 auth = no".
28
29
30 NEW FEATURES/CHANGES
31 ====================
32
33 Support for LDAP_SERVER_NOTIFICATION_OID
34 ----------------------------------------
35
36 The ldap server has support for the LDAP_SERVER_NOTIFICATION_OID
37 control. This can be used to monitor the active directory database
38 for changes.
39
40 KCC improvements for sparse network replication
41 -----------------------------------------------
42
43 The Samba KCC will now be the default knowledge consistency checker in
44 Samba AD. Instead of using full mesh replication between every DC, the
45 KCC will set up connections to optimize replication latency and cost
46 (using site links to calculate the routes). This change should allow
47 larger domains to function significantly better in terms of replication
48 traffic and the time spent performing DRS replication.
49
50 VLV - Virtual List View
51 -----------------------
52
53 The VLV Control allows applications to page the LDAP directory in the
54 way you might expect a live phone book application to operate, without
55 first downloading the entire directory.
56
57 DRS Replication for the AD DC
58 -----------------------------
59
60 DRS Replication in Samba 4.5 is now much more efficient in handling
61 linked attributes, particularly in large domains with over 1000 group
62 memberships or other links.
63
64 Replication is also much more reliable in the handling of tree
65 renames, such as the rename of an organizational unit containing many
66 users.  Extensive tests have been added to ensure this code remains
67 reliable, particularly in the case of conflicts between objects added
68 with the same name on different servers.
69
70 Schema updates are also handled much more reliably.
71
72 samba-tool drs replicate with new options
73 -----------------------------------------
74
75 samba-tool drs replicate got two new options:
76
77 The option '--local-online' will do the DsReplicaSync() via IRPC
78 to the local dreplsrv service.
79
80 The option '--async-op' will add DRSUAPI_DRS_ASYNC_OP to the
81 DsReplicaSync(), which won't wait for the replication result.
82
83 replPropertyMetaData Changes
84 ----------------------------
85
86 During the development of the DRS replication, tests showed that Samba
87 stores the replPropertyMetaData object incorrectly.  To address this,
88 be aware that dbcheck will now detect and offer to fix all objects in
89 the domain for this error.
90
91 Linked attributes on deleted objects
92 ------------------------------------
93
94 In Active Directory, an object that has been tombstoned or recycled
95 has no linked attributes.  However, Samba incorrectly maintained such
96 links, slowing replication and run-time performance.  dbcheck now
97 offers to remove such links, and they are no longer kept after the
98 object is tombstoned or recycled.
99
100 Improved AD DC performance
101 --------------------------
102
103 Many other improvements have been made to our LDAP database layer in
104 the AD DC, to improve performance, both during samba-tool domain
105 provision and at runtime.
106
107 Other dbcheck improvements
108 --------------------------
109
110  - samba-tool dbcheck can now find and fix a missing or corrupted
111    'deleted objects' container.
112  - BUG 11433: samba-dbcheck no longer offers to resort auxiliary class values
113    in objectClass as these were then re-sorted at the next dbcheck indefinitely.
114
115 Tombstone Reanimation
116 ---------------------
117
118 Samba now supports tombstone reanimation, a feature in the AD DC
119 allowing tombstones, that is objects which have been deleted, to be
120 restored with the original SID and GUID still in place.
121
122 Multiple DNS Forwarders on the AD DC
123 ------------------------------------
124
125 Multiple DNS forwarders are now supported on the AD DC, allowing
126 samba to fall back between two different DNS servers for forwarded queries.
127
128 Password quality plugin support in the AD DC
129 --------------------------------------------
130
131 The check password script now operates correctly in the AD DC (this
132 was silently ignored in past releases)
133
134 pwdLastSet is now correctly honoured
135 ------------------------------------
136
137 BUG 9654: the pwdLastSet attribute is now correctly handled (this previously
138 permitted passwords that next expire).
139
140 net ads dns unregister
141 ----------------------
142
143 It is now possible to remove the DNS entries created with 'net ads register'
144 with the matching 'net ads unregister' command.
145
146 Samba-tool improvements
147 ------------------------
148
149 Running samba-tool on the command line should now be a lot snappier. The tool
150 now only loads the code specific to the subcommand that you wish to run.
151
152 SMB 2.1 Leases enabled by default
153 ---------------------------------
154
155 Leasing is an SMB 2.1 (and higher) feature which allows clients to
156 aggressively cache files locally above and beyond the caching allowed
157 by SMB 1 oplocks. This feature was disabled in previous releases, but
158 the SMB2 leasing code is now considered mature and stable enough to be
159 enabled by default.
160
161 Open File Description (OFD) Locks
162 ---------------------------------
163
164 On systems that support them (currently only Linux), the fileserver now
165 uses Open File Description (OFD) locks instead of POSIX locks to implement
166 client byte range locks. As these locks are associated with a specific
167 file descriptor on a file this allows more efficient use when multiple
168 descriptors having file locks are opened onto the same file. An internal
169 tunable "smbd:force process locks = true" may be used to turn off OFD
170 locks if there appear to be problems with them.
171
172 Password sync as active directory domain controller
173 ---------------------------------------------------
174
175 The new commands 'samba-tool user getpassword'
176 and 'samba-tool user syncpasswords' provide
177 access and syncing of various password fields.
178
179 If compiled with GPGME support (--with-gpgme) it's
180 possible to store cleartext passwords in a PGP/OpenGPG
181 encrypted form by configuring the new "password hash gpg key ids"
182 option. This requires gpgme devel and python packages to be installed
183 (e.g. libgpgme11-dev and python-gpgme on debian/ubuntu).
184
185 Python crypto requirements
186 --------------------------
187
188 Some samba-tool subcommands require python-crypto and/or
189 python-m2crypto packages to be installed.
190
191 SmartCard/PKINIT improvements
192 -----------------------------
193
194 "samba-tool user create" accepts --smartcard-required
195 and "samba-tool user setpassword" accepts --smartcard-required
196 and --clear-smartcard-required.
197
198 Specifying --smartcard-required results in the UF_SMARTCARD_REQUIRED
199 flags being set in the userAccountControl attribute.
200 At the same time the account password is reset to a random
201 NTHASH value.
202
203 Interactive password logons are rejected, if the UF_SMARTCARD_REQUIRED
204 bit is set in the userAccountControl attribute of a user.
205
206 When doing a PKINIT based kerberos logon the KDC adds the
207 required PAC_CREDENTIAL_INFO element to the authorization data.
208 That means the NTHASH is shared between the PKINIT based client and
209 the domain controller, which allows the client to do NTLM based
210 authentication on behalf of the user. It also allows on offline
211 logon using a smartcard to work on Windows clients.
212
213 CTDB changes
214 ------------
215
216 * New improved ctdb tool
217
218   ctdb tool has been completely rewritten using new client API.
219   Usage messages are much improved.
220
221 * Sample CTDB configuration file is installed as ctdbd.conf.
222
223 * The use of real-time scheduling when taking locks has been narrowed
224   to limit potential performance impacts on nodes
225
226 * CTDB_RECOVERY_LOCK now supports specification of an external helper
227   to take and hold the recovery lock
228
229   See the RECOVERY LOCK section in ctdb(7) for details.  Documentation
230   for writing helpers is provided in doc/cluster_mutex_helper.txt.
231
232 * "ctdb natgwlist" has been replaced by a top level "ctdb natgw"
233   command that has "master", "list" and "status" subcommands
234
235 * The onnode command no longer supports the "recmaster", "lvs" and
236   "natgw" node specifications
237
238 * Faster resetting of TCP connections to public IP addresses during
239   failover
240
241 * Tunables MaxRedirectCount, ReclockPingPeriod,
242   DeferredRebalanceOnNodeAdd are now obsolete/ignored
243
244 * "ctdb listvars" now lists all variables, including the first one
245
246 * "ctdb xpnn", "ctdb rebalanceip" and "ctdb rebalancenode" have been
247   removed
248
249   These are not needed because "ctdb reloadips" should do the correct
250   rebalancing.
251
252 * Output for the following commands has been simplified:
253
254     ctdb getdbseqnum
255     ctdb getdebug
256     ctdb getmonmode
257     ctdb getpid
258     ctdb getreclock
259     ctdb getpid
260     ctdb pnn
261
262   These now simply print the requested output with no preamble.  This
263   means that scripts no longer need to strip part of the output.
264
265   "ctdb getreclock" now prints nothing when the recovery lock is not
266   set.
267
268 * Output for the following commands has been improved:
269
270   ctdb setdebug
271   ctdb uptime
272
273 * "ctdb process-exists" has been updated to only take a PID argument
274
275   The PNN can be specified with -n <PNN>.  Output also cleaned up.
276
277 * LVS support has been reworked - related commands and configuration
278   variables have changed
279
280   "ctdb lvsmaster" and "ctdb lvs" have been replaced by a top level
281   "ctdb lvs" command that has "master", "list" and "status"
282   subcommands.
283
284   See the LVS sections in ctdb(7) and ctdbd.conf(5) for details,
285   including configuration changes.
286
287 * Improved sample NFS Ganesha call-out
288
289 New shadow_copy2 options
290 ------------------------
291
292 shadow:snapprefix
293
294   With growing number of snapshots file-systems need some mechanism to
295   differentiate one set of snapshots from other, e.g. monthly, weekly, manual,
296   special events, etc. Therefore these file-systems provide different ways to tag
297   snapshots, e.g. provide a configurable way to name snapshots, which is not just
298   based on time.  With only shadow:format it is very difficult to filter these
299   snapshots. With this optional parameter, one can specify a variable prefix
300   component for names of the snapshot directories in the file-system. If this
301   parameter is set, together with the shadow:format and shadow:delimiter
302   parameters it determines the possible names of snapshot directories in the
303   file-system. The option only supports Basic Regular Expression (BRE).
304
305 shadow:delimiter
306
307   This optional parameter is used as a delimiter between shadow:snapprefix and
308   shadow:format This parameter is used only when shadow:snapprefix is set.
309
310   Default: shadow:delimiter = "_GMT"
311
312
313 REMOVED FEATURES
314 ================
315
316 only user and username parameters
317 ---------------------------------
318 These two parameters have long been deprecated and superseded by
319 "valid users" and "invalid users".
320
321
322 smb.conf changes
323 ================
324
325   Parameter Name                Description             Default
326   --------------                -----------             -------
327   kccsrv:samba_kcc              Changed default         yes
328   ntlm auth                     Changed default         no
329   only user                     Removed
330   password hash gpg key ids     New
331   shadow:snapprefix             New
332   shadow:delimiter              New                     _GMT
333   smb2 leases                   Changed default         yes
334   username                      Removed
335
336
337 KNOWN ISSUES
338 ============
339
340 Currently none.
341
342 #######################################
343 Reporting bugs & Development Discussion
344 #######################################
345
346 Please discuss this release on the samba-technical mailing list or by
347 joining the #samba-technical IRC channel on irc.freenode.net.
348
349 If you do report problems then please try to send high quality
350 feedback. If you don't provide vital information to help us track down
351 the problem then you will probably be ignored.  All bug reports should
352 be filed under the Samba 4.1 and newer product in the project's Bugzilla
353 database (https://bugzilla.samba.org/).
354
355
356 ======================================================================
357 == Our Code, Our Bugs, Our Responsibility.
358 == The Samba Team
359 ======================================================================
360