Required Settings for Samba NT4 Domains: Difference between revisions

From SambaWiki
(Try to make Google friendly (ie. users are searching for one of Windows 7, Windows 8 or so))
Line 1: Line 1:
'''Samba usually doesn't require any changes on your Windows OS.''' So please read very carefully on the sections below why and when you should do them! If your situation or problem isn't mentioned here, then it's highly recommented to <u>NOT</u> do any registry changes!'''
'''Samba usually doesn't require any changes on your Windows OS.''' So please read very carefully on the sections below why and when you should do them! If your situation or problem isn't mentioned here, then it's highly recommented to <u>NOT</u> do any registry changes!'''


== Joining Windows7/8 or Windows Server 2008r2/2012 to an Samba NT4-style domain ==
'''This does not apply if Windows is joining to AD (Active Directory) style domain (ie. Samba 4).'''


== Joining Windows to classic DC ==
'''This changes are only necessary if you want to join a Windows7/8 or Windows Server 2008r2/2012 machine to a <u>Samba NT4-style domain</u>!
Joining '''Windows 7''', '''Windows Server 2008''', '''Windows Server 2008 R2''', '''Windows Server 2012''' or '''Windows 8''' to the ''classical windows domain'' (aka NT-4 style domain) requires registry change in those systems. This is the only situation, when domain controller is Samba 3 (ie. before Samba 4) which means Samba is in role PDC or BDC (Primary Domain Controller, Backup Domain Controller). Samba 3 is not able to create AD (Active Directory) while Samba 4 creates AD by default (which means to provide Kerberos/LDAP services).


If you try to join any of the mentioned OS you'll encounter an error:
It's not required and not recommended if you run Samba as AD DC!'''


The following error occurred attempting to join the domain „.....“:
If you try to join any of the mentioned OS you'll encounter an error

The following error occourred attempting to join the domain „.....“:
The specified domain either does not exist or could not be contacted.
The specified domain either does not exist or could not be contacted.
Line 24: Line 23:
Do the changes manually in <tt>regedit.exe</tt> or save the above in a plain text file with Notepad/Editor (not Word/Wordpad/OpenOffice/LibreOffice/...!) and name it <tt>sambafix.reg</tt>. Make sure, that the file has the ending <tt>.reg</tt>. Then you can import it directly to your registry by double-clicking, if you have the sufficient permissions.
Do the changes manually in <tt>regedit.exe</tt> or save the above in a plain text file with Notepad/Editor (not Word/Wordpad/OpenOffice/LibreOffice/...!) and name it <tt>sambafix.reg</tt>. Make sure, that the file has the ending <tt>.reg</tt>. Then you can import it directly to your registry by double-clicking, if you have the sufficient permissions.


After the next reboot you can join the machine to your domain, but you'll still encounter an error:
After the next reboot you can join the machine to your domain.

=== Possible problem with joining ===
Sometimes you may still encounter an error when joining classical domain:


Changing the Primary Domain DNS name of this computer to "" failed. The name will remain ".....".
Changing the Primary Domain DNS name of this computer to "" failed. The name will remain ".....".
Line 34: Line 36:


== Windows 8 and classic domain (NT-4 style) with a dot in its name ==
== Windows 8 and classic domain (NT-4 style) with a dot in its name ==
There is a problem with Windows 8, where Microsoft raises new domain name policy. When a domain contain a dot (".") in its name (ie. ''example.com''), Windows 8 treat this name as a Active Directory name and trying to contact Kerberos/LDAP server even there is none. So this is impossible to join this domain and there is no known fix or workaround yet.
There is a problem with Windows 8, where Microsoft raises new domain name policy. When a domain contain a dot (".") in its name (ie. ''example.com''), Windows 8 treat this name as a Active Directory name and is trying to contact Kerberos/LDAP server even there is none. So this is impossible to join this domain and there is no known fix or workaround yet.


Links:
Links:
Line 41: Line 43:


== IMPORTANT: Registry changes that never should be done! ==
== IMPORTANT: Registry changes that never should be done! ==

There are many pages on the internet, which suggest to change the values of <tt>RequireSignOrSeal</tt> and <tt>RequireStrongKey</tt>. '''This is <u>NOT</u> recommended by the Samba team, as it will break interoperability with other Windows and Samba versions!'''
There are many pages on the internet, which suggest to change the values of <tt>RequireSignOrSeal</tt> and <tt>RequireStrongKey</tt>. '''This is <u>NOT</u> recommended by the Samba team, as it will break interoperability with other Windows and Samba versions!'''



Revision as of 17:10, 8 September 2013

Samba usually doesn't require any changes on your Windows OS. So please read very carefully on the sections below why and when you should do them! If your situation or problem isn't mentioned here, then it's highly recommented to NOT do any registry changes!

This does not apply if Windows is joining to AD (Active Directory) style domain (ie. Samba 4).

Joining Windows to classic DC

Joining Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012 or Windows 8 to the classical windows domain (aka NT-4 style domain) requires registry change in those systems. This is the only situation, when domain controller is Samba 3 (ie. before Samba 4) which means Samba is in role PDC or BDC (Primary Domain Controller, Backup Domain Controller). Samba 3 is not able to create AD (Active Directory) while Samba 4 creates AD by default (which means to provide Kerberos/LDAP services).

If you try to join any of the mentioned OS you'll encounter an error:

The following error occurred attempting to join the domain „.....“:

The specified domain either does not exist or could not be contacted.

The following registry change work with any Samba version that isn't already discontinued:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManWorkstation\Parameters]

"DomainCompatibilityMode"=dword:00000001
"DNSNameResolutionRequired"=dword:00000000

Do the changes manually in regedit.exe or save the above in a plain text file with Notepad/Editor (not Word/Wordpad/OpenOffice/LibreOffice/...!) and name it sambafix.reg. Make sure, that the file has the ending .reg. Then you can import it directly to your registry by double-clicking, if you have the sufficient permissions.

After the next reboot you can join the machine to your domain.

Possible problem with joining

Sometimes you may still encounter an error when joining classical domain:

Changing the Primary Domain DNS name of this computer to "" failed. The name will remain ".....".
The error was:

The specified domain either does not exist or could not be contacted

But this error can safely be ignored or, if you run Windows 7, silenced by a hotfix, that was published by Microsoft: KB2171571: You incorrectly receive an error message when you join a computer that is running Windows 7 or Windows Server 2008 R2 to a Samba 3-based domain.

Windows 8 and classic domain (NT-4 style) with a dot in its name

There is a problem with Windows 8, where Microsoft raises new domain name policy. When a domain contain a dot (".") in its name (ie. example.com), Windows 8 treat this name as a Active Directory name and is trying to contact Kerberos/LDAP server even there is none. So this is impossible to join this domain and there is no known fix or workaround yet.

Links:

IMPORTANT: Registry changes that never should be done!

There are many pages on the internet, which suggest to change the values of RequireSignOrSeal and RequireStrongKey. This is NOT recommended by the Samba team, as it will break interoperability with other Windows and Samba versions!

If you have already changed these parameters, turn them back to 1 as shown below and reboot:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\System\CCS\Services\Netlogon\Parameters]

"RequireSignOrSeal"=dword:00000001
"RequireStrongKey"=dword:00000000