mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
WHATSNEW: Start release notes for Samba 4.10.
Signed-off-by: Karolin Seeger <kseeger@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
This commit is contained in:
parent
37d056f4d3
commit
710ce1c39a
414
WHATSNEW.txt
414
WHATSNEW.txt
@ -1,12 +1,12 @@
|
||||
Release Announcements
|
||||
=====================
|
||||
|
||||
This is the first release candidate of Samba 4.9. This is *not*
|
||||
This is the first preview release of Samba 4.10. 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.9 will be the next version of the Samba suite.
|
||||
Samba 4.10 will be the next version of the Samba suite.
|
||||
|
||||
|
||||
UPGRADING
|
||||
@ -17,429 +17,21 @@ NEW FEATURES/CHANGES
|
||||
====================
|
||||
|
||||
|
||||
net ads setspn
|
||||
---------------
|
||||
|
||||
There is a new 'net ads setspn' sub command for managing Windows SPN(s)
|
||||
on the AD. This command aims to give the basic functionality that is
|
||||
provided on windows by 'setspn.exe' e.g. ability to add, delete and list
|
||||
Windows SPN(s) stored in a Windows AD Computer object.
|
||||
|
||||
The format of the command is:
|
||||
|
||||
net ads setspn list [machine]
|
||||
net ads setspn [add | delete ] SPN [machine]
|
||||
|
||||
'machine' is the name of the computer account on the AD that is to be managed.
|
||||
If 'machine' is not specified the name of the 'client' running the command
|
||||
is used instead.
|
||||
|
||||
The format of a Windows SPN is
|
||||
'serviceclass/host:port/servicename' (servicename and port are optional)
|
||||
|
||||
serviceclass/host is generally sufficient to specify a host based service.
|
||||
|
||||
net ads keytab changes
|
||||
----------------------
|
||||
net ads keytab add no longer attempts to convert the passed serviceclass
|
||||
(e.g. nfs, html etc.) into a Windows SPN which is added to the Windows AD
|
||||
computer object. By default just the keytab file is modified.
|
||||
|
||||
A new keytab subcommand 'add_update_ads' has been added to preserve the
|
||||
legacy behaviour. However the new 'net ads setspn add' subcommand should
|
||||
really be used instead.
|
||||
|
||||
net ads keytab create no longer tries to generate SPN(s) from existing
|
||||
entries in a keytab file. If it is required to add Windows SPN(s) then
|
||||
'net ads setspn add' should be used instead.
|
||||
|
||||
Local authorization plugin for MIT Kerberos
|
||||
-------------------------------------------
|
||||
|
||||
This plugin controls the relationship between Kerberos principals and AD
|
||||
accounts through winbind. The module receives the Kerberos principal and the
|
||||
local account name as inputs and can then check if they match. This can resolve
|
||||
issues with canonicalized names returned by Kerberos within AD. If the user
|
||||
tries to log in as 'alice', but the samAccountName is set to ALICE (uppercase),
|
||||
Kerberos would return ALICE as the username. Kerberos would not be able to map
|
||||
'alice' to 'ALICE' in this case and auth would fail. With this plugin account
|
||||
names can be correctly mapped. This only applies to GSSAPI authentication,
|
||||
not for the getting the initial ticket granting ticket.
|
||||
|
||||
VFS audit modules
|
||||
-----------------
|
||||
|
||||
The vfs_full_audit module has changed it's default set of monitored successful
|
||||
and failed operations from "all" to "none". That helps to prevent potential
|
||||
denial of service caused by simple addition of the module to the VFS objects.
|
||||
|
||||
Also, modules vfs_audit, vfs_ext_audit and vfs_full_audit now accept any valid
|
||||
syslog(3) facility, in accordance with the manual page.
|
||||
|
||||
Database audit support
|
||||
----------------------
|
||||
|
||||
Changes to the Samba AD's sam.ldb database are now logged to Samba's debug log
|
||||
under the "dsdb_audit" debug class and "dsdb_json_audit" for JSON formatted log
|
||||
entries.
|
||||
|
||||
Transaction commits and roll backs are now logged to Samba's debug logs under
|
||||
the "dsdb_transaction_audit" debug class and "dsdb_transaction_json_audit" for
|
||||
JSON formatted log entries.
|
||||
|
||||
Password change audit support
|
||||
-----------------------------
|
||||
|
||||
Password changes in the AD DC are now logged to Samba's debug logs under the
|
||||
"dsdb_password_audit" debug class and "dsdb_password_json_audit" for JSON
|
||||
formatted log entries.
|
||||
|
||||
Group membership change audit support
|
||||
-------------------------------------
|
||||
|
||||
Group membership changes on the AD DC are now logged to
|
||||
Samba's debug log under the "dsdb_group_audit" debug class and
|
||||
"dsdb_group_json_audit" for JSON formatted log entries.
|
||||
|
||||
Log Authentication duration
|
||||
---------------------------
|
||||
|
||||
For NTLM and Kerberos KDC authentication, the authentication duration is now
|
||||
logged. Note that the duration is only included in the JSON formatted log
|
||||
entries.
|
||||
|
||||
JSON library Jansson required for the AD DC
|
||||
-------------------------------------------
|
||||
|
||||
By default the Jansson JSON library is required for Samba to build.
|
||||
It is strictly required for the Samba AD DC, and is optional for
|
||||
builds --without-ad-dc by specifying --without-json-audit at configure
|
||||
time.
|
||||
|
||||
New Experimental LMDB LDB backend
|
||||
---------------------------------
|
||||
|
||||
A new experimental LDB backend using LMDB is now available. This allows
|
||||
databases larger than 4Gb (Currently the limit is set to 6Gb, but this will be
|
||||
increased in a future release). To enable lmdb, provision or join a domain using
|
||||
the --backend-store=mdb option.
|
||||
|
||||
This requires that a version of lmdb greater than 0.9.16 is installed and that
|
||||
samba has not been built with the --without-ldb-lmdb option.
|
||||
|
||||
Please note this is an experimental feature and is not recommended for
|
||||
production deployments.
|
||||
|
||||
Password Settings Objects
|
||||
-------------------------
|
||||
Support has been added for Password Settings Objects (PSOs). This AD feature is
|
||||
also known as Fine-Grained Password Policies (FGPP).
|
||||
|
||||
PSOs allow AD administrators to override the domain password policy settings
|
||||
for specific users, or groups of users. For example, PSOs can force certain
|
||||
users to have longer password lengths, or relax the complexity constraints for
|
||||
other users, and so on. PSOs can be applied to groups or to individual users.
|
||||
When multiple PSOs apply to the same user, essentially the PSO with the best
|
||||
precedence takes effect.
|
||||
|
||||
PSOs can be configured and applied to users/groups using the 'samba-tool domain
|
||||
passwordsettings pso' set of commands.
|
||||
|
||||
Domain backup and restore
|
||||
-------------------------
|
||||
A new samba-tool command has been added that allows administrators to create a
|
||||
backup-file of their domain DB. In the event of a catastrophic failure of the
|
||||
domain, this backup-file can be used to restore Samba services.
|
||||
|
||||
The new 'samba-tool domain backup online' command takes a snapshot of the
|
||||
domain DB from a given DC. In the event of a catastrophic DB failure, all DCs
|
||||
in the domain should be taken offline, and the backup-file can then be used to
|
||||
recreate a fresh new DC, using the 'samba-tool domain backup restore' command.
|
||||
Once the backed-up domain DB has been restored on the new DC, other DCs can
|
||||
then subsequently be joined to the new DC, in order to repopulate the Samba
|
||||
network.
|
||||
|
||||
Domain rename tool
|
||||
------------------
|
||||
Basic support has been added for renaming a Samba domain. The rename feature is
|
||||
designed for the following cases:
|
||||
1). Running a temporary alternate domain, in the event of a catastrophic
|
||||
failure of the regular domain. Using a completely different domain name and
|
||||
realm means that the original domain and the renamed domain can both run at the
|
||||
same time, without interfering with each other. This is an advantage over
|
||||
creating a regular 'online' backup - it means the renamed/alternate domain can
|
||||
provide core Samba network services, while trouble-shooting the fault on the
|
||||
original domain can be done in parallel.
|
||||
2). Creating a realistic lab domain or pre-production domain for testing.
|
||||
|
||||
Note that the renamed tool is currently not intended to support a long-term
|
||||
rename of the production domain. Currently renaming the GPOs is not supported
|
||||
and would need to be done manually.
|
||||
|
||||
The domain rename is done in two steps: first, the 'samba-tool domain backup
|
||||
rename' command will clone the domain DB, renaming it in the process, and
|
||||
producing a backup-file. Then, the 'samba-tool domain backup restore' command
|
||||
takes the backup-file and restores the renamed DB to disk on a fresh DC.
|
||||
|
||||
New samba-tool options for diagnosing DRS replication issues
|
||||
------------------------------------------------------------
|
||||
|
||||
The 'samba-tool drs showrepl' command has two new options controlling
|
||||
the output. With --summary, the command says very little when DRS
|
||||
replication is working well. With --json, JSON is produced. These
|
||||
options are intended for human and machine audiences, respectively.
|
||||
|
||||
The 'samba-tool visualize uptodateness' visualizes replication lag as
|
||||
a heat-map matrix based on the DRS uptodateness vectors. This will
|
||||
show you if (but not why) changes are failing to replicate to some DCs.
|
||||
|
||||
Automatic site coverage and GetDCName improvements
|
||||
--------------------------------------------------
|
||||
|
||||
Samba's AD DC now automatically claims otherwise empty sites based on
|
||||
which DC is the nearest in the replication topology.
|
||||
|
||||
This, combined with efforts to correctly identify the client side in
|
||||
the GetDCName Netlogon call will improve service to sites without a
|
||||
local DC.
|
||||
|
||||
Improved samba-tool computer command
|
||||
------------------------------------
|
||||
|
||||
The 'samba-tool computer' command allow manipulation of computer
|
||||
accounts including creating a new computer and resetting the password.
|
||||
This allows an 'offline join' of a member server or workstation to the
|
||||
Samba AD domain.
|
||||
|
||||
Samba performance tool now operates against Microsoft Windows AD
|
||||
----------------------------------------------------------------
|
||||
|
||||
The Samba AD performance testing tool traffic_reply can now operate
|
||||
against a Windows based AD domain. Previously it only operated
|
||||
correctly against Samba.
|
||||
|
||||
DNS entries are now cleaned up during DC demote
|
||||
-----------------------------------------------
|
||||
|
||||
DNS records are now cleaned up as part of the 'samba-tool domain
|
||||
demote' including both the default and --remove-other-dead-server
|
||||
modes.
|
||||
|
||||
Additionally DNS records can be automatically cleaned up for a given
|
||||
name with the 'samba-tool dns cleanup' command, which aids in cleaning
|
||||
up partially removed DCs.
|
||||
|
||||
samba-tool ntacl sysvolreset is now much faster
|
||||
-----------------------------------------------
|
||||
|
||||
The 'samba-tool ntacl sysvolreset' command, used on the Samba AD DC,
|
||||
is now much faster than in previous versions, after an internal
|
||||
rework.
|
||||
|
||||
Samba now tested with CI GitLab
|
||||
-------------------------------
|
||||
|
||||
Samba developers now have pre-commit testing available in GitLab,
|
||||
giving reviewers confidence that the submitted patches pass a full CI
|
||||
before being submitted to the Samba Team's own autobuild system.
|
||||
|
||||
Dynamic DNS record scavenging support
|
||||
-------------------------------------
|
||||
|
||||
It is now possible to enable scavenging of DNS Zones to remove DNS
|
||||
records that were dynamically created and have not been touched in
|
||||
some time.
|
||||
|
||||
This support should however only be enabled on new zones or new
|
||||
installations. Sadly old Samba versions suffer from BUG 12451 and
|
||||
mark dynamic DNS records as static and static records as dynamic.
|
||||
While a dbcheck rule may be able to find these in the future,
|
||||
currently a reliable test has not been devised.
|
||||
|
||||
Finally, there is not currently a command-line tool to enable this
|
||||
feature, currently it should be enabled from the DNS Manager tool from
|
||||
Windows. Also the feature needs to have been enabled by setting the smb.conf
|
||||
parameter "dns zone scavenging = yes".
|
||||
|
||||
CTDB changes
|
||||
------------
|
||||
|
||||
There are many changes to CTDB in this release.
|
||||
|
||||
* Configuration has been completely overhauled
|
||||
|
||||
- Daemon and tool options are now specified in a new ctdb.conf
|
||||
Samba-style configuration file. See ctdb.conf(5) for details.
|
||||
|
||||
- Event script configuration is no longer specified in the top-level
|
||||
configuration file. It can now be specified per event script.
|
||||
For example, configuration options for the 50.samba event script
|
||||
can be placed alongside the event script in a file called
|
||||
50.samba.options. Script options can also be specified in a new
|
||||
script.options file. See ctdb-script.options(5) for details.
|
||||
|
||||
- Options that affect CTDB startup should be configured in the
|
||||
distribution-specific configuration file. See ctdb.sysconfig(5)
|
||||
for details.
|
||||
|
||||
- Tunable settings are now loaded from ctdb.tunables. Using
|
||||
CTDB_SET_TunableVariable=<value> in the main configuration file is
|
||||
no longer supported. See ctdb-tunables(7) for details.
|
||||
|
||||
A script to convert an old-style configuration to a new one will be
|
||||
available for release but is not yet available.
|
||||
|
||||
* The following configuration variables and corresponding ctdbd
|
||||
command-line options have been removed and not replaced with
|
||||
counterparts in the new configuration scheme:
|
||||
|
||||
CTDB_PIDFILE --pidfile
|
||||
CTDB_SOCKET --socket
|
||||
CTDB_NODES --nlist
|
||||
CTDB_PUBLIC_ADDRESSES --public-addresses
|
||||
CTDB_EVENT_SCRIPT_DIR --event-script-dir
|
||||
CTDB_NOTIFY_SCRIPT --notification-script
|
||||
CTDB_PUBLIC_INTERFACE --public-interface
|
||||
CTDB_MAX_PERSISTENT_CHECK_ERRORS --max-persistent-check-errors
|
||||
|
||||
- The compile-time defaults should be used for the first 6 of these.
|
||||
- Use a symbolic link from the configuration directory to specify a
|
||||
different location for nodes or public_addresses (e.g. in the
|
||||
cluster filesystem).
|
||||
- Executable notification scripts in the notify.d/ subdirectory of
|
||||
the configuration directory are now run by unconditionally.
|
||||
- Interfaces for public IP addresses must always be specified in the
|
||||
public_addresses file using the currently supported format.
|
||||
|
||||
Some related items that have been removed are:
|
||||
|
||||
- The ctdb command's --socket command-line option
|
||||
- The ctdb command's CTDB_NODES environment variable
|
||||
|
||||
When writing tests there are still mechanisms available to change
|
||||
the locations of certain directories and files.
|
||||
|
||||
* Event scripts have moved to the scripts/legacy subdirectory of the
|
||||
configuration directory
|
||||
|
||||
Event scripts must now end with a ".script" suffix.
|
||||
|
||||
* The following service-related event script options have been
|
||||
removed:
|
||||
|
||||
CTDB_MANAGES_SAMBA
|
||||
CTDB_MANAGES_WINBIND
|
||||
|
||||
CTDB_MANAGES_CLAMD
|
||||
CTDB_MANAGES_HTTPD
|
||||
CTDB_MANAGES_ISCSI
|
||||
CTDB_MANAGES_NFS
|
||||
CTDB_MANAGES_VSFTPD
|
||||
|
||||
CTDB_MANAGED_SERVICES
|
||||
|
||||
Event scripts for services are now disabled by default. To enable
|
||||
an event script and, therefore, manage a service use a command like
|
||||
the following:
|
||||
|
||||
ctdb event script enable legacy 50.samba
|
||||
|
||||
* Notification scripts have moved to the scripts/notification
|
||||
subdirectory of the configuration directory
|
||||
|
||||
Notification scripts must now end with a ".script" suffix.
|
||||
|
||||
* Support for setting CTDB_DBDIR=tmpfs has been removed
|
||||
|
||||
This feature has not been implemented in the new configuration
|
||||
system. If this is desired then a tmpfs filesystem should be
|
||||
manually mounted on the directory pointed to by the "volatile
|
||||
database directory" option. See ctdb.conf(5) for more details.
|
||||
|
||||
* Support for the NoIPHostOnAllDisabled tunable has been removed
|
||||
|
||||
If all nodes are unhealthy or disabled then CTDB will not host
|
||||
public IP addresses. That is, CTDB now behaves as if
|
||||
NoIPHostOnAllDisabled were set to 1.
|
||||
|
||||
* The onnode command's CTDB_NODES_FILE environment variable has been
|
||||
removed
|
||||
|
||||
The -f option can still be used to specify an alternate node file.
|
||||
|
||||
* The 10.external event script has been removed
|
||||
|
||||
* The CTDB_SHUTDOWN_TIMEOUT configuration variable has been removed
|
||||
|
||||
As with other daemons, if ctdbd does not shut down when requested
|
||||
then manual intervention is required. There is no safe way of
|
||||
automatically killing ctdbd after a failed shutdown.
|
||||
|
||||
* CTDB_SUPPRESS_COREFILE and CTDB_MAX_OPEN_FILES configuration
|
||||
variable have been removed
|
||||
|
||||
These should be setup in the systemd unit/system file or, for SYSV
|
||||
init, in the distribution-specific configuration file for the ctdb
|
||||
service.
|
||||
|
||||
* CTDB_PARTIALLY_ONLINE_INTERFACES incompatibility no longer enforced
|
||||
|
||||
11.natgw and 91.lvs will no longer fail if
|
||||
CTDB_PARTIALLY_ONLINE_INTERFACES=yes. The incompatibility is,
|
||||
however, well documented. This option will be removed in future and
|
||||
replaced by sensible behaviour where public IP addresses simply
|
||||
switch interfaces or become unavailable when interfaces are down.
|
||||
|
||||
* Configuration file /etc/ctdb/sysconfig/ctdb is no longer supported
|
||||
|
||||
GPO Improvements
|
||||
----------------
|
||||
|
||||
The samba_gpoupdate command (used in applying Group Policies to the
|
||||
samba machine itself) has been renamed to samba_gpupdate and had the
|
||||
syntax changed to better match the same tool on Windows.
|
||||
|
||||
|
||||
REMOVED FEATURES
|
||||
================
|
||||
|
||||
|
||||
|
||||
smb.conf changes
|
||||
================
|
||||
|
||||
As the most popular Samba install platforms (Linux and FreeBSD) both
|
||||
support extended attributes by default, the parameters "map readonly",
|
||||
"store dos attributes" and "ea support" have had their defaults changed
|
||||
to allow better Windows fileserver compatibility in a default install.
|
||||
|
||||
Parameter Name Description Default
|
||||
-------------- ----------- -------
|
||||
map readonly Default changed no
|
||||
store dos attributes Default changed yes
|
||||
ea support Default changed yes
|
||||
full_audit:success Default changed none
|
||||
full_audit:failure Default changed none
|
||||
|
||||
VFS interface changes
|
||||
=====================
|
||||
|
||||
The VFS ABI interface version has changed to 39. Function changes
|
||||
are:
|
||||
|
||||
SMB_VFS_FSYNC: Removed: Only async versions are used.
|
||||
SMB_VFS_READ: Removed: Only PREAD or async versions are used.
|
||||
SMB_VFS_WRITE: Removed: Only PWRITE or async versions are used.
|
||||
SMB_VFS_CHMOD_ACL: Removed: Only CHMOD is used.
|
||||
SMB_VFS_FCHMOD_ACL: Removed: Only FCHMOD is used.
|
||||
|
||||
Any external VFS modules will need to be updated to match these
|
||||
changes in order to work with 4.9.x.
|
||||
|
||||
KNOWN ISSUES
|
||||
============
|
||||
|
||||
https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.9#Release_blocking_bugs
|
||||
https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.10#Release_blocking_bugs
|
||||
|
||||
|
||||
#######################################
|
||||
|
Loading…
Reference in New Issue
Block a user