s3:smbd: Set up local and remote address for fake connection
[samba.git] / WHATSNEW.txt
index cb35f08c7a287d0d091f80e62ce1d3e571b64fe3..f8c65b23e310b2514387c0403c9cfc1effe82e90 100644 (file)
-What's new in Samba 4 beta1
-=============================
+Release Announcements
+=====================
 
-Samba 4.0 will be the next version of the Samba suite and incorporates
-all the technology found in both the Samba4 alpha 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 is the first preview release of Samba 4.7.  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.7 will be the next version of the Samba suite.
 
-WARNINGS
-========
 
-Samba4 beta1 is not a final Samba release, however we are now making
-good progress towards a Samba 4.0 release, of which this is a preview.
-Be aware the 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'.
+UPGRADING
+=========
 
-Samba4 is subjected to an awesome battery of tests on an automated
-basis, we have found Samba 4.0 to be very stable in it's behavior.
-However, we still recommend against upgrading production servers from
-Samba 3.x release to Samba 4.0 beta at this stage.
 
-In particular note that the new default configuration 's3fs' may have
-different stability characteristics compared with our previous default
-file server.  We are making this release so that we can find and fix
-any of these issues that arise in the real world.  New AD DC
-installations can provision or join with --use-ntvfs to obtain the
-previous default file server.  Existing installations will be
-unaffected at this stage.
+NEW FEATURES/CHANGES
+====================
 
-If you are upgrading, or looking to develop, test or deploy Samba 4.0
-beta releases, you should backup all configuration and data.
+Samba AD with MIT Kerberos
+--------------------------
 
+After four years of development, Samba finally supports compiling and
+running Samba AD with MIT Kerberos. You can enable it with:
 
-NEW FEATURES
-============
+    ./configure --with-system-mitkrb5
 
-Samba 4.0 beta 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 beta 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.  For pure file server work, the binaries users would expect
-from that series (nmbd, winbindd, smbpasswd) continue to be available.
-
-Samba 4.0 also ships with the 'NTVFS' file server.  This file server
-is what was used in all previous alpha 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.  
-
-As mentioned above, this change to the default file server may cause
-instability, as we learn about the real-world interactions between
-these two key components. 
-
-As DNS is an integral part of Active Directory, we also provide a DNS
-solution, using the BIND DLZ mechanism in versions 9.8 and 9.9.
-During the provision, a configuration file will be generated for bind
-to make it use this plugin.  We also have a project to provide a
-minimal internal DNS server from within the Samba process, for easier
-'out of the box' configuration.  Note however that this is not yet
-complete (pending addition of secure DNS update support).
-
-To provide accurate timestamps to Windows clients, we integrate with
-the NTP project to provide secured NTP replies. 
-
-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 SINCE alpha21
-=====================
+Samba requires version 1.15.1 of MIT Kerberos to build with AD DC support.
+The krb5-devel and krb5-server packages are required.
+The feature set is not on par with with the Heimdal build but the most important
+things, like forest and external trusts, are working. Samba uses the KDC binary
+provided by MIT Kerberos.
 
-For a list of changes since alpha21, please see the git log.
+Missing features, compared to Heimdal, are:
+  * PKINIT support
+  * S4U2SELF/S4U2PROXY support
+  * RODC support (not fully working with Heimdal either)
 
-$ git clone git://git.samba.org/samba.git
-$ cd samba.git
-$ git log samba-4.0.0alpha21..samba-4.0.0beta1
+The Samba AD process will take care of starting the MIT KDC and it will load a
+KDB (Kerberos Database) driver to access the Samba AD database.  When
+provisioning an AD DC using 'samba-tool' it will take care of creating a correct
+kdc.conf file for the MIT KDC. Note that 'samba-tool' will overwrite the system
+kdc.conf by default. It is possible to use a different location during
+provision. You should consult the 'samba-tool' help and smb.conf manpage for
+details.
 
-Some major user-visible changes include:
 
-The internal DNS server has had some stability improvements, and
-now handles forwarded DNS replies in an async manner.
+Authentication and Authorization audit support
+----------------------------------------------
 
