What's new in Samba 4.0 beta3
=============================

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.


WARNINGS
========

Samba 4.0 beta3 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'.

Samba 4.0 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.  See below how to continue using ntvfs
in an existing installation.

If you are upgrading, or looking to develop, test or deploy Samba 4.0
beta releases, 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'.  Users upgrading
from earlier alpha releases should contact the team for advice. 


NEW FEATURES
============

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 beta2
=====================

For a list of changes since beta2, please see the git log.

$ git clone git://git.samba.org/samba.git
$ cd samba.git
$ git log samba-4.0.0beta2..samba-4.0.0beta3

Some major user-visible changes include:

The failure to start up due to a blocking smbd-fileserver.conf.pid has
been resolved.

Samba now includes support for version 2.1 of the SMB protocol,
the SMB2 version of Windows 7 and 2008R2, including dynamic
reauthentication and support for multi-credit (large MTU).
Consequently, Samba negotiates SMB 2.1 by default: The value "SMB2"
for the configuration parameter "max protocol" has been changed to
be an alias for SMB 2.1. Previously, the default SMB2 version of
Samba was the original version 2.0 of SMB that was shipped with
Windows Vista and 2008.

Samba now offers basic experimental support for SMB3, the next version
of the SMB protocol (formerly known as SMB 2.2) that will be available
with Windows 8 and Windows Server 2012. Negotiation of SMB3 can be
activated by setting "max protocol" to "SMB3" in smb.conf.

Thanks to upgrades to our AD DC code, particularly in schema handling,
Samba can now correctly handle the installation of Microsoft Exchange
2010.  Other issues prevent run-time operation, but this is a major
milestone in supporting one of the single mode demanding Active
Directory applications.

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

- 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.
  Users should still expect some rough edges: in particular, there are
  warnings about invalid parameters from the two respective parameter
  parsing engines.

- 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.

- Replication may fail on FreeBSD due to getaddrinfo() rejecting names
  containing _.  A workaround will be in the next beta.

- 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 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.

- There is no NetBIOS browsing support (network neighbourhood) in the
  'samba' binary (use nmbd and smbd instead)

- 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
======================================================================