xref: /illumos-gate/usr/src/man/man5/smb.5 (revision 86d949f9497332fe19be6b5d711d265eb957439f)
1.\" Copyright (c) 2009, Sun Microsystems, Inc. All Rights Reserved.
2.\" Copyright 2017, Nexenta Systems, Inc. All Rights Reserved.
3.\" Copyright 2022, RackTop Systems, Inc. All Rights Reserved.
4.\" Copyright 2022 Jason King
5.\" Copyright 2023 Bill Sommerfeld
6.\" The contents of this file are subject to the terms of the
7.\" Common Development and Distribution License (the "License").
8.\" You may not use this file except in compliance with the License.
9.\"
10.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
11.\" or http://www.opensolaris.org/os/licensing.
12.\" See the License for the specific language governing permissions
13.\" and limitations under the License.
14.\"
15.\" When distributing Covered Code, include this CDDL HEADER in each
16.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
17.\" If applicable, add the following below this CDDL HEADER, with the
18.\" fields enclosed by brackets "[]" replaced with your own identifying
19.\" information: Portions Copyright [yyyy] [name of copyright owner]
20.\"
21.Dd February 8, 2023
22.Dt SMB 5
23.Os
24.Sh NAME
25.Nm smb
26.Nd configuration properties for illumos CIFS server
27.Sh DESCRIPTION
28Behavior of the illumos CIFS server is defined by property values that are
29stored in the Service Management Facility,
30.Xr smf 7 .
31.Pp
32An authorized user can use the
33.Xr sharectl 8
34command to set global values
35for these properties in SMF.
36.Pp
37The following list describes the properties:
38.Bl -tag -width x
39.It Sy ads_site
40.Pp
41Specifies the site configured in DNS to look up Active Directory information.
42Sites provide a mechanism to partition or delegate administration and policy
43management, which are typically used in large or complex domains.
44.Pp
45The value should not be set if you do not have a local Active Directory site.
46By default, no value is set.
47.It Sy autohome_map
48.Pp
49Specifies the full path for the SMD autohome map file,
50.Pa smbautohome .
51The default path is
52.Pa /etc .
53.It Sy bypass_traverse_checking
54.Pp
55When set, allows the SMB server to bypass ACL
56.Dq traverse
57checks.
58The default value is
59.Ql true ,
60for Windows compatibility.
61If this parameter is
62.Ql false ,
63ACL checks require that
64.Dq traverse
65.Pq directory execute
66is granted on every directory
67above the directory the SMB client tries to access.
68Windows shares are normally setup with the higher level
69directories not specifically granting such access.
70.It Sy disposition
71.Pp
72A value that controls whether to disconnect the share or proceed if the map
73command fails.
74The disposition property only has meaning when the map property
75has been set.
76Otherwise it will have no effect.
77.Bd -literal -offset 2n
78disposition = [ continue | terminate ]
79.Ed
80.Bl -tag -width terminate
81.It Sy continue
82Proceed with share connection if the map command fails.
83This is the default in the event that disposition is not specified.
84.It Sy terminate
85Disconnect the share if the map command fails.
86.El
87.It Sy ddns_enable
88.Pp
89Enables or disables dynamic DNS updates.
90A value of
91.Ql true
92enables dynamic updates, while a value of
93.Ql false
94disables dynamic updates.
95By default, the value is
96.Ql false .
97.It Sy encrypt
98.Pp
99Controls SMB3 Encryption.
100For requests on a particular share, the server's
101behavior is controlled by the stricter of this option and the per-share
102.Dq encrypt
103option.
104.Pp
105When set to
106.Ql disabled ,
107the server will not ask clients to encrypt requests.
108When set to
109.Ql enabled ,
110the server will ask clients to encrypt requests,
111but will not require that they do so.
112Any message that can be encrypted will be encrypted.
113When set to
114.Ql required ,
115the server will deny access to or disconnect
116any client that does not support encryption or fails to encrypt requests
117that they should.
118.Pp
119In other words, the
120.Ql enabled
121behavior is that any message that
122.Em can
123be encrypted
124.Em should
125be encrypted, while the
126.Ql required
127behavior is that any message that
128.Em can
129be encrypted
130.Em must
131be encrypted.
132.It Sy encrypt_cipher
133.Pp
134Specifies a list of enabled SMB 3.1.1 encryption ciphers.
135This property is only used when encryption is
136.Ql enabled
137.Po
138see
139.Sy encrypt
140property
141.Pc
142and negotiated SMB dialect is 3.1.1 or higher
143.Po
144see
145.Sy max_protocol
146property
147.Pc .
148Otherwise it is ignored.
149.Pp
150When the property is set, a list of comma separated ciphers should be specified,
151or the value
152.Ql all
153should be used instead to enable all supported ciphers.
154By default, when the property is empty, it is equivalent to value
155.Ql all
156\(em all available ciphers will be enabled.
157.Pp
158The list of ciphers should contain these values:
159.Bl -tag -width "aes128-ccm"
160.It Sy aes128-ccm
161AES-128-CCM cipher is enabled.
162It is the only cipher used for SMB 3.0.2 dialect.
163.It Sy aes128-gcm
164AES-128-GCM cipher is enabled.
165Preferred.
166.It Sy all
167All ciphers are enabled.
168.El
169.It Sy ipv6_enable
170.Pp
171Enables IPv6 Internet protocol support within the CIFS Service.
172Valid values are
173.Ql true
174and
175.Ql false .
176The default value is
177.Ql false .
178.It Sy keep_alive
179.Pp
180Specifies the number of seconds before an idle SMB connection is dropped by the
181illumos CIFS server.
182If set to
183.Ql 0 ,
184idle connections are not dropped.
185Valid values are
186.Ql 0
187and from
188.Ql 20
189seconds and above.
190The default value is
191.Ql 0 .
192.It Sy lmauth_level
193Specifies the LAN Manager (LM) authentication level.
194The LM compatibility level
195controls the type of user authentication to use in workgroup mode or domain
196mode.
197The default value is 4.
198.Pp
199The following describes the behavior at each level.
200.Bl -tag -width "1"
201.It Sy 2
202In Windows workgroup mode, the illumos CIFS server accepts LM, NTLM, LMv2, and
203NTLMv2 requests.
204In domain mode, the SMB redirector on the illumos CIFS server
205sends NTLM requests.
206.It Sy 3
207In Windows workgroup mode, the illumos CIFS server accepts LM, NTLM, LMv2, and
208NTLMv2 requests.
209In domain mode, the SMB redirector on the illumos CIFS server
210sends LMv2 and NTLMv2 requests.
211.It Sy 4
212In Windows workgroup mode, the illumos CIFS server accepts NTLM, LMv2, and
213NTLMv2 requests.
214In domain mode, the SMB redirector on the illumos CIFS server
215sends LMv2 and NTLMv2 requests.
216.It Sy 5
217In Windows workgroup mode, the illumos CIFS server accepts LMv2 and NTLMv2
218requests.
219In domain mode, the SMB redirector on the illumos CIFS server sends
220LMv2 and NTLMv2 requests.
221.El
222.It Sy map
223.Pp
224The value is a command to be executed when connecting to the share.
225The command
226can take the following arguments, which will be substituted when the command is
227exec'd as described below:
228.Bl -tag -width "xx"
229.It Sy % Ns Sy U
230Windows username.
231.It Sy % Ns Sy D
232Name of the domain or workgroup of
233.Sy % Ns Sy U .
234.It Sy %h
235The server hostname.
236.It Sy %M
237The client hostname, or
238.Dq ""
239if not available.
240.It Sy %L
241The server NetBIOS name.
242.It Sy %m
243The client NetBIOS name, or
244.Dq ""
245if not available.
246This option is only valid for NetBIOS connections (port 139).
247.It Sy % Ns Sy I
248The IP address of the client machine.
249.It Sy %i
250The local IP address to which the client is connected.
251.It Sy %S
252The name of the share.
253.It Sy % Ns Sy P
254The root directory of the share.
255.It Sy %u
256The UID of the Unix user.
257.El
258.It Sy max_protocol
259.Pp
260Specifies the maximum SMB protocol level that the SMB service
261should allow clients to negotiate.
262The default value is
263.Ql 3.11 .
264Valid settings include:
265.Ql 1 ,
266.Ql 2.1 ,
267.Ql 3.0 ,
268.Ql 3.02 ,
269.Ql 3.11 .
270.It Sy min_protocol
271.Pp
272Specifies the minimum SMB protocol level that the SMB service
273should allow clients to negotiate.
274The default value is
275.Ql 1 .
276Valid settings include:
277.Ql 1 ,
278.Ql 2.1 ,
279.Ql 3.0 .
280.It Sy max_workers
281.Pp
282Specifies the maximum number of worker threads that will be launched to process
283incoming CIFS requests.
284The SMB
285.Sy max_mpx
286value, which indicates to a
287client the maximum number of outstanding SMB requests that it may have pending
288on the server, is derived from the
289.Sy max_workers
290value.
291To ensure compatibility with older versions of Windows the lower 8-bits of
292.Sy max_mpx
293must not be zero.
294If the lower byte of
295.Sy max_workers
296is zero,
297.Ql 64
298is added to the value.
299Thus the minimum value is
300.Ql 64
301and the default value, which appears in
302.Xr sharectl 8
303as
304.Ql 1024 ,
305is
306.Ql 1088 .
307.It Sy netbios_scope
308.Pp
309Specifies the NetBIOS scope identifier, which identifies logical NetBIOS
310networks that are on the same physical network.
311When you specify a NetBIOS
312scope identifier, the server filters the number of machines that are listed in
313the browser display to make it easier to find other hosts.
314The value is a text string that represents a domain name.
315By default, no value is set.
316.It Sy oplock_enable
317.Pp
318Controls whether
319.Dq oplocks
320may be granted by the SMB server.
321The term
322.Dq oplock
323is short for
324.Dq opportunistic lock ,
325which is the legacy name for cache delegations in SMB.
326By default, oplocks are enabled.
327Note that if oplocks are disabled, file I/O performance may be severely reduced.
328.It Sy pdc
329.Pp
330Specifies the preferred IP address for the domain controller.
331This property is
332sometimes used when there are multiple domain controllers to indicate which one
333is preferred.
334If the specified domain controller responds, it is chosen even if
335the other domain controllers are also available.
336By default, no value is set.
337.It Sy restrict_anonymous
338.Pp
339Disables anonymous access to
340.Sy IPC$ ,
341which requires that the client be authenticated to get access to MSRPC
342services through
343.Sy IPC$ .
344A value of
345.Ql true
346disables anonymous access to
347.Sy IPC$ ,
348while a value of
349.Ql false
350enables anonymous access.
351.It Sy short_names
352.Pp
353Enables the use of
354.Dq short names
355by SMB clients.
356The default value is
357.Ql false
358because modern SMB clients do not need short names, and
359using short names has some performance cost while listing directories
360and opening or renaming files.
361.It Sy signing_enabled
362.Pp
363Enables SMB signing.
364When signing is enabled but not required it is possible
365for clients to connect regardless of whether or not the client supports SMB
366signing.
367If a packet has been signed, the signature will be verified.
368If a
369packet has not been signed it will be accepted without signature verification.
370Valid values are
371.Ql true
372and
373.Ql false .
374The default value is
375.Ql true .
376.It Sy signing_required
377.Pp
378When SMB signing is required, all packets must be signed or they will be
379rejected, and clients that do not support signing will be unable to connect to
380the server.
381The
382.Sy signing_required
383setting is only taken into account when
384.Sy signing_enabled
385is
386.Ql true .
387Valid values are
388.Ql true
389and
390.Ql false .
391The default value is
392.Ql true .
393.It Sy system_comment
394.Pp
395Specifies an optional description for the system, which is a text string.
396This
397property value might appear in various places, such as Network Neighborhood or
398Network Places on Windows clients.
399By default, no value is set.
400.It Sy traverse_mounts
401.Pp
402The
403.Sy traverse_mounts
404setting determines how the SMB server
405presents sub-mounts underneath an SMB share.
406When
407.Sy traverse_mounts
408is
409.Ql true
410(the default), sub-mounts are presented to SMB clients
411like any other subdirectory.
412When
413.Sy traverse_mounts
414is
415.Ql false ,
416sub-mounts are not shown to SMB clients.
417.It Sy unmap
418.Pp
419The value is a command to be executed when disconnecting the share.
420The command can take the same substitutions listed on the
421.Sy map
422property.
423.It Sy wins_exclude
424.Pp
425Specifies a comma-separated list of network interfaces that should not be
426registered with WINS.
427NetBIOS host announcements are made on excluded interfaces.
428By default, no value is set.
429.It Sy wins_server_1
430.Pp
431Specifies the IP address of the primary WINS server.
432By default, no value is set.
433.It Sy wins_server_2
434.Pp
435Specifies the IP address of the secondary WINS server.
436By default, no value is set.
437.El
438.Sh INTERFACE STABILITY
439Uncommitted
440.Sh SEE ALSO
441.Xr attributes 7 ,
442.Xr smf 7 ,
443.Xr sharectl 8 ,
444.Xr smbadm 8 ,
445.Xr smbd 8 ,
446.Xr smbstat 8
447