-The build of libtdb.so and libtalloc.so has been removed from the
-autoconf build.  Use the build in lib/talloc and lib/tdb to build
-this software for use across the system.
+Detailed authentication and authorization audit information is now
+logged to Samba's debug logs under the "auth_audit" debug class,
+including in particular the client IP address triggering the audit
+line.  Additionally, if Samba is compiled against the jansson JSON
+library, a JSON representation is logged under the "auth_json_audit"
+debug class.
 
-The smbclient and nmblookup binaries have been renamed in the top
-level build, so smbclient/nmblookup are now the implementations from
-the Samba 3.x heritage.
+Audit support is comprehensive for all authentication and
+authorisation of user accounts in the Samba Active Directory Domain
+Controller, as well as the implicit authentication in password
+changes.  In the file server and classic/NT4 domain controller, NTLM
+authentication, SMB and RPC authorization is covered, however password
+changes are not at this stage, and this support is not currently
+backed by a testsuite.
 
-Improved handling of the cleanup of smbd child processes (removing a
-number of scary warnings from our log output).
 
-Much improved support for FreeBSD, including extended attribute
-support on the filesystem for the AD DC.
+Query record for open file or directory
+---------------------------------------
 
+The record attached to an open file or directory in Samba can be
+queried through the 'net tdb locking' command. In clustered Samba this
+can be useful to determine the file or directory triggering
+corresponding "hot" record warnings in ctdb.
 
-KNOWN ISSUES
-============
 
-- We are making this beta release to gain real-world use of the 's3fs'
-  file server combination we will use for the Samba 4.0 release.
-  Users should expect some rough edges: in particular, there are
-  warnings about invalid parameters from the two respective parameter
-  parsing engines.
+Parameter changes
+-----------------
 
-- 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 replicaton of
-  this partition is not yet reliable.
+The "strict sync" global parameter has been changed from
+a default of "no" to "yes". This means smbd will by default
+obey client requests to synchronize unwritten data in operating
+system buffers safely onto disk. This is a safer default setting
+for modern SMB1/2/3 clients.
 
-- Replication may fail on FreeBSD due to getaddrinfo() rejecting names
-  containing _.  A workaround will be in the next beta.
+smb.conf changes
+================
 
-- upgradeprovision should not be run when upgrading to this release
-  from a recent release.  No important database format changes have
-  been made since alpha16.  
+  Parameter Name                Description             Default
+  --------------                -----------             -------
+  auth event notification       New parameter           no
+  auth methods                  Deprecated
+  map untrusted to domain       Deprecated
+  strict sync                   Default changed         yes
 
-- Installation on systems without a system iconv (and developer
-  headers at compile time) is known to cause errors when dealing with
-  non-ASCII characters.
+Removal of lpcfg_register_defaults_hook()
+-----------------------------------------
 
-- Domain member support in the 'samba' binary is in it's 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.
+The undocumented and unsupported function lpcfg_register_defaults_hook()
+that was used by external projects to call into Samba and modify
+smb.conf default parameter settings has been removed. If your project
+was using this call please raise the issue on
+samba-technical@lists.samba.org in order to design a supported
+way of obtaining the same functionality.
 
-- There is no NetBIOS browsing support (network neighbourhood) in the
-  'samba' binary (use nmbd and smbd instead)
+Change of loadable module interface
+-----------------------------------
 
-- 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 _init function of all loadable modules in Samba has changed
+from:
 
-- 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. 
+NTSTATUS _init(void);
 
+to:
 
-RUNNING Samba 4.0 as an AD DC
-=============================
+NTSTATUS _init(TALLOC_CTX *);
+
+This allows a program loading a module to pass in a long-lived
+talloc context (which must be guaranteed to be alive for the
+lifetime of the module). This allows modules to avoid use of
+the talloc_autofree_context() (which is inherently thread-unsafe)
+and still be valgrind-clean on exit. Modules that don't need to
+free long-lived data on exist should use the NULL talloc context.
+
+KNOWN ISSUES
+============
 
-A short guide to setting up Samba 4 as an AD DC can be found on the wiki:
+https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.7#Release_blocking_bugs
 
-  http://wiki.samba.org/index.php/Samba4/HOWTO
 
 #######################################
 Reporting bugs & Development Discussion
@@ -170,7 +136,7 @@ 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
+be filed under the Samba 4.1 and newer product in the project's Bugzilla
 database (https://bugzilla.samba.org/).