WHATSNEW: Add entry for "Dynamic DNS record scavenging support"
[metze/samba-autobuild/.git] / WHATSNEW.txt
1 Release Announcements
2 =====================
3
4 This is the first preview release of Samba 4.9.  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.9 will be the next version of the Samba suite.
10
11
12 UPGRADING
13 =========
14
15
16 NEW FEATURES/CHANGES
17 ====================
18
19
20 net ads setspn
21 ---------------
22
23 There is a new 'net ads setspn' sub command for managing Windows SPN(s)
24 on the AD. This command aims to give the basic functionaility that is
25 provided on windows by 'setspn.exe' e.g. ability to add, delete and list
26 Windows SPN(s) stored in a Windows AD Computer object.
27
28 The format of the command is:
29
30 net ads setspn list [machine]
31 net ads setspn [add | delete ] SPN [machine]
32
33 'machine' is the name of the computer account on the AD that is to be managed.
34 If 'machine' is not specified the name of the 'client' running the command
35 is used instead.
36
37 The format of a Windows SPN is
38   'serviceclass/host:port/servicename' (servicename and port are optional)
39
40 serviceclass/host is generally sufficient to specify a host based service.
41
42 net ads keytab changes
43 ----------------------
44 net ads keytab add no longer attempts to convert the passed serviceclass
45 (e.g. nfs, html etc.) into a Windows SPN which is added to the Windows AD
46 computer object. By default just the keytab file is modified.
47
48 A new keytab subcommand 'add_update_ads' has been added to preserve the
49 legacy behaviour. However the new 'net ads setspn add' subcommand should
50 really be used instead.
51
52 net ads keytab create no longer tries to generate SPN(s) from existing
53 entries in a keytab file. If it is required to add Windows SPN(s) then
54 'net ads setspn add' should be used instead.
55
56 Local authorization plugin for MIT Kerberos
57 -------------------------------------------
58
59 This plugin controls the relationship between Kerberos principals and AD
60 accounts through winbind. The module receives the Kerberos principal and the
61 local account name as inputs and can then check if they match. This can resolve
62 issues with canonicalized names returned by Kerberos within AD. If the user
63 tries to log in as 'alice', but the samAccountName is set to ALICE (uppercase),
64 Kerberos would return ALICE as the username. Kerberos would not be able to map
65 'alice' to 'ALICE' in this case and auth would fail.  With this plugin account
66 names can be correctly mapped. This only applies to GSSAPI authentication,
67 not for the geting the initial ticket granting ticket.
68
69 Database audit support
70 ----------------------
71
72 Changes to the Samba AD's sam.ldb database are now logged to Samba's debug log
73 under the "dsdb_audit" debug class and "dsdb_json_audit" for JSON formatted log
74 entries.
75
76 Transaction commits and roll backs are now logged to Samba's debug logs under
77 the "dsdb_transaction_audit" debug class and "dsdb_transaction_json_audit" for
78 JSON formatted log entries.
79
80 Password change audit support
81 -----------------------------
82
83 Password changes in the AD DC are now logged to Samba's debug logs under the
84 "dsdb_password_audit" debug class and "dsdb_password_json_audit" for JSON
85 formatted log entries.
86
87 Group membership change audit support
88 -------------------------------------
89
90 Group membership changes on the AD DC are now logged to
91 Samba's debug log under the "dsdb_group_audit" debug class and
92 "dsdb_group_json_audit" for JSON formatted log entries.
93
94 Log Authentication duration
95 ---------------------------
96
97 For NTLM and Kerberos KDC authentication, the authentication duration is now
98 logged. Note that the duration is only included in the JSON formatted log
99 entries.
100
101 New Experimental LMDB LDB backend
102 ---------------------------------
103
104 A new experimental LDB backend using LMBD is now available. This allows
105 databases larger than 4Gb (Currently the limit is set to 6Gb, but this will be
106 increased in a future release). To enable lmdb, provision or join a domain using
107 the --backend-store=mdb option.
108
109 This requires that a version of lmdb greater than 0.9.16 is installed and that
110 samba has not been built with the --without-ldb-lmdb option.
111
112 Please note this is an experimental feature and is not recommended for
113 production deployments.
114
115 Password Settings Objects
116 -------------------------
117 Support has been added for Password Settings Objects (PSOs). This AD feature is
118 also known as Fine-Grained Password Policies (FGPP).
119
120 PSOs allow AD administrators to override the domain password policy settings
121 for specific users, or groups of users. For example, PSOs can force certain
122 users to have longer password lengths, or relax the complexity constraints for
123 other users, and so on. PSOs can be applied to groups or to individual users.
124 When multiple PSOs apply to the same user, essentially the PSO with the best
125 precedence takes effect.
126
127 PSOs can be configured and applied to users/groups using the 'samba-tool domain
128 passwordsettings pso' set of commands.
129
130 Domain backup and restore
131 -------------------------
132 A new samba-tool command has been added that allows administrators to create a
133 backup-file of their domain DB. In the event of a catastrophic failure of the
134 domain, this backup-file can be used to restore Samba services.
135
136 The new 'samba-tool domain backup online' command takes a snapshot of the
137 domain DB from a given DC. In the event of a catastrophic DB failure, all DCs
138 in the domain should be taken offline, and the backup-file can then be used to
139 recreate a fresh new DC, using the 'samba-tool domain backup restore' command.
140 Once the backed-up domain DB has been restored on the new DC, other DCs can
141 then subsequently be joined to the new DC, in order to repopulate the Samba
142 network.
143
144 Domain rename tool
145 ------------------
146 Basic support has been added for renaming a Samba domain. The rename feature is
147 designed for the following cases:
148 1). Running a temporary alternate domain, in the event of a catastrophic
149 failure of the regular domain. Using a completely different domain name and
150 realm means that the original domain and the renamed domain can both run at the
151 same time, without interfering with each other. This is an advantage over
152 creating a regular 'online' backup - it means the renamed/alternate domain can
153 provide core Samba network services, while trouble-shooting the fault on the
154 original domain can be done in parallel.
155 2). Creating a realistic lab domain or pre-production domain for testing.
156
157 Note that the renamed tool is currently not intended to support a long-term
158 rename of the production domain. Currently renaming the GPOs is not supported
159 and would need to be done manually.
160
161 The domain rename is done in two steps: first, the 'samba-tool domain backup
162 rename' command will clone the domain DB, renaming it in the process, and
163 producing a backup-file. Then, the 'samba-tool domain backup restore' command
164 takes the backup-file and restores the renamed DB to disk on a fresh DC.
165
166 New samba-tool options for diagnosing DRS replication issues
167 ------------------------------------------------------------
168
169 The 'samba-tool drs showrepl' command has two new options controlling
170 the output. With --summary, the command says very little when DRS
171 replication is working well. With --json, JSON is produced. These
172 options are intended for human and machine audiences, respectively.
173
174 The 'samba-tool visualize uptodateness' visualizes replication lag as
175 a heat-map matrix based on the DRS uptodateness vectors. This will
176 show you if (but not why) changes are failing to replicate to some DCs.
177
178 Automatic site coverage and GetDCName improvements
179 --------------------------------------------------
180
181 Samba's AD DC now automatically claims otherwise empty sites based on
182 which DC is the nearest in the replication topology.
183
184 This, combined with efforts to correctly identify the client side in
185 the GetDCName Netlogon call will improve service to sites without a
186 local DC.
187
188 Improved samba-tool computer command
189 ------------------------------------
190
191 The 'samba-tool computer' command allow manipulation of computer
192 accounts including creating a new computer and resetting the password.
193 This allows an 'offline join' of a member server or workstation to the
194 Samba AD domain.
195
196 Samba performance tool now operates against Microsoft Windows AD
197 ----------------------------------------------------------------
198
199 The Samba AD performance testing tool traffic_reply can now operate
200 against a Windows based AD domain.  Previously it only operated
201 correctly against Samba.
202
203 DNS entries are now cleaned up during DC demote
204 -----------------------------------------------
205
206 DNS records are now cleaned up as part of the 'samba-tool domain
207 demote' including both the default and --remove-other-dead-server
208 modes.
209
210 Additionally DNS records can be automatically cleaned up for a given
211 name with the 'samba-tool dns cleanup' command, which aids in cleaning
212 up partially removed DCs.
213
214 Samba now tested with CI GitLab
215 -------------------------------
216
217 Samba developers now have pre-commit testing available in GitLab,
218 giving reviewers confidence that the submitted patches pass a full CI
219 before being submitted to the Samba Team's own autobuild system.
220
221 Dynamic DNS record scavenging support
222 -------------------------------------
223
224 It is now possible to enable scavenging of DNS Zones to remove DNS
225 records that were dynamically created and have not been touched in
226 some time.
227
228 This support should however only be enabled on new zones or new
229 installations.  Sadly old Samba versions suffer from BUG 12451 and
230 mark dynamic DNS records as static and static records as dynamic.
231 While a dbcheck rule may be able to find these in the future,
232 currently a reliable test has not been devised.
233
234 Finally, there is not currently a command-line tool to enable this
235 feature, currently it should be enabled from the DNS Manager tool from
236 Windows. Also the feature needs to have been enabled by setting the smb.conf
237 parameter "dns zone scavenging = yes".
238
239 REMOVED FEATURES
240 ================
241
242
243
244 smb.conf changes
245 ================
246
247 As the most popular Samba install platforms (Linux and FreeBSD) both
248 support extended attributes by default, the parameters "map readonly",
249 "store dos attributes" and "ea support" have had their defaults changed
250 to allow better Windows fileserver compatibility in a default install.
251
252   Parameter Name                     Description             Default
253   --------------                     -----------             -------
254   map readonly                       Default changed              no
255   store dos attributes               Default changed             yes
256   ea support                         Default changed             yes
257
258 VFS interface changes
259 =====================
260
261 The VFS ABI interface version has changed to 39. Function changes
262 are:
263
264 SMB_VFS_FSYNC: Removed: Only async versions are used.
265 SMB_VFS_READ: Removed: Only PREAD or async versions are used.
266 SMB_VFS_WRITE: Removed: Only PWRITE or async versions are used.
267 SMB_VFS_CHMOD_ACL: Removed: Only CHMOD is used.
268 SMB_VFS_FCHMOD_ACL: Removed: Only FCHMOD is used.
269
270 Any external VFS modules will need to be updated to match these
271 changes in order to work with 4.9.x.
272
273 KNOWN ISSUES
274 ============
275
276 https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.9#Release_blocking_bugs
277
278
279 #######################################
280 Reporting bugs & Development Discussion
281 #######################################
282
283 Please discuss this release on the samba-technical mailing list or by
284 joining the #samba-technical IRC channel on irc.freenode.net.
285
286 If you do report problems then please try to send high quality
287 feedback. If you don't provide vital information to help us track down
288 the problem then you will probably be ignored.  All bug reports should
289 be filed under the Samba 4.1 and newer product in the project's Bugzilla
290 database (https://bugzilla.samba.org/).
291
292
293 ======================================================================
294 == Our Code, Our Bugs, Our Responsibility.
295 == The Samba Team
296 ======================================================================
297