build: Reduce build systems to just top level waf and autoconf
[ira/wip.git] / WHATSNEW.txt
index 9c728ba9c3da73ec3aa9a11d920372c868ca5e97..3fac3606a8cd8209db6dc20ad89c7f4d93241567 100644 (file)
-                   =================================
-                   Release Notes for Samba 3.6.0pre1
-                             July 28, 2010
-                   =================================
+What's new in Samba 4 alpha17
+=============================
 
+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 3.6.  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/.
+WARNINGS
+========
 
+Samba4 alpha17 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 both the technology of Samba 3.6
+(that you can reasonably expect to upgrade existing Samba 3.x releases
+to) and the AD domain controller work previously known as 'samba4'.
 
-Major enhancements in Samba 3.6.0 include:
+While binaries for the stable file server are provided in this
+release, for a stable, supported file server, Samba3 domain or AD
+domain member installation, please run a Samba 3.x release, as we are
+still bedding down the new single build system.
 
+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 alpha at this stage.
 
-Changed security defaults
--------------------------
+If you are upgrading, or looking to develop, test or deploy Samba 4.0
+alpha releases, you should backup all configuration and data.
 
-Samba 3.6 has adopted a number of improved security defaults that will
-impact on existing users of Samba.
+NEW FEATURES
+============
 
- client ntlmv2 auth = yes
- client use spnego principal = no
- send spnego principal = no
+Samba 4.0 alpha 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.
 
-The impact of 'client ntlmv2 auth = yes' is that by default we will not
-use NTLM authentication as a client.  This applies to the Samba client
-tools such as smbclient and winbind, but does not change the separately
-released in-kernel CIFS client.  To re-enable the poorer NTLM encryption
-set '--option=clientusentlmv2auth=no' on your smbclient command line, or
-set 'client ntlmv2 auth = no' in your smb.conf
+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.
 
-The impact of 'client use spnego principal = no' is that we may be able
-to use Kerberos to communicate with a server less often in smbclient,
-winbind and other Samba client tools.  We may fall back to NTLMSSP in
-more situations where we would previously rely on the insecure
-indication from the 'NegProt' CIFS packet.  This mostly occursed when
-connecting to a name alias not recorded as a servicePrincipalName for
-the server.  This indication is not available from Windows 2008 or later
-in any case, and is not used by modern Windows clients, so this makes
-Samba's behaviour consistent with other clients and against all servers.
+Samba 4.0 alpha ships with two distinct file servers.  The file server
+from the Samba 3.x series is 'smbd', and works with the binaries users
+would expect from that series (nmbd, winbindd, smbpasswd).
 
-The impact of 'send spnego principal = no' is to match Windows 2008 and
-not to send this principal, making existing clients give more consistent
-behaviour (more likely to fall back to NTLMSSP) between Samba and
-Windows 2008, and between Windows versions that did and no longer use
-this insecure hint.
+Samba 4.0 also ships with a new file server, which is tuned to match
+the requirements of an AD domain controller.  Users should not use the
+file server in the 'samba' binary for non-DC related tasks.
 
+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.
 
-SMB2 support
-------------
 
-SMB2 support in 3.6.0 is fully functional (with one omission),
-and can be enabled by setting:
+CHANGES SINCE alpha16
+=====================
 
-max protocol = SMB2
+For a list of changes since alpha 15, please see the git log.
 
-in the [global] section of your smb.conf and re-starting
-Samba. All features should work over SMB2 except the modification
-of user quotas using the Windows quota management tools.
+$ git clone git://git.samba.org/samba.git
+$ cd samba.git
+$ git log release-4-0-0alpha16..release-4-0-0alpha17
 
-As this is the first release containing what we consider
-to be a fully featured SMB2 protocol, we are not enabling
-this by default, but encourage users to enable SMB2 and
-test it. Once we have enough confirmation from Samba
-users and OEMs that SMB2 support is stable in wide user
-testing we will enable SMB2 by default in a future Samba
-release.
+Some major user-visible changes include:
 
