s3-smbd: Added a change_to_user_by_session() function.
[nivanova/samba-autobuild/.git] / WHATSNEW.txt
1                    =================================
2                    Release Notes for Samba 3.6.0pre1
3                              July 28, 2010
4                    =================================
5
6
7 This is the first preview release of Samba 3.6.  This is *not*
8 intended for production environments and is designed for testing
9 purposes only.  Please report any defects via the Samba bug reporting
10 system at https://bugzilla.samba.org/.
11
12
13 Major enhancements in Samba 3.6.0 include:
14
15
16 Changed security defaults
17 -------------------------
18
19 Samba 3.6 has adopted a number of improved security defaults that will
20 impact on existing users of Samba.
21
22  client ntlmv2 auth = yes
23  client use spnego principal = no
24  send spnego principal = no
25
26 The impact of 'client ntlmv2 auth = yes' is that by default we will not
27 use NTLM authentication as a client.  This applies to the Samba client
28 tools such as smbclient and winbind, but does not change the separately
29 released in-kernel CIFS client.  To re-enable the poorer NTLM encryption
30 set '--option=clientusentlmv2auth=no' on your smbclient command line, or
31 set 'client ntlmv2 auth = no' in your smb.conf
32
33 The impact of 'client use spnego principal = no' is that we may be able
34 to use Kerberos to communicate with a server less often in smbclient,
35 winbind and other Samba client tools.  We may fall back to NTLMSSP in
36 more situations where we would previously rely on the insecure
37 indication from the 'NegProt' CIFS packet.  This mostly occursed when
38 connecting to a name alias not recorded as a servicePrincipalName for
39 the server.  This indication is not available from Windows 2008 or later
40 in any case, and is not used by modern Windows clients, so this makes
41 Samba's behaviour consistent with other clients and against all servers.
42
43 The impact of 'send spnego principal = no' is to match Windows 2008 and
44 not to send this principal, making existing clients give more consistent
45 behaviour (more likely to fall back to NTLMSSP) between Samba and
46 Windows 2008, and between Windows versions that did and no longer use
47 this insecure hint.
48
49
50 SMB2 support
51 ------------
52
53 SMB2 support in 3.6.0 is fully functional (with one omission),
54 and can be enabled by setting:
55
56 max protocol = SMB2
57
58 in the [global] section of your smb.conf and re-starting
59 Samba. All features should work over SMB2 except the modification
60 of user quotas using the Windows quota management tools.
61
62 As this is the first release containing what we consider
63 to be a fully featured SMB2 protocol, we are not enabling
64 this by default, but encourage users to enable SMB2 and
65 test it. Once we have enough confirmation from Samba
66 users and OEMs that SMB2 support is stable in wide user
67 testing we will enable SMB2 by default in a future Samba
68 release.
69
70
71 Internal Winbind passdb changes
72 -------------------------------
73
74 Winbind has been changed to use the internal samr and lsa rpc pipe to get
75 local user and group information instead of calling passdb functions. The
76 reason is to use more of our infrastructure and test this infrastructure by
77 using it. With this approach more code in Winbind is shared.
78
79
80 New Spoolss code
81 ----------------
82
83 The spoolss and the old RAP printing code have been completely
84 overhauled and refactored.
85
86 All calls from lanman/printing code has been changed to go through the
87 spoolss RPC interfaces, this allows us to keep all checks in one place
88 and avoid special cases in the main printing code.
89 Printing code has been therefore confined within the spoolss code.
90
91 All the printing code, including the spoolss RPC interfaces has been
92 changed to use the winreg RPC interfaces to store all data.
93 All data has been migrated from custom, arbitrary TDB files to the
94 registry interface. This transition allow us to present correct data to
95 windows client accessing the server registry through the winreg RPC
96 interfaces to query for printer data. Data is served out from a real
97 registry implementation and therefore arguably 100% forward compatible.
98
99 Migration code from the previous TDB files formats is provided. This
100 code is automatically invoked the first time the new code is run on the
101 server. Although manual migration is also available using the 'net
102 printer migrate' command.
103
104 These changes not only make all the spoolss code much more closer to
105 "the spec", it also greatly improves our internal testing of both
106 spoolss and winreg interfaces, and reduces overall code duplication.
107
108 As part of this work, new tests have been also added to increase
109 coverage.
110
111 This code will also allow, in future, an easy transition to split out
112 the spooling functions into a separate daemon for those OEMs that do not
113 need printing functionality in their appliances, reducing the code
114 footprint.
115
116
117 ID Mapping Changes
118 ------------------
119
120 The id mapping configuration has been a source of much grief in the past.
121 For this release, id mapping has ben rewritten yet again with the goal
122 of making the configuration more simple and more coherent while keeping
123 the needed flexibility and even adding to the flexibility in some respects.
124
125 The major change that implies the configuration simplifications is at
126 the heart of the id mapping system: The separation of the "idmap alloc
127 system" that is responsible for the unix id counters in the tdb, tdb2
128 and ldap idmap backends from the id mapping code itself has been removed.
129 The sids_to_unixids operation is now atomic and encapsulates (if needed)
130 the action of allocating a unix id for a mapping that is to be created.
131 Consequently all idmap alloc configuration parameters have vanished and
132 it is hence now also not possible any more to specify an idmap alloc
133 backend different from the idmap backend. Each idmap backend uses its
134 own idmap unixid creation mechanism transparently.
135
136 As a consequence of the id mapping changes, the methods that are used
137 for storing and deleting id mappings have been removed from the winbindd
138 API. The "net idmap dump/restore" commands have been rewritten to
139 not speak through winbindd any more but directly act on the databases.
140 This is currently available for the tdb and tdb2 backends, the implementation
141 for ldap still missing.
142
143 The allocate_id functionality is preserved for the unix id creator of the
144 default idmap configuration is also used as the source of unix ids
145 for the group mapping database and for the posix attributes in a
146 ldapsam:editposix setup.
147
148 As part of the changes, the default idmap configuration has been
149 changed to be more coherent with the per-domain configuration.
150 The parameters "idmap uid", "idmap gid" and "idmap range" are now
151 deprecated in favour of the systematic "idmap config * : range"
152 and "idmap config * : backend" parameters. The reason for this change
153 is that the old options only provided an incomplete and hence deceiving
154 backwards compatibility, which was a source of many problems with
155 updgrades. By introducing this change in configuration, it should be
156 brought to the conciousness of the users that even the simple
157 id mapping is not working exactly as in Samba 3.0 versions any more.
158
159
160 SMB Traffic Analyzer
161 --------------------
162
163 Added the new SMB Traffic Analyzer (SMBTA) VFS module protocol 2
164 featuring encryption, multiple arguments, and easier parseability. A new
165 tool 'smbta-util' has been created to control the encryption behaviour
166 of SMBTA. For compatibility, SMBTA by default operates on version 1.
167 There are programs consuming the data that the module sends.
168
169 More information can be found on
170 http://holger123.wordpress.com/smb-traffic-analyzer/
171
172
173 NFS quota backend on Linux
174 --------------------------
175
176 A new nfs quota backend for Linux has been added that is based
177 on the existing Solaris/FreeBSD implementation. This allows samba
178 to communicate correct diskfree information for nfs imports that
179 are re-exported as samba shares.
180
181
182 ######################################################################
183 Changes
184 #######
185
186 smb.conf changes
187 ----------------
188
189    Parameter Name                      Description     Default
190    --------------                      -----------     -------
191
192    async smb echo handler              New             No
193    client ntlmv2 auth                  Changed Default Yes
194    client use spnego principal         New             No
195    ctdb locktime warn threshold        New             0
196    idmap alloc backend                 Removed
197    log writeable files on exit         New             No
198    multicast dns register              New             Yes
199    ncalrpc dir                         New
200    send spnego principal               New             No
201    smb2 max credits                    New             128
202    smb2 max read                       New             1048576
203    smb2 max trans                      New             1048576
204    smb2 max write                      New             1048576
205    strict allocate                     Changed Default Yes
206    username map cache time             New             0
207    winbind max clients                 New             200
208
209
210 ######################################################################
211 Reporting bugs & Development Discussion
212 #######################################
213
214 Please discuss this release on the samba-technical mailing list or by
215 joining the #samba-technical IRC channel on irc.freenode.net.
216
217 If you do report problems then please try to send high quality
218 feedback. If you don't provide vital information to help us track down
219 the problem then you will probably be ignored.  All bug reports should
220 be filed under the Samba 3.6 product in the project's Bugzilla
221 database (https://bugzilla.samba.org/).
222
223
224 ======================================================================
225 == Our Code, Our Bugs, Our Responsibility.
226 == The Samba Team
227 ======================================================================
228