summaryrefslogtreecommitdiff
path: root/WHATSNEW.txt
blob: e511e17c4c84e345099573a7fe95486994f2a27a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
Release Announcements
=====================

This is the fourth release candidate of Samba 4.16.  This is *not*
intended for production environments and is designed for testing
purposes only.  Please report any defects via the Samba bug reporting
system at https://bugzilla.samba.org/.

Samba 4.16 will be the next version of the Samba suite.


UPGRADING
=========


NEW FEATURES/CHANGES
====================

New samba-dcerpcd binary to provide DCERPC in the member server setup
---------------------------------------------------------------------

In order to make it much easier to break out the DCERPC services
from smbd, a new samba-dcerpcd binary has been created.

samba-dcerpcd can be used in two ways. In the normal case without
startup script modification it is invoked on demand from smbd or
winbind --np-helper to serve DCERPC over named pipes. Note that
in order to run in this mode the smb.conf [global] section has
a new parameter "rpc start on demand helpers = [true|false]".
This parameter is set to "true" by default, meaning no changes to
smb.conf files are needed to run samba-dcerpcd on demand as a named
pipe helper.

It can also be used in a standalone mode where it is started
separately from smbd or winbind but this requires changes to system
startup scripts, and in addition a change to smb.conf, setting the new
[global] parameter "rpc start on demand helpers = false". If "rpc
start on demand helpers" is not set to false, samba-dcerpcd will
refuse to start in standalone mode.

Note that when Samba is run in the Active Directory Domain Controller
mode the samba binary that provides the AD code will still provide its
normal DCERPC services whilst allowing samba-dcerpcd to provide
services like SRVSVC in the same way that smbd used to in this
configuration.

The parameters that allowed some smbd-hosted services to be started
externally are now gone (detailed below) as this is now the default
setting.

samba-dcerpcd can also be useful for use outside of the Samba
framework, for example, use with the Linux kernel SMB2 server ksmbd or
possibly other SMB2 server implementations.

Certificate Auto Enrollment
---------------------------

Certificate Auto Enrollment allows devices to enroll for certificates from
Active Directory Certificate Services. It is enabled by Group Policy.
To enable Certificate Auto Enrollment, Samba's group policy will need to be
enabled by setting the smb.conf option `apply group policies` to Yes. Samba
Certificate Auto Enrollment depends on certmonger, the cepces certmonger
plugin, and sscep. Samba uses sscep to download the CA root chain, then uses
certmonger paired with cepces to monitor the host certificate templates.
Certificates are installed in /var/lib/samba/certs and private keys are
installed in /var/lib/samba/private/certs.

Ability to add ports to dns forwarder addresses in internal DNS backend
-----------------------------------------------------------------------

The internal DNS server of Samba forwards queries non-AD zones to one or more
configured forwarders. Up until now it has been assumed that these forwarders
listen on port 53. Starting with this version it is possible to configure the
port using host:port notation. See smb.conf for more details. Existing setups
are not affected, as the default port is 53.

CTDB changes
------------

* The "recovery master" role has been renamed "leader"

  Documentation and logs now refer to "leader".

  The following ctdb tool command names have changed:

    recmaster -> leader
    setrecmasterrole -> setleaderrole

  Command output has changed for the following commands:

    status
    getcapabilities

  The "[legacy] -> recmaster capability" configuration option has been
  renamed and moved to the cluster section, so this is now:

    [cluster] -> leader capability

* The "recovery lock" has been renamed "cluster lock"

  Documentation and logs now refer to "cluster lock".

  The "[cluster] -> recovery lock" configuration option has been
  deprecated and will be removed in a future version.  Please use
  "[cluster] -> cluster lock" instead.

  If the cluster lock is enabled then traditional elections are not
  done and leader elections use a race for the cluster lock.  This
  avoids various conditions where a node is elected leader but can not
  take the cluster lock.  Such conditions included:

  - At startup, a node elects itself leader of its own cluster before
    connecting to other nodes

  - Cluster filesystem failover is slow

  The abbreviation "reclock" is still used in many places, because a
  better abbreviation eludes us (i.e. "clock" is obvious bad) and
  changing all instances would require a lot of churn.  If the
  abbreviation "reclock" for "cluster lock" is confusing, please
  consider mentally prefixing it with "really excellent".

* CTDB now uses leader broadcasts and an associated timeout to
  determine if an election is required

  The leader broadcast timeout can be configured via new configuration
  option

    [cluster] -> leader timeout

  This specifies the number of seconds without leader broadcasts
  before a node calls an election.  The default is 5.


REMOVED FEATURES
================

SMB1 CORE and LANMAN1 protocol wildcard copy, unlink and rename removed
=======================================================================

