ctdb-protocol: Add missing push support for new controls
[samba.git] / WHATSNEW.txt
1 Release Announcements
2 =====================
3
4 This is the second release candidate of Samba 4.20.  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.20 will be the next version of the Samba suite.
10
11
12 UPGRADING
13 =========
14
15
16 NEW FEATURES/CHANGES
17 ====================
18
19 New Minimum MIT Krb5 version for Samba AD Domain Controller
20 -----------------------------------------------------------
21
22 Samba now requires MIT 1.21 when built against a system MIT Krb5 and
23 acting as an Active Directory DC.  This addresses the issues that were
24 fixed in CVE-2022-37967 (KrbtgtFullPacSignature) and ensures that
25 Samba builds against the MIT version that allows us to avoid that
26 attack.
27
28 Removed dependency on Perl JSON module
29 --------------------------------------
30
31 Distributions are advised that the Perl JSON package is no longer
32 required by Samba builds that use the imported Heimdal.  The build
33 instead uses Perl's JSON::PP built into recent perl5 versions.
34
35 Current lists of packages required by Samba for major distributions
36 are found in the bootstrap/generated-dists/ directory of a Samba
37 source tree.  While there will be some differences - due to features
38 chosen by packagers - comparing these lists with the build dependencies
39 in a package may locate other dependencies we no longer require.
40
41 samba-tool user getpassword / syncpasswords ;rounds= change
42 -----------------------------------------------------------
43
44 The password access tool "samba-tool user getpassword" and the
45 password sync tool "samba-tool user syncpasswords" allow attributes to
46 be chosen for output, and accept parameters like
47 pwdLastSet;format=GeneralizedTime
48
49 These attributes then appear, in the same format, as the attributes in
50 the LDIF output.  This was not the case for the ;rounds= parameter of
51 virtualCryptSHA256 and virtualCryptSHA512, for example as
52 --attributes="virtualCryptSHA256;rounds=50000"
53
54 This release makes the behaviour consistent between these two
55 features.  Installations using GPG-encrypted passwords (or plaintext
56 storage) and the rounds= option, will find the output has changed
57
58 from:
59 virtualCryptSHA256: {CRYPT}$5$rounds=2561$hXem.M9onhM9Vuix$dFdSBwF
60
61 to:
62 virtualCryptSHA256;rounds=2561: {CRYPT}$5$rounds=2561$hXem.M9onhM9Vuix$dFdSBwF
63
64 Group Managed service account client-side features
65 --------------------------------------------------
66
67 samba-tool has been extended to provide client-side support for Group
68 Managed Service accounts.  These accounts have passwords that change
69 automatically, giving the advantages of service isolation without risk
70 of poor, unchanging passwords.
71
72 Where possible, Samba's existing samba-tool password handling
73 commands, which in the past have only operated against the local
74 sam.ldb have been extended to permit operation against a remote server
75 with authenticated access to "-H ldap://$DCNAME"
76
77 Supported operations include:
78  - reading the current and previous gMSA password via
79    "samba-tool user getpassword"
80  - writing a Kerberos Ticket Granting Ticket (TGT) to a local
81    credentials cache with a new command
82    "samba-tool user get-kerberos-ticket"
83
84 New Windows Search Protocol Client
85 ----------------------------------
86
87 Samba now by default builds new experimental Windows Search Protocol (WSP)
88 command line client "wspsearch"
89
90 The "wspsearch" cmd-line utility allows a WSP search request to be sent
91 to a server (such as a windows server) that has the (WSP)
92 Windows Search Protocol service configured and enabled.
93
94 For more details see the wspsearch man page.
95
96 Allow 'smbcacls' to save/restore DACLs to file
97 --------------------------------------------
98
99 'smbcacls' has been extended to allow DACLs to be saved and restored
100 to/from a file. This feature mimics the functionality that windows cmd
101 line tool 'icacls.exe' provides. Additionally files created either
102 by 'smbcalcs' or 'icacls.exe' are interchangeable and can be used by
103 either tool as the same file format is used.
104
105 New options added are:
106  - '--save savefile'    Saves DACLs in sddl format to file
107  - '--recurse'          Performs the '--save' operation above on directory
108                         and all files/directories below.
109  - '--restore savefile' Restores the stored DACLS to files in directory
110
111 Samba-tool extensions for AD Claims, Authentication Policies and Silos
112 ----------------------------------------------------------------------
113
114 samba-tool now allows users to be associated with claims.  In the
115 Samba AD DC, claims derive from Active Directory attributes mapped
116 into specific names.  These claims can be used in rules, which are
117 conditional ACEs in a security descriptor, that decide if a user is
118 restricted by an authentication policy.
119
120 samba-tool also allows the creation and management of authentication
121 policies, which are rules about where a user may authenticate from,
122 if NTLM is permitted, and what services a user may authenticate to.
123
124 Finally, support is added for the creation and management of
125 authentication silos, which are helpful in defining network boundaries
126 by grouping users and the services they connect to.
127
128 Please note: The command line syntax for these tools is not final, and
129 may change before the next release, as we gain user feedback.  The
130 syntax will be locked in once Samba offers 2016 AD Functional Level as
131 a default.
132
133 AD DC support for Authentication Silos and Authentication Policies
134 ------------------------------------------------------------------
135
136 The Samba AD DC now also honours any existing claims, authentication
137 policy and authentication silo configuration previously created (eg
138 from an import of a Microsoft AD), as well as new configurations
139 created with samba-tool.  The use of Microsoft's Powershell based
140 client tools is not expected to work.
141
142 To use this feature, the functional level must be set to 2012_R2 or
143 later with:
144
145  ad dc functional level = 2016
146
147 in the smb.conf.
148
149 The smb.conf file on each DC must have 'ad dc functional level = 2016'
150 set to have the partially complete feature available.  This will also,
151 at first startup, update the server's own AD entry with the configured
152 functional level.
153
154 For new domains, add these parameters to 'samba-tool provision'
155
156 --option="ad dc functional level = 2016" --function-level=2016
157
158 The second option, setting the overall domain functional level
159 indicates that all DCs should be at this functional level.
160
161 To raise the domain functional level of an existing domain, after
162 updating the smb.conf and restarting Samba run
163 samba-tool domain schemaupgrade --schema=2019
164 samba-tool domain functionalprep --function-level=2016
165 samba-tool domain level raise --domain-level=2016 --forest-level=2016
166
167 This support is still new, so is not enabled by default in this
168 release.  The above instructions are set at 2016, which while not
169 complete, matches what our testing environment validates.
170
171 Conditional ACEs and Resource Attribute ACEs
172 --------------------------------------------
173
174 Ordinary Access Control Entries (ACEs) unconditionally allow or deny
175 access to a given user or group. Conditional ACEs have an additional
176 section that describes conditions under which the ACE applies. If the
177 conditional expression is true, the ACE works like an ordinary ACE,
178 otherwise it is ignored. The condition terms can refer to claims,
179 group memberships, and attributes on the object itself. These
180 attributes are described in Resource Attribute ACEs that occur in the
181 object's System Access Control List (SACL). Conditional ACEs are
182 described in Microsoft documentation.
183
184 Conditional ACE evaluation is controlled by the "acl claims
185 evaluation" smb.conf option. The default value is "AD DC only" which
186 enables them in AD DC settings. The other option is "never", which
187 disables them altogether. There is currently no option to enable them
188 on the file server (this is likely to change in future releases).
189
190 The Security Descriptor Definition Language has extensions for
191 conditional ACEs and resource attribute ACEs; these are now supported
192 by Samba.
193
194
195 REMOVED FEATURES
196 ================
197
198 Get locally logged on users from utmp
199 -------------------------------------
200
201 The Workstation Service Remote Protocol [MS-WKST] calls NetWkstaGetInfo
202 level 102 and NetWkstaEnumUsers level 0 and 1 return the list of locally
203 logged on users. Samba was getting the list from utmp, which is not
204 Y2038 safe. This feature has been completely removed and Samba will
205 always return an empty list.
206
207
208 smb.conf changes
209 ================
210
211   Parameter Name                          Description     Default
212   --------------                          -----------     -------
213   smb3 unix extensions                    Per share       -
214   acl claims evaluation                   new             AD DC only
215
216
217 CHANGES SINCE 4.20.0rc1
218 =======================
219
220 o  Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
221    * BUG 15574: Performance regression for NDR parsing of security descriptors.
222
223 o  Anoop C S <anoopcs@samba.org>
224    * BUG 15565: Build and install man page for wspsearch client utility.
225
226 o  Andreas Schneider <asn@samba.org>
227    * BUG 15558: samba-gpupdate logging doesn't work.
228
229
230 KNOWN ISSUES
231 ============
232
233 https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.20#Release_blocking_bugs
234
235
236 #######################################
237 Reporting bugs & Development Discussion
238 #######################################
239
240 Please discuss this release on the samba-technical mailing list or by
241 joining the #samba-technical:matrix.org matrix room, or
242 #samba-technical IRC channel on irc.libera.chat
243
244 If you do report problems then please try to send high quality
245 feedback. If you don't provide vital information to help us track down
246 the problem then you will probably be ignored.  All bug reports should
247 be filed under the Samba 4.1 and newer product in the project's Bugzilla
248 database (https://bugzilla.samba.org/).
249
250
251 ======================================================================
252 == Our Code, Our Bugs, Our Responsibility.
253 == The Samba Team
254 ======================================================================
255