English Korean
Since Linux systems have support for extended attributes enabled by default, parameters "map readonly", "store dos attributes" and "ea support" have had their defaults changed to allow better Windows fileserver compatibility in a default install.
Over several releases, Samba configuration checks were improved to detect typical identity mapping errors earlier and fail start up before the changes might affect actual operation. With changes in identities causing access control breaches and possibility of a data leakage to unwanted parties, this effort is helping to reduce a number of incorrect but widely deployed cases.
Since Samba 4.6, the 'testparm' tool can be used to validate the ID mapping configuration. After an upgrade please run it and check if it prints any warnings or errors. Please see the 'IDENTITY MAPPING CONSIDERATIONS' section in the smb.conf manpage for suggestions and recommendations. There are some ID mapping backends which are not allowed to be used for the default backend. Winbind daemon will no longer start if an invalid backend is configured as the default backend.
Since Samba 4.8, configurations with "`security = domain`" or "`security = ads`" require a running '`winbindd`' now. The fallback that smbd directly contacts domain controllers is gone.
Finally, Samba 4.9 differentiates between anonymous and guest access via SMB protocol. A side effect of this is that it is now required to have a mapping for `BUILTIN\Guests` group. The mapping can be provided automatically if a default identity backend allows to create entries on demand. Alternatively, `net` utility can be used to provide a group mapping for `BUILTIN\Guests` via
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.
Local authorization plugin for MIT Kerberos has been added. The 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 getting the initial ticket granting ticket.
Active Directory Domain Controller in Samba 4.9 saw a number of improvements. Most notably, 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.
Samba AD DC in Fedora is built with MIT Kerberos. As of Samba 4.9, MIT Kerberos support in Samba AD DC is still experimental and may exhibit bugs. There are known and not yet fixed issues in the Samba bug-tracker upstream:
The support for trusted domains/forests has been further improved. External domain trusts, as well a transitive forest trusts, are supported in both directions (inbound and outbound) for Kerberos and NTLM authentication.
foreignSecurityPrincipal objects (FPO) are now automatically created when members (as SID) of a trusted domain/forest are added to a group.
Selective (CROSS_ORGANIZATION) authentication is not supported. It's possible to create such a trust, but the KDC and winbindd ignore them.