summaryrefslogtreecommitdiffstats
path: root/docs-xml/smbdotconf/logon/allownt4crypto.xml
blob: ee63e6cc24532ec05e0565aa7a7c27140a251d96 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<samba:parameter name="allow nt4 crypto"
                 context="G"
                 type="boolean"
                 deprecated="1"
                 xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
<description>
	<para>
	This option is deprecated and will be removed in future,
	as it is a security problem if not set to "no" (which will be
	the hardcoded behavior in future).
	</para>

	<para>This option controls whether the netlogon server (currently
	only in 'active directory domain controller' mode), will
	reject clients which do not support NETLOGON_NEG_STRONG_KEYS
	nor NETLOGON_NEG_SUPPORTS_AES.</para>

	<para>This option was added with Samba 4.2.0. It may lock out clients
	which worked fine with Samba versions up to 4.1.x. as the effective default
	was "yes" there, while it is "no" now.</para>

	<para>If you have clients without RequireStrongKey = 1 in the registry,
	you may need to set "allow nt4 crypto = yes", until you have fixed all clients.
	</para>

	<para>"allow nt4 crypto = yes" allows weak crypto to be negotiated, maybe via downgrade attacks.</para>

	<para><emphasis>Avoid using this option!</emphasis> Use explicit '<smbconfoption name="allow nt4 crypto:COMPUTERACCOUNT">yes</smbconfoption>' instead!
	Which is available with the patches for
	<ulink url="https://www.samba.org/samba/security/CVE-2022-38023.html">CVE-2022-38023</ulink>
	see <ulink url="https://bugzilla.samba.org/show_bug.cgi?id=15240">https://bugzilla.samba.org/show_bug.cgi?id=15240</ulink></para>

	<para>
	Samba will log an error in the log files at log level 0
	if legacy a client is rejected or allowed without an explicit,
	'<smbconfoption name="allow nt4 crypto:COMPUTERACCOUNT">yes</smbconfoption>' option
	for the client. The message will indicate
	the explicit '<smbconfoption name="allow nt4 crypto:COMPUTERACCOUNT">yes</smbconfoption>'
	line to be added, if the legacy client software requires it. (The log level can be adjusted with
	'<smbconfoption name="CVE_2022_38023:error_debug_level">1</smbconfoption>'
	in order to complain only at a higher log level).
	</para>

	<para>This allows admins to use "yes" only for a short grace period,
	in order to collect the explicit
	'<smbconfoption name="allow nt4 crypto:COMPUTERACCOUNT">yes</smbconfoption>' options.</para>

	<para>This option is over-ridden by the effective value of 'yes' from
	the '<smbconfoption name="server reject md5 schannel:COMPUTERACCOUNT"/>'
	and/or '<smbconfoption name="reject md5 clients"/>' options.</para>
</description>

<value type="default">no</value>
</samba:parameter>

<samba:parameter name="allow nt4 crypto:COMPUTERACCOUNT"
                 context="G"
                 type="string"
                 xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
<description>

    <para>If you still have legacy domain members which required 'allow nt4 crypto = yes',
	it is possible to specify an explicit exception per computer account
	by using 'allow nt4 crypto:COMPUTERACCOUNT = yes' as option.
	Note that COMPUTERACCOUNT has to be the sAMAccountName value of
	the computer account (including the trailing '$' sign).
    </para>

    <para>
	Samba will log a complaint in the log files at log level 0
	about the security problem if the option is set to "yes",
	but the related computer does not require it.
	(The log level can be adjusted with
	'<smbconfoption name="CVE_2022_38023:warn_about_unused_debug_level">1</smbconfoption>'
	in order to complain only at a higher log level).
    </para>

    <para>
	Samba will log a warning in the log files at log level 5,
	if a setting is still needed for the specified computer account.
    </para>

    <para>
	See <ulink url="https://www.samba.org/samba/security/CVE-2022-38023.html">CVE-2022-38023</ulink>,
	<ulink url="https://bugzilla.samba.org/show_bug.cgi?id=15240">https://bugzilla.samba.org/show_bug.cgi?id=15240</ulink>.
    </para>

    <para>This option overrides the <smbconfoption name="allow nt4 crypto"/> option.</para>

    <para>This option is over-ridden by the effective value of 'yes' from
    the '<smbconfoption name="server reject md5 schannel:COMPUTERACCOUNT"/>'
    and/or '<smbconfoption name="reject md5 clients"/>' options.</para>
    <para>Which means '<smbconfoption name="allow nt4 crypto:COMPUTERACCOUNT">yes</smbconfoption>'
    is only useful in combination with '<smbconfoption name="server reject md5 schannel:COMPUTERACCOUNT">no</smbconfoption>'</para>

    <programlisting>
	allow nt4 crypto:LEGACYCOMPUTER1$ = yes
	server reject md5 schannel:LEGACYCOMPUTER1$ = no
	allow nt4 crypto:NASBOX$ = yes
	server reject md5 schannel:NASBOX$ = no
	allow nt4 crypto:LEGACYCOMPUTER2$ = yes
	server reject md5 schannel:LEGACYCOMPUTER2$ = no
    </programlisting>
</description>

</samba:parameter>