+samba-tool dbcheck
+------------------
+
+We now have an fsck-like tool for Samba's internal sam.ldb database.
+Run samba-tool dbcheck after installation to check your database for
+self-consistency.  Any database created with a previous Samba4 alpha
+will have a very large number of consistency errors, which this tool
+can fix.
+
+See also the -H option to point dbcheck at a different database to the
+default, and the --fix and --yes options to make changes and to not
+prompt about those changes. 
+
+After upgrading Samba, it is suggested that you do the following:
+
+  - stop samba
+  - take a backup copy of your sam.ldb and sam.ldb.d/* database files
+  - run samba-tool dbcheck --cross-ncs --fix
+  - use 'all' to say yes to fixing each type of error found
+  - after it has finished, run dbcheck again to ensure it reports no
+    errors
+
+There will be a lot of errors fixed, particularly related to
+bad/missing GUID values. This is due to a bug in previous releases
+that left many objects with bad GUID values. These can all be fixed
+using dbcheck with steps above.
+
+
+New default paths
+-----------------
 
-Internal Winbind passdb changes
+The configure options for paths have changed again, and the
+--enable-fhs option has been reinstated.  Packagers should attempt to
+first package Samba using:
+
+./configure --enable-fhs --prefix=/usr --sysconfdir=/etc --localstatedir=/var
+
+and only after examining the location Samba uses with these options
+should further changes be made.  Existing packaging scripts are not
+expected to work unmodified, instead the Samba Team's aim is to
+simplify such scripts for the long term. 
+
+samba-tool domain samba3upgrade
 -------------------------------
 
-Winbind has been changed to use the internal samr and lsa rpc pipe to get
-local user and group information instead of calling passdb functions. The
-reason is to use more of our infrastructure and test this infrastructure by
-using it. With this approach more code in Winbind is shared.
+The new samba-tool domain samba3upgrade command is a supported upgrade route from Samba
+3.x domain controllers to Samba 4.0 AD domain controllers.  This
+provides a one-time migration of all users, domain members, passwords,
+groups, group members and account polcies. 
 
+This tool is still under development and may fail when presented with
+an inconsistant Samba3 database (such as many LDAP configurations).
+We hope to improve the error handling and recovery in these
+situations, so please provide feedback using the samba-technical
+mailing list.
 
-New Spoolss code
-----------------
+KNOWN ISSUES
+============
 
-The spoolss and the old RAP printing code have been completely
-overhauled and refactored.
+- Installation on systems without a system iconv (and developer
+  headers at compile time) is known to cause errors when dealing with
+  non-ASCII characters.
 
-All calls from lanman/printing code has been changed to go through the
-spoolss RPC interfaces, this allows us to keep all checks in one place
-and avoid special cases in the main printing code.
-Printing code has been therefore confined within the spoolss code.
+- In some situations, group members may not be upgraded by the
+  samba-tool domain upgrade_from_s3 script
 
-All the printing code, including the spoolss RPC interfaces has been
-changed to use the winreg RPC interfaces to store all data.
-All data has been migrated from custom, arbitrary TDB files to the
-registry interface. This transition allow us to present correct data to
-windows client accessing the server registry through the winreg RPC
-interfaces to query for printer data. Data is served out from a real
-registry implementation and therefore arguably 100% forward compatible.
+- The samba-tool domain join script will not join Windows 2000 domains.
 
-Migration code from the previous TDB files formats is provided. This
-code is automatically invoked the first time the new code is run on the
-server. Although manual migration is also available using the 'net
-printer migrate' command.
+- 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.
 
-These changes not only make all the spoolss code much more closer to
-"the spec", it also greatly improves our internal testing of both
-spoolss and winreg interfaces, and reduces overall code duplication.
+- There is no printing support in the 'samba' binary (use smbd instead)
 
-As part of this work, new tests have been also added to increase
-coverage.
+- There is no NetBIOS browsing support (network neighbourhood) in the
+  'samba' binary (use nmbd and smbd instead)
 
-This code will also allow, in future, an easy transition to split out
-the spooling functions into a separate daemon for those OEMs that do not
-need printing functionality in their appliances, reducing the code
-footprint.
+- 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. 
 
-ID Mapping Changes
-------------------
+RUNNING Samba 4.0 as an AD DC
+=============================
 
-The id mapping configuration has been a source of much grief in the past.
-For this release, id mapping has ben rewritten yet again with the goal
-of making the configuration more simple and more coherent while keeping
-the needed flexibility and even adding to the flexibility in some respects.
-
-The major change that implies the configuration simplifications is at
-the heart of the id mapping system: The separation of the "idmap alloc
-system" that is responsible for the unix id counters in the tdb, tdb2
-and ldap idmap backends from the id mapping code itself has been removed.
-The sids_to_unixids operation is now atomic and encapsulates (if needed)
-the action of allocating a unix id for a mapping that is to be created.
-Consequently all idmap alloc configuration parameters have vanished and
-it is hence now also not possible any more to specify an idmap alloc
-backend different from the idmap backend. Each idmap backend uses its
-own idmap unixid creation mechanism transparently.
-
-As a consequence of the id mapping changes, the methods that are used
-for storing and deleting id mappings have been removed from the winbindd
-API. The "net idmap dump/restore" commands have been rewritten to
-not speak through winbindd any more but directly act on the databases.
-This is currently available for the tdb and tdb2 backends, the implementation
-for ldap still missing.
-
-The allocate_id functionality is preserved for the unix id creator of the
-default idmap configuration is also used as the source of unix ids
-for the group mapping database and for the posix attributes in a
-ldapsam:editposix setup.
-
-As part of the changes, the default idmap configuration has been
-changed to be more coherent with the per-domain configuration.
-The parameters "idmap uid", "idmap gid" and "idmap range" are now
-deprecated in favour of the systematic "idmap config * : range"
-and "idmap config * : backend" parameters. The reason for this change
-is that the old options only provided an incomplete and hence deceiving
-backwards compatibility, which was a source of many problems with
-updgrades. By introducing this change in configuration, it should be
-brought to the conciousness of the users that even the simple
-id mapping is not working exactly as in Samba 3.0 versions any more.
-
-
-SMB Traffic Analyzer
---------------------
-
-Added the new SMB Traffic Analyzer (SMBTA) VFS module protocol 2
-featuring encryption, multiple arguments, and easier parseability. A new
-tool 'smbta-util' has been created to control the encryption behaviour
-of SMBTA. For compatibility, SMBTA by default operates on version 1.
-There are programs consuming the data that the module sends.
-
-More information can be found on
-http://holger123.wordpress.com/smb-traffic-analyzer/
-
-
-NFS quota backend on Linux
---------------------------
-
-A new nfs quota backend for Linux has been added that is based
-on the existing Solaris/FreeBSD implementation. This allows samba
-to communicate correct diskfree information for nfs imports that
-are re-exported as samba shares.
-
-
-######################################################################
-Changes
-#######
-
-smb.conf changes
-----------------
-
-   Parameter Name                      Description     Default
-   --------------                      -----------     -------
-
-   async smb echo handler             New             No
-   client ntlmv2 auth                 Changed Default Yes
-   client use spnego principal        New             No
-   ctdb locktime warn threshold               New             0
-   idmap alloc backend                Removed
-   log writeable files on exit        New             No
-   multicast dns register             New             Yes
-   ncalrpc dir                        New
-   send spnego principal              New             No
-   smb2 max credits                   New             128
-   smb2 max read                      New             1048576
-   smb2 max trans                     New             1048576
-   smb2 max write                     New             1048576
-   username map cache time            New             0
-   winbind max clients                New             200
-
-
-######################################################################
+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
 #######################################
 
@@ -216,7 +170,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 3.6 product in the project's Bugzilla
+be filed under the Samba 4.0 product in the project's Bugzilla
 database (https://bugzilla.samba.org/).