In preparation for the removal of the SMB1 server, the unused
SMB1 command SMB_COM_COPY (SMB1 command number 0x29) has been
removed from the Samba smbd server. In addition, the ability
to process file name wildcards in requests using the SMB1 commands
SMB_COM_COPY (SMB1 command number 0x2A), SMB_COM_RENAME (SMB1 command
number 0x7), SMB_COM_NT_RENAME (SMB1 command number 0xA5) and
SMB_COM_DELETE (SMB1 command number 0x6) have been removed.

This only affects clients using MS-DOS based versions of
SMB1, the last release of which was Windows 98. Users requiring
support for these features will need to use older versions
of Samba.

No longer using Linux mandatory locks for sharemodes
====================================================

smbd mapped sharemodes to Linux mandatory locks. This code in the Linux kernel
was broken for a long time, and is planned to be removed with Linux 5.15. This
Samba release removes the usage of mandatory locks for sharemodes and the
"kernel share modes" config parameter is changed to default to "no". The Samba
VFS interface is kept, so that file-system specific VFS modules can still use
private calls for enforcing sharemodes.


smb.conf changes
================

  Parameter Name                          Description     Default
  --------------                          -----------     -------
  kernel share modes                      New default     No
  dns forwarder                           Changed
  rpc_daemon                              Removed
  rpc_server                              Removed
  rpc start on demand helpers             Added           true


CHANGES SINCE 4.16.0rc3
=======================

o  Samuel Cabrero <scabrero@suse.de>
   * BUG 14979: Problem when winbind renews Kerberos.

o  Björn Jacke <bj@sernet.de>
   * BUG 13631: DFS fix for AIX broken.
   * BUG 14974: Solaris and AIX acl modules: wrong function arguments.
   * BUG 7239: Function aixacl_sys_acl_get_file not declared / coredump.

o  Andreas Schneider <asn@samba.org>
   * BUG 14967: Samba autorid fails to map AD users if id rangesize fits in the
     id range only once.

o  Martin Schwenke <martin@meltin.net>
   * BUG 14958: CTDB can get stuck in election and recovery.


CHANGES SINCE 4.16.0rc2
=======================

o  Jeremy Allison <jra@samba.org>
   * BUG 14169: Renaming file on DFS root fails with
     NT_STATUS_OBJECT_PATH_NOT_FOUND.
   * BUG 14938: NT error code is not set when overwriting a file during rename
     in libsmbclient.

o  Ralph Boehme <slow@samba.org>
   * BUG 14674: net ads info shows LDAP Server: 0.0.0.0 depending on contacted
     server.

o  Pavel Filipenský <pfilipen@redhat.com>
   * BUG 14971: virusfilter_vfs_openat: Not scanned: Directory or special file.

o  Volker Lendecke <vl@samba.org>
   * BUG 14900: Regression: Samba 4.15.2 on macOS segfaults intermittently
     during strcpy in tdbsam_getsampwnam.
   * BUG 14975: Fix a crash in vfs_full_audit - CREATE_FILE can free a used fsp.

o  Stefan Metzmacher <metze@samba.org>
   * BUG 14968: smb2_signing_decrypt_pdu() may not decrypt with
     gnutls_aead_cipher_decrypt() from gnutls before 3.5.2.

o  Andreas Schneider <asn@samba.org>
   * BUG 14960: SDB uses HDB flags directly which can lead to unwanted side
     effects.


CHANGES SINCE 4.16.0rc1
=======================

o  Jeremy Allison <jra@samba.org>
   * BUG 14911: CVE-2021-44141: UNIX extensions in SMB1 disclose whether the
     outside target of a symlink exists.

o  Ralph Boehme <slow@samba.org>
   * BUG 14914: CVE-2021-44142: Out-of-Bound Read/Write on Samba vfs_fruit
     module.
   * BUG 14961: install elasticsearch_mappings.json

o  FeRD (Frank Dana) <ferdnyc@gmail.com>
   * BUG 14947: samba-bgqd still notifying systemd, triggering log warnings
     without NotifyAccess=all.

o  Stefan Metzmacher <metze@samba.org>
   * BUG 14867: Printing no longer works on Windows 7 with 2021-10 monthly
     rollup patch.
   * BUG 14956: ndr_push_string() adds implicit termination for
     STR_NOTERM|REMAINING empty strings.

o  Joseph Sutton <josephsutton@catalyst.net.nz>
   * BUG 14950: CVE-2022-0336: Re-adding an SPN skips subsequent SPN conflict
     checks.


KNOWN ISSUES
============

https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.16#Release_blocking_bugs


#######################################
Reporting bugs & Development Discussion
#######################################

Please discuss this release on the samba-technical mailing list or by
joining the #samba-technical IRC channel on irc.freenode.net.

If you do report problems then please try to send high quality
feedback. If you don't provide vital information to help us track down
the problem then you will probably be ignored.  All bug reports should
be filed under the Samba 4.1 and newer product in the project's Bugzilla
database (https://bugzilla.samba.org/).


======================================================================
== Our Code, Our Bugs, Our Responsibility.
== The Samba Team
======================================================================