1 =============================
2 Release Notes for Samba 4.4.3
4 =============================
7 This is the latest stable release of Samba 4.4.
9 This release fixes some regressions introduced by the last security fixes.
10 Please see bug https://bugzilla.samba.org/show_bug.cgi?id=11849 for a list of
11 bugs addressing these regressions and more information.
17 o Michael Adam <obnox@samba.org>
18 * BUG 11786: idmap_hash: Only allow the hash module for default idmap config.
20 o Jeremy Allison <jra@samba.org>
21 * BUG 11822: s3: libsmb: Fix error where short name length was read as 2
24 o Andrew Bartlett <abartlet@samba.org>
25 * BUG 11789: Fix returning of ldb.MessageElement.
27 o Ralph Boehme <slow@samba.org>
28 * BUG 11855: cleanupd: Restart as needed.
30 o Günther Deschner <gd@samba.org>
31 * BUG 11786: s3:winbindd:idmap: check loadparm in domain_has_idmap_config()
33 * BUG 11789: libsmb/pysmb: Add pytalloc-util dependency to fix the build.
35 o Volker Lendecke <vl@samba.org>
36 * BUG 11786: winbind: Fix CID 1357100: Unchecked return value.
37 * BUG 11816: nwrap: Fix the build on Solaris.
38 * BUG 11827: vfs_catia: Fix memleak.
39 * BUG 11878: smbd: Avoid large reads beyond EOF.
41 o Stefan Metzmacher <metze@samba.org>
42 * BUG 11789: s3:wscript: pylibsmb depends on pycredentials.
43 * BUG 11841: Fix NT_STATUS_ACCESS_DENIED when accessing Windows public share.
44 * BUG 11847: Only validate MIC if "map to guest" is not being used.
45 * BUG 11849: auth/ntlmssp: Add ntlmssp_{client,server}:force_old_spnego
47 * BUG 11850: NetAPP SMB servers don't negotiate NTLMSSP_SIGN.
48 * BUG 11858: Allow anonymous smb connections.
49 * BUG 11870: Fix ads_sasl_spnego_gensec_bind(KRB5).
50 * BUG 11872: Fix 'wbinfo -u' and 'net ads search'.
52 o Tom Mortensen <tomm@lime-technology.com>
53 * BUG 11875: nss_wins: Fix the hostent setup.
55 o Garming Sam <garming@catalyst.net.nz>
56 * BUG 11789: build: Mark explicit dependencies on pytalloc-util.
58 o Partha Sarathi <partha@exablox.com>
59 * BUG 11819: Fix the smb2_setinfo to handle FS info types and FSQUOTA
62 o Jorge Schrauwen <sjorge@blackdot.be>
63 * BUG 11816: configure: Don't check for inotify on illumos.
65 o Uri Simchoni <uri@samba.org>
66 * BUG 11806: vfs_acl_common: Avoid setting POSIX ACLs if "ignore system acls"
68 * BUG 11815: smbcquotas: print "NO LIMIT" only if returned quota value is 0.
69 * BUG 11852: libads: Record session expiry for spnego sasl binds.
71 o Hemanth Thummala <hemanth.thummala@nutanix.com>
72 * BUG 11840: Mask general purpose signals for notifyd.
75 #######################################
76 Reporting bugs & Development Discussion
77 #######################################
79 Please discuss this release on the samba-technical mailing list or by
80 joining the #samba-technical IRC channel on irc.freenode.net.
82 If you do report problems then please try to send high quality
83 feedback. If you don't provide vital information to help us track down
84 the problem then you will probably be ignored. All bug reports should
85 be filed under the "Samba 4.1 and newer" product in the project's Bugzilla
86 database (https://bugzilla.samba.org/).
89 ======================================================================
90 == Our Code, Our Bugs, Our Responsibility.
92 ======================================================================
95 Release notes for older releases follow:
96 ----------------------------------------
98 =============================
99 Release Notes for Samba 4.4.2
101 =============================
103 This is a security release containing one additional
104 regression fix for the security release 4.4.1.
106 This fixes a regression that prevents things like 'net ads join'
107 from working against a Windows 2003 domain.
112 o Stefan Metzmacher <metze@samba.org>
113 * Bug 11804 - prerequisite backports for the security release on
117 -----------------------------------------------------------------------
120 =============================
121 Release Notes for Samba 4.4.1
123 =============================
126 This is a security release in order to address the following CVEs:
128 o CVE-2015-5370 (Multiple errors in DCE-RPC code)
130 o CVE-2016-2110 (Man in the middle attacks possible with NTLMSSP)
132 o CVE-2016-2111 (NETLOGON Spoofing Vulnerability)
134 o CVE-2016-2112 (LDAP client and server don't enforce integrity)
136 o CVE-2016-2113 (Missing TLS certificate validation)
138 o CVE-2016-2114 ("server signing = mandatory" not enforced)
140 o CVE-2016-2115 (SMB IPC traffic is not integrity protected)
142 o CVE-2016-2118 (SAMR and LSA man in the middle attacks possible)
144 The number of changes are rather huge for a security release,
145 compared to typical security releases.
147 Given the number of problems and the fact that they are all related
148 to man in the middle attacks we decided to fix them all at once
149 instead of splitting them.
151 In order to prevent the man in the middle attacks it was required
152 to change the (default) behavior for some protocols. Please see the
153 "New smb.conf options" and "Behavior changes" sections below.
161 Versions of Samba from 3.6.0 to 4.4.0 inclusive are vulnerable to
162 denial of service attacks (crashes and high cpu consumption)
163 in the DCE-RPC client and server implementations. In addition,
164 errors in validation of the DCE-RPC packets can lead to a downgrade
165 of a secure connection to an insecure one.
167 While we think it is unlikely, there's a nonzero chance for
168 a remote code execution attack against the client components,
169 which are used by smbd, winbindd and tools like net, rpcclient and
170 others. This may gain root access to the attacker.
172 The above applies all possible server roles Samba can operate in.
174 Note that versions before 3.6.0 had completely different marshalling
175 functions for the generic DCE-RPC layer. It's quite possible that
176 that code has similar problems!
178 The downgrade of a secure connection to an insecure one may
179 allow an attacker to take control of Active Directory object
180 handles created on a connection created from an Administrator
181 account and re-use them on the now non-privileged connection,
182 compromising the security of the Samba AD-DC.
186 There are several man in the middle attacks possible with
187 NTLMSSP authentication.
189 E.g. NTLMSSP_NEGOTIATE_SIGN and NTLMSSP_NEGOTIATE_SEAL
190 can be cleared by a man in the middle.
192 This was by protocol design in earlier Windows versions.
194 Windows Server 2003 RTM and Vista RTM introduced a way
195 to protect against the trivial downgrade.
197 See MsvAvFlags and flag 0x00000002 in
198 https://msdn.microsoft.com/en-us/library/cc236646.aspx
200 This new feature also implies support for a mechlistMIC
201 when used within SPNEGO, which may prevent downgrades
202 from other SPNEGO mechs, e.g. Kerberos, if sign or
203 seal is finally negotiated.
205 The Samba implementation doesn't enforce the existence of
206 required flags, which were requested by the application layer,
207 e.g. LDAP or SMB1 encryption (via the unix extensions).
208 As a result a man in the middle can take over the connection.
209 It is also possible to misguide client and/or
210 server to send unencrypted traffic even if encryption
211 was explicitly requested.
213 LDAP (with NTLMSSP authentication) is used as a client
214 by various admin tools of the Samba project,
215 e.g. "net", "samba-tool", "ldbsearch", "ldbedit", ...
217 As an active directory member server LDAP is also used
218 by the winbindd service when connecting to domain controllers.
220 Samba also offers an LDAP server when running as
221 active directory domain controller.
223 The NTLMSSP authentication used by the SMB1 encryption
224 is protected by smb signing, see CVE-2015-5296.
228 It's basically the same as CVE-2015-0005 for Windows:
230 The NETLOGON service in Microsoft Windows Server 2003 SP2,
231 Windows Server 2008 SP2 and R2 SP1, and Windows Server 2012 Gold
232 and R2, when a Domain Controller is configured, allows remote
233 attackers to spoof the computer name of a secure channel's
234 endpoint, and obtain sensitive session information, by running a
235 crafted application and leveraging the ability to sniff network
236 traffic, aka "NETLOGON Spoofing Vulnerability".
238 The vulnerability in Samba is worse as it doesn't require
239 credentials of a computer account in the domain.
241 This only applies to Samba running as classic primary domain controller,
242 classic backup domain controller or active directory domain controller.
244 The security patches introduce a new option called "raw NTLMv2 auth"
245 ("yes" or "no") for the [global] section in smb.conf.
246 Samba (the smbd process) will reject client using raw NTLMv2
247 without using NTLMSSP.
249 Note that this option also applies to Samba running as
250 standalone server and member server.
252 You should also consider using "lanman auth = no" (which is already the default)
253 and "ntlm auth = no". Have a look at the smb.conf manpage for further details,
254 as they might impact compatibility with older clients. These also
255 apply for all server roles.
259 Samba uses various LDAP client libraries, a builtin one and/or the system
260 ldap libraries (typically openldap).
262 As active directory domain controller Samba also provides an LDAP server.
264 Samba takes care of doing SASL (GSS-SPNEGO) authentication with Kerberos or NTLMSSP
265 for LDAP connections, including possible integrity (sign) and privacy (seal)
268 Samba has support for an option called "client ldap sasl wrapping" since version
269 3.2.0. Its default value has changed from "plain" to "sign" with version 4.2.0.
271 Tools using the builtin LDAP client library do not obey the
272 "client ldap sasl wrapping" option. This applies to tools like:
273 "samba-tool", "ldbsearch", "ldbedit" and more. Some of them have command line
274 options like "--sign" and "--encrypt". With the security update they will
275 also obey the "client ldap sasl wrapping" option as default.
277 In all cases, even if explicitly request via "client ldap sasl wrapping",
278 "--sign" or "--encrypt", the protection can be downgraded by a man in the
281 The LDAP server doesn't have an option to enforce strong authentication
282 yet. The security patches will introduce a new option called
283 "ldap server require strong auth", possible values are "no",
284 "allow_sasl_over_tls" and "yes".
286 As the default behavior was as "no" before, you may
287 have to explicitly change this option until all clients have
288 been adjusted to handle LDAP_STRONG_AUTH_REQUIRED errors.
289 Windows clients and Samba member servers already use
290 integrity protection.
294 Samba has support for TLS/SSL for some protocols:
295 ldap and http, but currently certificates are not
296 validated at all. While we have a "tls cafile" option,
297 the configured certificate is not used to validate
298 the server certificate.
300 This applies to ldaps:// connections triggered by tools like:
301 "ldbsearch", "ldbedit" and more. Note that it only applies
302 to the ldb tools when they are built as part of Samba or with Samba
303 extensions installed, which means the Samba builtin LDAP client library is
306 It also applies to dcerpc client connections using ncacn_http (with https://),
307 which are only used by the openchange project. Support for ncacn_http
308 was introduced in version 4.2.0.
310 The security patches will introduce a new option called
311 "tls verify peer". Possible values are "no_check", "ca_only",
312 "ca_and_name_if_available", "ca_and_name" and "as_strict_as_possible".
314 If you use the self-signed certificates which are auto-generated
315 by Samba, you won't have a crl file and need to explicitly
316 set "tls verify peer = ca_and_name".
320 Due to a regression introduced in Samba 4.0.0,
321 an explicit "server signing = mandatory" in the [global] section
322 of the smb.conf was not enforced for clients using the SMB1 protocol.
324 As a result it does not enforce smb signing and allows man in the middle attacks.
326 This problem applies to all possible server roles:
327 standalone server, member server, classic primary domain controller,
328 classic backup domain controller and active directory domain controller.
330 In addition, when Samba is configured with "server role = active directory domain controller"
331 the effective default for the "server signing" option should be "mandatory".
333 During the early development of Samba 4 we had a new experimental
334 file server located under source4/smb_server. But before
335 the final 4.0.0 release we switched back to the file server
338 But the logic for the correct default of "server signing" was not
339 ported correctly ported.
341 Note that the default for server roles other than active directory domain
342 controller, is "off" because of performance reasons.
346 Samba has an option called "client signing", this is turned off by default
347 for performance reasons on file transfers.
349 This option is also used when using DCERPC with ncacn_np.
351 In order to get integrity protection for ipc related communication
352 by default the "client ipc signing" option is introduced.
353 The effective default for this new option is "mandatory".
355 In order to be compatible with more SMB server implementations,
356 the following additional options are introduced:
357 "client ipc min protocol" ("NT1" by default) and
358 "client ipc max protocol" (the highest support SMB2/3 dialect by default).
359 These options overwrite the "client min protocol" and "client max protocol"
360 options, because the default for "client max protocol" is still "NT1".
361 The reason for this is the fact that all SMB2/3 support SMB signing,
362 while there are still SMB1 implementations which don't offer SMB signing
363 by default (this includes Samba versions before 4.0.0).
365 Note that winbindd (in versions 4.2.0 and higher) enforces SMB signing
366 against active directory domain controllers despite of the
367 "client signing" and "client ipc signing" options.
369 o CVE-2016-2118 (a.k.a. BADLOCK):
371 The Security Account Manager Remote Protocol [MS-SAMR] and the
372 Local Security Authority (Domain Policy) Remote Protocol [MS-LSAD]
373 are both vulnerable to man in the middle attacks. Both are application level
374 protocols based on the generic DCE 1.1 Remote Procedure Call (DCERPC) protocol.
376 These protocols are typically available on all Windows installations
377 as well as every Samba server. They are used to maintain
378 the Security Account Manager Database. This applies to all
379 roles, e.g. standalone, domain member, domain controller.
381 Any authenticated DCERPC connection a client initiates against a server
382 can be used by a man in the middle to impersonate the authenticated user
383 against the SAMR or LSAD service on the server.
385 The client chosen application protocol, auth type (e.g. Kerberos or NTLMSSP)
386 and auth level (NONE, CONNECT, PKT_INTEGRITY, PKT_PRIVACY) do not matter
387 in this case. A man in the middle can change auth level to CONNECT
388 (which means authentication without message protection) and take over
391 As a result, a man in the middle is able to get read/write access to the
392 Security Account Manager Database, which reveals all passwords
393 and any other potential sensitive information.
395 Samba running as an active directory domain controller is additionally
396 missing checks to enforce PKT_PRIVACY for the
397 Directory Replication Service Remote Protocol [MS-DRSR] (drsuapi)
398 and the BackupKey Remote Protocol [MS-BKRP] (backupkey).
399 The Domain Name Service Server Management Protocol [MS-DNSP] (dnsserver)
400 is not enforcing at least PKT_INTEGRITY.
406 allow dcerpc auth level connect (G)
408 This option controls whether DCERPC services are allowed to be used with
409 DCERPC_AUTH_LEVEL_CONNECT, which provides authentication, but no per
410 message integrity nor privacy protection.
412 Some interfaces like samr, lsarpc and netlogon have a hard-coded default
413 of no and epmapper, mgmt and rpcecho have a hard-coded default of yes.
415 The behavior can be overwritten per interface name (e.g. lsarpc,
416 netlogon, samr, srvsvc, winreg, wkssvc ...) by using
417 'allow dcerpc auth level connect:interface = yes' as option.
419 This option yields precedence to the implementation specific restrictions.
420 E.g. the drsuapi and backupkey protocols require DCERPC_AUTH_LEVEL_PRIVACY.
421 The dnsserver protocol requires DCERPC_AUTH_LEVEL_INTEGRITY.
423 Default: allow dcerpc auth level connect = no
425 Example: allow dcerpc auth level connect = yes
427 client ipc signing (G)
429 This controls whether the client is allowed or required to use
430 SMB signing for IPC$ connections as DCERPC transport. Possible
431 values are auto, mandatory and disabled.
433 When set to mandatory or default, SMB signing is required.
435 When set to auto, SMB signing is offered, but not enforced and
436 if set to disabled, SMB signing is not offered either.
438 Connections from winbindd to Active Directory Domain Controllers
439 always enforce signing.
441 Default: client ipc signing = default
443 client ipc max protocol (G)
445 The value of the parameter (a string) is the highest protocol level that will
446 be supported for IPC$ connections as DCERPC transport.
448 Normally this option should not be set as the automatic negotiation phase
449 in the SMB protocol takes care of choosing the appropriate protocol.
451 The value default refers to the latest supported protocol, currently SMB3_11.
453 See client max protocol for a full list of available protocols.
454 The values CORE, COREPLUS, LANMAN1, LANMAN2 are silently upgraded to NT1.
456 Default: client ipc max protocol = default
458 Example: client ipc max protocol = SMB2_10
460 client ipc min protocol (G)
462 This setting controls the minimum protocol version that the will be
463 attempted to use for IPC$ connections as DCERPC transport.
465 Normally this option should not be set as the automatic negotiation phase
466 in the SMB protocol takes care of choosing the appropriate protocol.
468 The value default refers to the higher value of NT1 and the
469 effective value of "client min protocol".
471 See client max protocol for a full list of available protocols.
472 The values CORE, COREPLUS, LANMAN1, LANMAN2 are silently upgraded to NT1.
474 Default: client ipc min protocol = default
476 Example: client ipc min protocol = SMB3_11
478 ldap server require strong auth (G)
480 The ldap server require strong auth defines whether the
481 ldap server requires ldap traffic to be signed or
482 signed and encrypted (sealed). Possible values are no,
483 allow_sasl_over_tls and yes.
485 A value of no allows simple and sasl binds over all transports.
487 A value of allow_sasl_over_tls allows simple and sasl binds (without sign or seal)
488 over TLS encrypted connections. Unencrypted connections only
489 allow sasl binds with sign or seal.
491 A value of yes allows only simple binds over TLS encrypted connections.
492 Unencrypted connections only allow sasl binds with sign or seal.
494 Default: ldap server require strong auth = yes
498 This parameter determines whether or not smbd(8) will allow SMB1 clients
499 without extended security (without SPNEGO) to use NTLMv2 authentication.
501 If this option, lanman auth and ntlm auth are all disabled, then only
502 clients with SPNEGO support will be permitted. That means NTLMv2 is only
503 supported within NTLMSSP.
505 Default: raw NTLMv2 auth = no
509 This controls if and how strict the client will verify the peer's
510 certificate and name. Possible values are (in increasing order): no_check,
511 ca_only, ca_and_name_if_available, ca_and_name and as_strict_as_possible.
513 When set to no_check the certificate is not verified at all,
514 which allows trivial man in the middle attacks.
516 When set to ca_only the certificate is verified to be signed from a ca
517 specified in the "tls ca file" option. Setting "tls ca file" to a valid file
518 is required. The certificate lifetime is also verified. If the "tls crl file"
519 option is configured, the certificate is also verified against
522 When set to ca_and_name_if_available all checks from ca_only are performed.
523 In addition, the peer hostname is verified against the certificate's
524 name, if it is provided by the application layer and not given as
525 an ip address string.
527 When set to ca_and_name all checks from ca_and_name_if_available are performed.
528 In addition the peer hostname needs to be provided and even an ip
529 address is checked against the certificate's name.
531 When set to as_strict_as_possible all checks from ca_and_name are performed.
532 In addition the "tls crl file" needs to be configured. Future versions
533 of Samba may implement additional checks.
535 Default: tls verify peer = as_strict_as_possible
537 tls priority (G) (backported from Samba 4.3 to Samba 4.2)
539 This option can be set to a string describing the TLS protocols to be
540 supported in the parts of Samba that use GnuTLS, specifically the AD DC.
542 The default turns off SSLv3, as this protocol is no longer considered
543 secure after CVE-2014-3566 (otherwise known as POODLE) impacted SSLv3 use
544 in HTTPS applications.
546 The valid options are described in the GNUTLS Priority-Strings
547 documentation at http://gnutls.org/manual/html_node/Priority-Strings.html
549 Default: tls priority = NORMAL:-VERS-SSL3.0
555 o The default auth level for authenticated binds has changed from
556 DCERPC_AUTH_LEVEL_CONNECT to DCERPC_AUTH_LEVEL_INTEGRITY.
557 That means ncacn_ip_tcp:server is now implicitly the same
558 as ncacn_ip_tcp:server[sign] and offers a similar protection
559 as ncacn_np:server, which relies on smb signing.
561 o The following constraints are applied to SMB1 connections:
563 - "client lanman auth = yes" is now consistently
564 required for authenticated connections using the
565 SMB1 LANMAN2 dialect.
566 - "client ntlmv2 auth = yes" and "client use spnego = yes"
567 (both the default values), require extended security (SPNEGO)
568 support from the server. That means NTLMv2 is only used within
571 o Tools like "samba-tool", "ldbsearch", "ldbedit" and more obey the
572 default of "client ldap sasl wrapping = sign". Even with
573 "client ldap sasl wrapping = plain" they will automatically upgrade
574 to "sign" when getting LDAP_STRONG_AUTH_REQUIRED from the LDAP
580 o Jeremy Allison <jra@samba.org>
581 * Bug 11344 - CVE-2015-5370: Multiple errors in DCE-RPC code.
583 o Christian Ambach <ambi@samba.org>
584 * Bug 11804 - prerequisite backports for the security release on
587 o Ralph Boehme <slow@samba.org>
588 * Bug 11644 - CVE-2016-2112: The LDAP client and server don't enforce
589 integrity protection.
591 o Günther Deschner <gd@samba.org>
592 * Bug 11749 - CVE-2016-2111: NETLOGON Spoofing Vulnerability.
594 * Bug 11804 - prerequisite backports for the security release on
597 o Volker Lendecke <vl@samba.org>
598 * Bug 11804 - prerequisite backports for the security release on
601 o Stefan Metzmacher <metze@samba.org>
602 * Bug 11344 - CVE-2015-5370: Multiple errors in DCE-RPC code.
604 * Bug 11616 - CVE-2016-2118: SAMR and LSA man in the middle attacks possible.
606 * Bug 11644 - CVE-2016-2112: The LDAP client and server doesn't enforce
607 integrity protection.
609 * Bug 11687 - CVE-2016-2114: "server signing = mandatory" not enforced.
611 * Bug 11688 - CVE-2016-2110: Man in the middle attacks possible with NTLMSSP.
613 * Bug 11749 - CVE-2016-2111: NETLOGON Spoofing Vulnerability.
615 * Bug 11752 - CVE-2016-2113: Missing TLS certificate validation allows man in
618 * Bug 11756 - CVE-2016-2115: SMB client connections for IPC traffic are not
621 * Bug 11804 - prerequisite backports for the security release on
625 #######################################
626 Reporting bugs & Development Discussion
627 #######################################
629 Please discuss this release on the samba-technical mailing list or by
630 joining the #samba-technical IRC channel on irc.freenode.net.
632 If you do report problems then please try to send high quality
633 feedback. If you don't provide vital information to help us track down
634 the problem then you will probably be ignored. All bug reports should
635 be filed under the "Samba 4.1 and newer" product in the project's Bugzilla
636 database (https://bugzilla.samba.org/).
639 ======================================================================
640 == Our Code, Our Bugs, Our Responsibility.
642 ======================================================================
645 ----------------------------------------------------------------------
648 =============================
649 Release Notes for Samba 4.4.0
651 =============================
654 This is the first stable release of the Samba 4.4 release series.
666 Asynchronous flush requests
667 ---------------------------
669 Flush requests from SMB2/3 clients are handled asynchronously and do
670 not block the processing of other requests. Note that 'strict sync'
671 has to be set to 'yes' for Samba to honor flush requests from SMB
677 Remove '--with-aio-support' configure option. We no longer would ever prefer
678 POSIX-RT aio, use pthread_aio instead.
683 The 'samba-tool sites' subcommand can now be run against another server by
684 specifying an LDB URL using the '-H' option and not against the local database
685 only (which is still the default when no URL is given).
687 samba-tool domain demote
688 ------------------------
690 Add '--remove-other-dead-server' option to 'samba-tool domain demote'
691 subcommand. The new version of this tool now can remove another DC that is
692 itself offline. The '--remove-other-dead-server' removes as many references
693 to the DC as possible.
695 samba-tool drs clone-dc-database
696 --------------------------------
698 Replicate an initial clone of domain, but do not join it.
699 This is developed for debugging purposes, but not for setting up another DC.
704 Add '--set-nt-hash' option to pdbedit to update user password from nt-hash
705 hexstring. 'pdbedit -vw' shows also password hashes.
710 'smbstatus' was enhanced to show the state of signing and encryption for
715 The -u and -p options for user and password were replaced by the -U option that
716 accepts username[%password] as in many other tools of the Samba suite.
717 Similary, smbgetrc files do not accept username and password options any more,
718 only a single "user" option which also accepts user%password combinations.
719 The -P option was removed.
724 Add a GnuTLS based backupkey implementation.
729 Using the '--offline-logon' enables ntlm_auth to use cached passwords when the
732 Allow '--password' force a local password check for ntlm-server-1 mode.
737 A new VFS module called vfs_offline has been added to mark all files in the
738 share as offline. It can be useful for shares mounted on top of a remote file
739 system (either through a samba VFS module or via FUSE).
744 The Samba KCC has been improved, but is still disabled by default.
749 There were several improvements concerning the Samba DNS server.
754 There were some improvements in the Active Directory area.
759 The WINS nsswitch module has been rewritten to address memory issues and to
760 simplify the code. The module now uses libwbclient to do WINS queries. This
761 means that winbind needs to be running in order to resolve WINS names using
762 the nss_wins module. This does not affect smbd.
767 * CTDB now uses a newly implemented parallel database recovery scheme
768 that avoids deadlocks with smbd.
770 In certain circumstances CTDB and smbd could deadlock. The new
771 recovery implementation avoid this. It also provides improved
772 recovery performance.
774 * All files are now installed into and referred to by the paths
775 configured at build time. Therefore, CTDB will now work properly
776 when installed into the default location at /usr/local.
778 * Public CTDB header files are no longer installed, since Samba and
779 CTDB are built from within the same source tree.
781 * CTDB_DBDIR can now be set to tmpfs[:<tmpfs-options>]
783 This will cause volatile TDBs to be located in a tmpfs. This can
784 help to avoid performance problems associated with contention on the
785 disk where volatile TDBs are usually stored. See ctdbd.conf(5) for
788 * Configuration variable CTDB_NATGW_SLAVE_ONLY is no longer used.
789 Instead, nodes should be annotated with the "slave-only" option in
790 the CTDB NAT gateway nodes file. This file must be consistent
791 across nodes in a NAT gateway group. See ctdbd.conf(5) for more
794 * New event script 05.system allows various system resources to be
797 This can be helpful for explaining poor performance or unexpected
798 behaviour. New configuration variables are
799 CTDB_MONITOR_FILESYSTEM_USAGE, CTDB_MONITOR_MEMORY_USAGE and
800 CTDB_MONITOR_SWAP_USAGE. Default values cause warnings to be
801 logged. See the SYSTEM RESOURCE MONITORING CONFIGURATION in
802 ctdbd.conf(5) for more information.
804 The memory, swap and filesystem usage monitoring previously found in
805 00.ctdb and 40.fs_use is no longer available. Therefore,
806 configuration variables CTDB_CHECK_FS_USE, CTDB_MONITOR_FREE_MEMORY,
807 CTDB_MONITOR_FREE_MEMORY_WARN and CTDB_CHECK_SWAP_IS_NOT_USED are
810 * The 62.cnfs eventscript has been removed. To get a similar effect
811 just do something like this:
813 mmaddcallback ctdb-disable-on-quorumLoss \
814 --command /usr/bin/ctdb \
815 --event quorumLoss --parms "disable"
817 mmaddcallback ctdb-enable-on-quorumReached \
818 --command /usr/bin/ctdb \
819 --event quorumReached --parms "enable"
821 * The CTDB tunable parameter EventScriptTimeoutCount has been renamed
822 to MonitorTimeoutCount
824 It has only ever been used to limit timed-out monitor events.
826 Configurations containing CTDB_SET_EventScriptTimeoutCount=<n> will
827 cause CTDB to fail at startup. Useful messages will be logged.
829 * The commandline option "-n all" to CTDB tool has been removed.
831 The option was not uniformly implemented for all the commands.
832 Instead of command "ctdb ip -n all", use "ctdb ip all".
834 * All CTDB current manual pages are now correctly installed
837 EXPERIMENTAL FEATURES
838 =====================
843 Samba 4.4.0 adds *experimental* support for SMB3 Multi-Channel.
844 Multi-Channel is an SMB3 protocol feature that allows the client
845 to bind multiple transport connections into one authenticated
846 SMB session. This allows for increased fault tolerance and
847 throughput. The client chooses transport connections as reported
848 by the server and also chooses over which of the bound transport
849 connections to send traffic. I/O operations for a given file
850 handle can span multiple network connections this way.
851 An SMB multi-channel session will be valid as long as at least
852 one of its channels are up.
854 In Samba, multi-channel can be enabled by setting the new
855 smb.conf option "server multi channel support" to "yes".
856 It is disabled by default.
858 Samba has to report interface speeds and some capabilities to
859 the client. On Linux, Samba can auto-detect the speed of an
860 interface. But to support other platforms, and in order to be
861 able to manually override the detected values, the "interfaces"
862 smb.conf option has been given an extended syntax, by which an
863 interface specification can additionally carry speed and
864 capability information. The extended syntax looks like this
865 for setting the speed to 1 gigabit per second:
867 interfaces = 192.168.1.42;speed=1000000000
869 This extension should be used with care and are mainly intended
870 for testing. See the smb.conf manual page for details.
872 CAVEAT: While this should be working without problems mostly,
873 there are still corner cases in the treatment of channel failures
874 that may result in DATA CORRUPTION when these race conditions hit.
877 NOT RECOMMENDED TO USE MULTI-CHANNEL IN PRODUCTION
879 at this stage. This situation can be expected to improve during
880 the life-time of the 4.4 release. Feed-back from test-setups is
890 Several public headers are not installed any longer. They are made for internal
891 use only. More public headers will very likely be removed in future releases.
893 The following headers are not installed any longer:
894 dlinklist.h, gen_ndr/epmapper.h, gen_ndr/mgmt.h, gen_ndr/ndr_atsvc_c.h,
895 gen_ndr/ndr_epmapper_c.h, gen_ndr/ndr_epmapper.h, gen_ndr/ndr_mgmt_c.h,
896 gen_ndr/ndr_mgmt.h,gensec.h, ldap_errors.h, ldap_message.h, ldap_ndr.h,
897 ldap-util.h, pytalloc.h, read_smb.h, registry.h, roles.h, samba_util.h,
898 smb2_constants.h, smb2_create_blob.h, smb2.h, smb2_lease.h, smb2_signing.h,
899 smb_cli.h, smb_cliraw.h, smb_common.h, smb_composite.h, smb_constants.h,
900 smb_raw.h, smb_raw_interfaces.h, smb_raw_signing.h, smb_raw_trans2.h,
901 smb_request.h, smb_seal.h, smb_signing.h, smb_unix_ext.h, smb_util.h,
902 torture.h, tstream_smbXcli_np.h.
904 vfs_smb_traffic_analyzer
905 ------------------------
907 The SMB traffic analyzer VFS module has been removed, because it is not
908 maintained any longer and not widely used.
913 The scannedonly VFS module has been removed, because it is not maintained
919 Parameter Name Description Default
920 -------------- ----------- -------
921 aio max threads New 100
922 ldap page size Changed default 1000
923 server multi channel support New No
924 interfaces Extended syntax
933 CHANGES SINCE 4.4.0rc5
934 ======================
936 o Michael Adam <obnox@samba.org>
937 * BUG 11796: smbd: Enable multi-channel if 'server multi channel support =
940 o Günther Deschner <gd@samba.org>
941 * BUG 11802: lib/socket/interfaces: Fix some uninitialied bytes.
943 o Uri Simchoni <uri@samba.org>
944 * BUG 11798: build: Fix build when '--without-quota' specified.
947 CHANGES SINCE 4.4.0rc4
948 ======================
950 o Andrew Bartlett <abartlet@samba.org>
951 * BUG 11780: mkdir can return ACCESS_DENIED incorrectly on create race.
952 * BUG 11783: Mismatch between local and remote attribute ids lets
953 replication fail with custom schema.
954 * BUG 11789: Talloc: Version 2.1.6.
956 o Ira Cooper <ira@samba.org>
957 * BUG 11774: vfs_glusterfs: Fix use after free in AIO callback.
959 o Günther Deschner <gd@samba.org>
960 * BUG 11755: Fix net join.
962 o Amitay Isaacs <amitay@gmail.com>
963 * BUG 11770: Reset TCP Connections during IP failover.
965 o Justin Maggard <jmaggard10@gmail.com>
966 * BUG 11773: s3:smbd: Add negprot remote arch detection for OSX.
968 o Stefan Metzmacher <metze@samba.org>
969 * BUG 11772: ldb: Version 1.1.26.
970 * BUG 11782: "trustdom_list_done: Got invalid trustdom response" message
973 o Uri Simchoni <uri@samba.org>
974 * BUG 11769: libnet: Make Kerberos domain join site-aware.
975 * BUG 11788: Quota is not supported on Solaris 10.
978 CHANGES SINCE 4.4.0rc3
979 ======================
981 o Jeremy Allison <jra@samba.org>
982 * BUG 11648: CVE-2015-7560: Getting and setting Windows ACLs on symlinks can
983 change permissions on link target.
985 o Christian Ambach <ambi@samba.org>
986 * BUG 11767: s3:utils/smbget: Fix option parsing.
988 o Alberto Maria Fiaschi <alberto.fiaschi@estar.toscana.it>
989 * BUG 8093: Access based share enum: handle permission set in configuration
992 o Stefan Metzmacher <metze@samba.org>
993 * BUG 11702: s3:clispnego: Fix confusing warning in spnego_gen_krb5_wrap().
994 * BUG 11742: tevent: version 0.9.28: Fix memory leak when old signal action
996 * BUG 11755: s3:libads: setup the msDS-SupportedEncryptionTypes attribute on
998 * BUGs 11128, 11686: CVE-2016-0771: Read of uninitialized memory DNS TXT
1001 o Garming Sam <garming@catalyst.net.nz>
1002 * BUGs 11128, 11686: CVE-2016-0771: Read of uninitialized memory DNS TXT
1005 o Uri Simchoni <uri@samba.org>
1006 * BUG 11691: winbindd: Return trust parameters when listing trusts.
1007 * BUG 11753: smbd: Ignore SVHDX create context.
1008 * BUG 11763: passdb: Add linefeed to debug message.
1011 CHANGES SINCE 4.4.0rc2
1012 ======================
1014 o Michael Adam <obnox@samba.org>
1015 * BUG 11723: lib:socket: Fix CID 1350010: Integer OVERFLOW_BEFORE_WIDEN.
1016 * BUG 11735: lib:socket: Fix CID 1350009: Fix illegal memory accesses
1017 (BUFFER_SIZE_WARNING).
1019 o Jeremy Allison <jra@samba.org>
1020 * BUG 10489: s3: smbd: posix_acls: Fix check for setting u:g:o entry on a
1021 filesystem with no ACL support.
1023 o Christian Ambach <ambi@samba.org>
1024 * BUG 11700: s3:utils/smbget: Set default blocksize.
1026 o Anoop C S <anoopcs@redhat.com>
1027 * BUG 11734: lib/socket: Fix improper use of default interface speed.
1029 o Ralph Boehme <slow@samba.org>
1030 * BUG 11714: lib/tsocket: Work around sockets not supporting FIONREAD.
1032 o Volker Lendecke <vl@samba.org>
1033 * BUG 11724: smbd: Fix CID 1351215 Improper use of negative value.
1034 * BUG 11725: smbd: Fix CID 1351216 Dereference null return value.
1035 * BUG 11732: param: Fix str_list_v3 to accept ; again.
1037 o Noel Power <noel.power@suse.com>
1038 * BUG 11738: libcli: Fix debug message, print sid string for new_ace trustee.
1040 o Jose A. Rivera <jarrpa@samba.org>
1041 * BUG 11727: s3:smbd:open: Skip redundant call to file_set_dosmode when
1042 creating a new file.
1044 o Andreas Schneider <asn@samba.org>
1045 * BUG 11730: docs: Add manpage for cifsdd.
1046 * BUG 11739: Fix installation path of Samba helper binaries.
1048 o Berend De Schouwer <berend.de.schouwer@gmail.com>
1049 * BUG 11643: docs: Add example for domain logins to smbspool man page.
1051 o Martin Schwenke <martin@meltin.net>
1052 * BUG 11719: ctdb-scripts: Drop use of "smbcontrol winbindd ip-dropped ..."
1054 o Hemanth Thummala <hemanth.thummala@nutanix.com>
1055 * BUG 11708: loadparm: Fix memory leak issue.
1056 * BUG 11740: Fix memory leak in loadparm.
1059 CHANGES SINCE 4.4.0rc1
1060 ======================
1062 o Michael Adam <obnox@samba.org>
1063 * BUG 11715: s3:vfs:glusterfs: Fix build after quota changes.
1065 o Jeremy Allison <jra@samba.org>
1066 * BUG 11703: s3: smbd: Fix timestamp rounding inside SMB2 create.
1068 o Christian Ambach <ambi@samba.org>
1069 * BUG 11700: Streamline 'smbget' options with the rest of the Samba utils.
1071 o Günther Deschner <gd@samba.org>
1072 * BUG 11696: ctdb: Do not provide a useless pkgconfig file for ctdb.
1074 o Stefan Metzmacher <metze@samba.org>
1075 * BUG 11699: Crypto.Cipher.ARC4 is not available on some platforms, fallback
1076 to M2Crypto.RC4.RC4 then.
1078 o Amitay Isaacs <amitay@gmail.com>
1079 * BUG 11705: Sockets with htons(IPPROTO_RAW) and CVE-2015-8543.
1081 o Andreas Schneider <asn@samba.org>
1082 * BUG 11690: docs: Add smbspool_krb5_wrapper manpage.
1084 o Uri Simchoni <uri@samba.org>
1085 * BUG 11681: smbd: Show correct disk size for different quota and dfree block
1089 #######################################
1090 Reporting bugs & Development Discussion
1091 #######################################
1093 Please discuss this release on the samba-technical mailing list or by
1094 joining the #samba-technical IRC channel on irc.freenode.net.
1096 If you do report problems then please try to send high quality
1097 feedback. If you don't provide vital information to help us track down
1098 the problem then you will probably be ignored. All bug reports should
1099 be filed under the Samba 4.1 and newer product in the project's Bugzilla
1100 database (https://bugzilla.samba.org/).
1103 ======================================================================
1104 == Our Code, Our Bugs, Our Responsibility.
1106 ======================================================================