Release Announcements ===================== This is the third release candidate of Samba 4.0. 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.0 will be the next version of the Samba suite and incorporates all the technology found in both the Samba4 series and the stable 3.x series. The primary additional features over Samba 3.6 are support for the Active Directory logon protocols used by Windows 2000 and above. This release contains the best of all of Samba's technology parts, both a file server (that you can reasonably expect to upgrade existing Samba 3.x releases to) and the AD domain controller work previously known as 'samba4'. If you are upgrading, or looking to develop, test or deploy Samba 4.0 releases candidates, you should backup all configuration and data. UPGRADING ========= Users upgrading from Samba 3.x domain controllers and wanting to use Samba 4.0 as an AD DC should use the 'samba-tool domain classicupgrade' command. See the wiki for more details: https://wiki.samba.org/index.php/Samba4/samba3upgrade/HOWTO. Users upgrading from Samba 4.0 alpha and beta releases since alpha15 should run 'samba-tool dbcheck --cross-ncs --fix' before re-starting Samba. Users upgrading from earlier alpha releases should contact the team for advice. Users upgrading an AD DC from any previous release should run 'samba-tool ntacl sysvolreset' to re-sync ACLs on the sysvol share with those matching the GPOs in LDAP and the defaults from an initial provision. This will set an underlying POSIX ACL if required (eg not using the NTVFS file server). If you used the BIND9_FLATFILE or BIND9_DLZ features, you'll have to add '-dns' to the 'server services' option, as the internal dns server (SAMBA_INTERNAL) is the default now. NEW FEATURES ============ Samba 4.0 supports the server-side of the Active Directory logon environment used by Windows 2000 and later, so we can do full domain join and domain logon operations with these clients. Our Domain Controller (DC) implementation includes our own built-in LDAP server and Kerberos Key Distribution Center (KDC) as well as the Samba3-like logon services provided over CIFS. We correctly generate the infamous Kerberos PAC, and include it with the Kerberos tickets we issue. Samba 4.0.0rc3 ships with two distinct file servers. We now use the file server from the Samba 3.x series 'smbd' for all file serving by default. Samba 4.0 also ships with the 'NTVFS' file server. This file server is what was used in all previous releases of Samba 4.0, and is tuned to match the requirements of an AD domain controller. We continue to support this, not only to provide continuity to installations that have deployed it as part of an AD DC, but also as a running example of the NT-FSA architecture we expect to move smbd to in the longer term. For pure file server work, the binaries users would expect from that series (nmbd, winbindd, smbpasswd) continue to be available. When running an AD DC, you only need to run 'samba' (not nmbd/smbd/winbind), as the required services are co-coordinated by this master binary. As DNS is an integral part of Active Directory, we also provide two DNS solutions, a simple internal DNS server for 'out of the box' configurations and a more elaborate BIND plugin using the BIND DLZ mechanism in versions 9.8 and 9.9. During the provision, you can select which backend to use. With the internal backend, your DNS server is good to go. If you chose the BIND_DLZ backend, a configuration file will be generated for bind to make it use this plugin, as well as a file explaining how to set up bind. To provide accurate timestamps to Windows clients, we integrate with the NTP project to provide secured NTP replies. To use you need to start ntpd and configure it with the 'restrict ... ms-sntp' and ntpsigndsocket options. Finally, a new scripting interface has been added to Samba 4, allowing Python programs to interface to Samba's internals, and many tools and internal workings of the DC code is now implemented in python. ###################################################################### Changes ####### smb.conf changes ---------------- Parameter Name Description -------------- ----------- allow dns updates New announce as Removed announce version Removed cldap port New client max protocol New client min protocol New client signing Changed default dcerpc endpoint servers New dgram port New display charset Removed dns forwarder New dns update command New homedir map Changed default kernel oplocks Changed default kernel share modes New kpasswd port New krb5 port New max protocol Removed min protocol Removed nbt client socket address New nbt port New nsupdate command New ntp signd socket directory New ntvfs handler New paranoid server security Removed pid directory New printer admin Removed rndc command New rpc big endian New samba kcc command New send spnego principal Removed server max protocol New server min protocol New server role New server services New server signing Changed default share backend New share modes Removed smb2 max read Changed default smb2 max write Changed default smb2 max trans Changed default socket address Removed spn update command New time offset Removed tls cafile New tls certfile New tls crlfile New tls dh params file New tls enabled New tls keyfile New unicode New web port New winbindd privileged socket directory New winbind sealed pipes New winbindd socket directory New CHANGES SINCE 4.0.0rc2 ====================== o Jeremy Allison * BUG 8966: Fix 'net rpc share allowedusers' to work with 2008r2. * BUG 9209: Parse of invalid SMB2 create blob can cause smbd crash. * BUG 9214: Bad user supplied SMB2 credit value can cause smbd to call smb_panic. * BUG 9222: Document that signing cannot be disabled for SMB2 by design. o Andrew Bartlett * BUG 9235: Update Samba3-HOWTO Collection. * BUG 9271: samba-tool: Skip chown in sysvolreset when it would fail on a GID. * BUG 9274: Update Samba3-HOWTO Collection. o Björn Baumbach * BUG 9235: Fix opening and ending tag mismatch in Samba3-HOWTO. * BUG 9271: Fix typos in samba_backup. * BUG 9274: Add delete_lost option to vfs_streams_depot.8. o Kai Blin * BUG 9225: Fix return code for deleted DNS records. * BUG 8878: Time out UDP requests after DNS_REQUEST_TIMEOUT seconds. o Günther Deschner * BUG 9177: pam_winbind: Match more return codes when wbcGetPwnam has failed. o David Disseldorp * BUG 9269: Fix 64bit-portability-issue. o Björn Jacke * BUG 5670: Apply some Solaris packaging fixes. * BUG 8107: Fix poll replacement to become a msleep replacement. * BUG 8344: Fix --with(out)-sendfile-support option handling. o Volker Lendecke * BUG 9223: Fix uninitialized variable in the cldap server. * BUG 9268: Make tdb robust against improper CLEAR_IF_FIRST restart. o Stefan Metzmacher * BUG 9271: Several samba-tool fixes. * BUG 9196: Don't take 'state->te' as indication for "was_deferred". o Matthieu Patou * BUG 9240: Remove unused variable in DNS server. * BUG 9252: Preliminary tests for dcpromo in Windows 2012 fails with Samba DC. * BUG 9253: Crackname returns a dns domain name even if there is no cracked SID. * BUG 9255: Getncchanges with exop for repl_obj returns highest_usn. * BUG 9256: Getncchanges with exop for repl_obj_with_secrets should always be allowed for RWDC. * BUG 9257: LDAP server has at least one un-initialized variable. * BUG 9258: LDAP server ignore configuration values set in the database for timeout. * BUG 9259: rodc join fails complaining that it can't find a RWDC. * BUG 9260: kccdrs_replica_get_info returns invalid level when non supported should be returned. * BUG 9261: ds_replica_sync fails when specifying a name and not a guid. * BUG 9264: getncchanges returns invalid_parameters when it should return bad_nc. * BUG 9254: DsExecuteKCC returns wrong error code if taskid != 0. * BUG 9265: Bind dlz fails to start if there is a trustedanchors zone. o Rusty Russell * BUG 9268: Make tdb robust against shrinking tdbs. o Andreas Schneider * BUG 8769: Fix RAW printing for normal users. * BUG 9112: Increase debug level for info that the db is empty. * BUG 9244: Build pam_smbpass module only if enabled. * BUG 9245: Make sure the registry is set up before we init printing. * BUG 9276: Add config for systemd-tmpfiles. * BUG 9280: Add support for reloading systemd services. o Karolin Seeger * BUG 7826: Remove link to Using Samba. * BUG 8802: Add basic manpages for 'samba' and 'samba-tool'. * BUG 9165: Fix makerpms.sh on RHEL. * BUG 9243: Remove duplicate synonym min protocol. * BUG 9271: Several samba-tool fixes. o Jelmer Vernooij * BUG 9243: Add basic documentation for 'server min protocol'. * BUG 9271: Several samba-tool fixes. * BUG 9274: Add documentation for several parameters. o Matthias Dieter Wallnöfer * BUG 9183: Introduce the wildcard binding feature to allow DNS to listen on localhost. CHANGES SINCE 4.0.0rc1 ====================== o Michael Adam * BUG 9173: Make the SMB2 compound request create/delete_on_close/ close work as Windows. o Jeremy Allison * BUG 9161: Re-add the vfs_Chdir() cache. * BUG 9189: SMB2 Create doesn't return correct MAX ACCESS access mask in blob. * BUG 9213: Bad ASN.1 NegTokenInit packet can cause invalid free. o Christian Ambach * BUG 9162: Fix the build of the GPFS VFS module. * BUG 9197: Only do 'printing_subsystem_update' when printing is enabled. o Andrew Bartlett * BUG 9228: Fix build on systems without ldap development headers. o Alexander Bokovoy * BUG 9157: Cleanup idmap_ldap build dependencies. * BUG 9228: Make smbldaphelper subsystem an internal library. * BUG 9229: Fix build of winbindd- and krb5 locator-related manpages. o Sumit Bose * BUG 9185: Allow DNS resolution of trusted domains if DNS name is available. o Ira Cooper * BUG 9162: Fix build on Illumos/Solaris using '--with-acl'. * BUG 9173: Compound requests should continue processing. o Günther Deschner * BUG 9185: Winbind cannot resolve AD DC in a different subnet. o Björn Jacke * BUG 9162: Fix the build of the ACL VFS modules. * BUG 9172: Fix reporting of gfs2 quotas. o Volker Lendecke * BUG 9217: CreateFile with FILE_DIRECTORY_FILE can create directories on read-only shares. o Vladimir Marek * BUG 9192: Fix service control for non-internal services. o Stefan Metzmacher * BUG 9173: Make the SMB2 compound request create/delete_on_close/ close work as Windows. * BUG 9184: Fix receiving of UDP packets from 0 bytes. * BUG 9191: Release the share mode lock before calling exit_server(). * BUG 9193: Fix usage of invalid memory in smb2_signing_check_pdu(). * BUG 9194: Disallow '--prefix=/usr' and '--prefix=/usr/local' without '--enable-fhs'. * BUG 9198: Fix RHEL-CTDB packaging. o Matthieu Patou * BUG 9199: Fix usage of "panic action". * BUG 9233: Fix a non handled memory out of memory. o Andreas Schneider * BUG 8632: Fix builtin forms order to match Windows again. * BUG 9159: Fix generating idmap manpages. * BUG 9218: Don't segfault if user specified ports out for range. * BUG 9231: Fix NT_STATUS_IO_TIMEOUT during slow import of printers into registry. KNOWN ISSUES ============ - 'samba-tool domain classicupgrade' will fail when setting ACLs on the GPO folders with NT_STATUS_INVALID_ONWER in the default configuration. This happens if, as is typical a 'domain admins' group (-512) is mapped in the passdb backend being upgraded. This is because the group mapping to a GID only prevents Samba from allocating a uid for that group. The uid is needed so the 'domain admins' group can own the GPO file objects. To work around this issue, remove the 'domain admins' group before upgrade, as it will be re-created automatically. You will of course need to fill in the group membership again. A future release will make this automatic, or find some other workaround. - This release makes the s3fs file server the default, as this is the file server combination we will use for the Samba 4.0 release. - For similar reasons, sites with ACLs stored by the ntvfs file server may wish to continue to use that file server implementation, as a posix ACL will similarly not be set in this case. - Replication of DNS data from one AD server to another may not work. The DNS data used by the internal DNS server and bind9_dlz is stored in an application partition in our directory. The replication of this partition is not yet reliable. - Replication may fail on FreeBSD due to getaddrinfo() rejecting names containing _. A workaround will be in a future release. - samba_upgradeprovision should not be run when upgrading to this release from a recent release. No important database format changes have been made since alpha16. - Installation on systems without a system iconv (and developer headers at compile time) is known to cause errors when dealing with non-ASCII characters. - Domain member support in the 'samba' binary is in its infancy, and is not comparable to the support found in winbindd. As such, do not use the 'samba' binary (provided for the AD server) on a member server. - There is no NetBIOS browsing support (network neighbourhood) available for the AD domain controller. (Support in nmbd and smbd for classic domains and member/standalone servers is unchanged). - Clock Synchronisation is critical. Many 'wrong password' errors are actually due to Kerberos objecting to a clock skew between client and server. (The NTP work in the previous alphas are partly to assist with this problem). - The DRS replication code may fail. Please contact the team if you experience issues with DRS replication, as we have fixed many issues here in response to feedback from our production users. RUNNING Samba 4.0 as an AD DC ============================= A short guide to setting up Samba 4 as an AD DC can be found on the wiki: http://wiki.samba.org/index.php/Samba4/HOWTO ####################################### 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.0 product in the project's Bugzilla database (https://bugzilla.samba.org/). ====================================================================== == Our Code, Our Bugs, Our Responsibility. == The Samba Team ======================================================================