Difference between revisions of "PDC"

From Amahi Wiki
Jump to: navigation, search
 
(45 intermediate revisions by 9 users not shown)
Line 1: Line 1:
 +
== Please read this page carefully ==
 +
Since we are getting several users with problems using "wrong" versions, please be aware that:
 +
* Only the following versions of Windows will support connecting to a domain:
 +
  Windows 2000 Professional
 +
  Windows XP Professional
 +
  Windows XP 64bit Professional
 +
  Windows Vista business
 +
  Windows Vista Ultimate
 +
  Windows 7 Professional
 +
  Windows 7 Enterprise
 +
  Windows 7 Ultimate
 +
* Any Version of windows NOT listed is NOT supported
 +
* Mac OSX does support joining a windows network
 +
* Linux supports samba shares
 +
* Windows 7 needs tweaking:
 +
Open Notepad Copy the following code into notepad:
 +
<pre>Windows Registry Editor Version 5.00
 +
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManWorkstation\Parameters]
 +
"DNSNameResolutionRequired"<nowiki>=</nowiki>dword:00000000
 +
"DomainCompatibilityMode"<nowiki>=</nowiki>dword:00000001
 +
 +
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Netlogon\Parameters]
 +
"Update"<nowiki>=</nowiki>"no"
 +
"DisablePasswordChange"<nowiki>=</nowiki>dword:00000000
 +
"MaximumPasswordAge"<nowiki>=</nowiki>dword:0000001e
 +
"RequireSignOrSeal"<nowiki>=</nowiki>dword:00000001
 +
"RequireStrongKey"<nowiki>=</nowiki>dword:00000001
 +
"SealSecureChannel"<nowiki>=</nowiki>dword:00000001
 +
"SignSecureChannel"<nowiki>=</nowiki>dword:00000001</pre>
 +
 +
*Save the file as a .reg NOT a .txt, and double-click it, select Run if asked to run or cancel, then windows will warn that you are adding things to the registry click yes as it is safe, then click ok, it will get entered into the registry.
 +
* Windows 7 issues / change log:
 +
** There is a warning kicked up that can be ignored. it complains about DNS not beeing set correctly. reboot and you are there
 +
** as of 06/02/2010 roaming profiles work under windows 7
 +
 
== Making Amahi a PDC - Primary Domain Controller ==
 
== Making Amahi a PDC - Primary Domain Controller ==
  
* To '''join''' a machine to the domain, it has to be done by logging in once as root. Unfortunately, Amahi does not currently create a root samba user. For now and until we enable granting admin rights to other users, do this:
+
*First you need to enable PDC options for the amahi server.
 +
to do this go to your dashboard, then select Setup, then Settings, then tick the box that says '''Advanched Features'''
 +
After you've done this go to '''Shares''' then '''Settings'''
 +
now you'll see the option called '''PDC''' enable it for Amahi to act as a windows PDC Server.
 +
 
 +
 
 +
* To '''join''' a machine to the domain, it has to be done by logging in once as [[Open_Terminal_as_root|root]]. Unfortunately, Amahi does not currently automatically create a root samba user. Type the following into terminal:
  
      smbpasswd -a root
+
<pre>smbpasswd -a root
      (set the samba password for the root user)
+
smbpasswd -e root
      smbpasswd -e root
+
service smb restart
 +
service nmb restart</pre>
  
* Then join the domain: Select start, control panel, system, and click computername. Then select network-id and follow the wizard. When it asks you for a username/password, supply the root username/password you created above. '''This only needs to be done once'''
+
*This creates a user named root then it enables it, if your running Ubuntu 12.04 you will get a error saying smb: unrecogized service or nmb: unrecogized service, you can restart samba through the dashboard then Setup, then servers, click on Samba and click restart.
  
==Full procedure for Windows XP==
+
==Complete Domain Setup with A Windows Box==
# On the Windows Box
+
Thanks to obnox for explaining all this to robbiet480 who got his PDC working with the same directions<br>
## Go to network connections
+
1. On the Windows Box
## Double click your main network connection  
+
* Windows 7 users need to use the registry script above
## Open the TCP/IP properties window
+
* Go to network connections
## Click advanced
+
* Double click your main network connection  
## go to the WINS tab
+
* Open the TCP/IP properties window
## Add your Amahi IP to the list
+
* Click advanced
## force enable NetBIOS Name,  
+
* go to the WINS tab
# On the Amahi box
+
* Add your Amahi IP to the list
## Open a terminal
+
* force enable NetBIOS Name,  
### smbpasswd -a root (set the samba password for the root user. You need to remember this for later!)
+
2. On the Amahi box
### smbpasswd -e root
+
* If you havent ran this already
### sudo /etc/init.d/smbd restart  
+
* Open a terminal (set the samba password for the root user. You need to remember this for later!):
### sudo /etc/init.d/nmbd restart
+
<pre>smbpasswd -a root
# Back to windows!
+
smbpasswd -e root
## Open the System window by right clicking on My Computer in the Start Menu
+
service smb restart
## Go to the "Computer Name" tab
+
service nmb restart</pre>
## Click Change
+
* if your running Ubuntu 12.04 you will get a error saying smb: unrecogized service or nmb: unrecogized service, you can restart samba through the dashboard then Setup, then servers, click on Samba and click restart.
## Type in the domain IN ALL CAPS and finish by binding the windows client using the root credentials you setup above
+
3. Back to windows!
## login w/ your user or root from the Windows login screen.  
+
* Open the System window by right clicking on My Computer in the Start Menu
## you are done!
+
* Go to the "Computer Name" tab
 +
* Note down the Computer Name
 +
4. Back to Amahi!
 +
* Open a terminal
 +
sudo useradd -s /bin/false -d /dev/null ComputerNameNotedEarlier$
 +
sudo smbpasswd -a -m ComputerNameNotedEarlier
 +
* Remember the $ on the first line but not the second!
 +
* This code authorizes your computer to connect
 +
5. Back to windows again!
 +
* Open the System window by right clicking on My Computer in the Start Menu
 +
* Go to the "Computer Name" tab
 +
* Click Change
 +
* Type in the domain IN ALL CAPS (default domain name is 'WORKGROUP' this may not work but can be changed in your HDA dashboard, under Setup > Shares > Settings then click on the domain name )
 +
* Enter root username and password that you setup above / earlier.
 +
* Restart the computer
 +
* Login w/ your user or root from the Windows login screen.  
 +
* You are done!
  
 
== How to Join a Domain with a Non-root User ==
 
== How to Join a Domain with a Non-root User ==
Line 37: Line 95:
  
  
== Old Development Notes ==
+
==== Old Development Notes ====
  
 
'''WARNING: These settings apply to the beta test only!!'''
 
'''WARNING: These settings apply to the beta test only!!'''
Line 46: Line 104:
 
now your new smb.conf is beeing generated!
 
now your new smb.conf is beeing generated!
 
create the following file:
 
create the following file:
* /var/hda/domain-settings/netlogon/logon.bat
+
nano /var/hda/domain-settings/netlogon/logon.bat
 
and add the following to it:
 
and add the following to it:
;Sync Windows clock with Samba clock
+
<pre>;Sync Windows clock with Samba clock
net time /set /yes
+
net time /set /yes
;Mount a samba share into x:
+
;Mount a samba share into x:
net use u: \\hda\BACKUP /persistent:no
+
net use u: \\hda\BACKUP /persistent:no
net use v: \\hda\AFBEELDINGEN /persistent:no
+
net use v: \\hda\AFBEELDINGEN /persistent:no
net use w: \\hda\DOCUMENTEN /persistent:no
+
net use w: \\hda\DOCUMENTEN /persistent:no
net use x: \\hda\SOFTWARE /persistent:no
+
net use x: \\hda\SOFTWARE /persistent:no
net use y: \\hda\VIDEOS /persistent:no
+
net use y: \\hda\VIDEOS /persistent:no
net use z: \\hda\MUZIEK /persistent:no
+
net use z: \\hda\MUZIEK /persistent:no</pre>
  
 
save the file.
 
save the file.
 
next go to the workstation that you want to add to the domain.
 
next go to the workstation that you want to add to the domain.
Select start, control panel, system, and click computername.
+
Select start, control panel, system, and click computer name.
 
then select network-id and follow the wizard.
 
then select network-id and follow the wizard.
 
when it asks you for a username/password, supply the root username/password you created on the PDC.
 
when it asks you for a username/password, supply the root username/password you created on the PDC.
Line 69: Line 127:
 
---------
 
---------
  
= Old Directions =
+
==== Old Directions ====
  
 
Open a terminal on your hda, or, if you use putty, open a connection to your hda.<br>
 
Open a terminal on your hda, or, if you use putty, open a connection to your hda.<br>
Login as root: su -<br>
+
Login as root:  
 +
su -
 
First, backup your smb.conf file, in case you run into problems you can easily revert back.<br>
 
First, backup your smb.conf file, in case you run into problems you can easily revert back.<br>
* cp /etc/samba/smb.conf /etc/samba/smb_old.conf
+
cp /etc/samba/smb.conf /etc/samba/smb_old.conf
 
next we need to modify the smb file, i use nano for this, you may use any editor you feel confortable with
 
next we need to modify the smb file, i use nano for this, you may use any editor you feel confortable with
* nano /etc/samba/smb.conf
+
nano /etc/samba/smb.conf
 
change the apropriate parts in the smb.conf.<br>
 
change the apropriate parts in the smb.conf.<br>
 
Save your smb.conf  
 
Save your smb.conf  
  
 
So at this point we need to create the corresponding directories:
 
So at this point we need to create the corresponding directories:
* mkdir /var/hda/domain-settings
+
<pre>mkdir /var/hda/domain-settings
* mkdir /var/hda/domain-settings/netlogon
+
mkdir /var/hda/domain-settings/netlogon
* mkdir /var/hda/domain-settings/profiles
+
mkdir /var/hda/domain-settings/profiles</pre>
  
 
Each time you want a user to join the domain, a user needs to be added, this can be done through the users tab on the amahi dashboard.<br>
 
Each time you want a user to join the domain, a user needs to be added, this can be done through the users tab on the amahi dashboard.<br>
 
aditionally, a profile directory needs to be created.<br>
 
aditionally, a profile directory needs to be created.<br>
* mkdir /var/hda/domain-settings/profiles/JanJacobs
+
mkdir /var/hda/domain-settings/profiles/JanJacobs
 
JanJacobs is the user i created through the users tab of the amahi dashboard.<br>
 
JanJacobs is the user i created through the users tab of the amahi dashboard.<br>
 
Since we are logging in as root, we need to change the ownership of the previously created directory to the corresponding owner:
 
Since we are logging in as root, we need to change the ownership of the previously created directory to the corresponding owner:
* chown -R JanJacobs /var/hda/domain-settings/profiles/JanJacobs
+
chown -R JanJacobs /var/hda/domain-settings/profiles/JanJacobs
 
Now, this still doesnt allow us to login, because in samba, machines need to be added too!<br>
 
Now, this still doesnt allow us to login, because in samba, machines need to be added too!<br>
 
this can be done automaticly, but for the time beeing we do it manually, amahi may facilitate this for you in the future.
 
this can be done automaticly, but for the time beeing we do it manually, amahi may facilitate this for you in the future.
* useradd -s /bin/false -d /dev/null computername$
+
useradd -s /bin/false -d /dev/null computername$
* smbpasswd -a -m computername
+
smbpasswd -a -m computername
Now as you can see there are some differences, when we added the Windows pc to Linux, we added the name computername$,
+
Now as you can see there are some differences, when we added the Windows pc to Linux, we added the name computer name$,
 
this tells Linux that it is a machine, not a name.<br>
 
this tells Linux that it is a machine, not a name.<br>
 
Next when we added the Samba password, we invoked the -m,  
 
Next when we added the Samba password, we invoked the -m,  
Line 108: Line 167:
  
 
now its time to restart samba.
 
now its time to restart samba.
* /etc/init.d/smb restart
+
/etc/init.d/smb restart
  
 
Now you need to  setup your Windows pc for domain logins.<br>
 
Now you need to  setup your Windows pc for domain logins.<br>
 
(Note the first time that you join a Samba domain from Windows, you will need to join the domain by using root as the name, and your root password for the password.<br>
 
(Note the first time that you join a Samba domain from Windows, you will need to join the domain by using root as the name, and your root password for the password.<br>
 
After rebooting, any valid user will be able to access the domain.)
 
After rebooting, any valid user will be able to access the domain.)

Latest revision as of 02:19, 1 February 2019

Please read this page carefully

Since we are getting several users with problems using "wrong" versions, please be aware that:

  • Only the following versions of Windows will support connecting to a domain:
 Windows 2000 Professional
 Windows XP Professional
 Windows XP 64bit Professional
 Windows Vista business
 Windows Vista Ultimate
 Windows 7 Professional
 Windows 7 Enterprise
 Windows 7 Ultimate
  • Any Version of windows NOT listed is NOT supported
  • Mac OSX does support joining a windows network
  • Linux supports samba shares
  • Windows 7 needs tweaking:

Open Notepad Copy the following code into notepad:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManWorkstation\Parameters]
"DNSNameResolutionRequired"=dword:00000000
"DomainCompatibilityMode"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Netlogon\Parameters]
"Update"="no"
"DisablePasswordChange"=dword:00000000
"MaximumPasswordAge"=dword:0000001e
"RequireSignOrSeal"=dword:00000001
"RequireStrongKey"=dword:00000001
"SealSecureChannel"=dword:00000001
"SignSecureChannel"=dword:00000001
  • Save the file as a .reg NOT a .txt, and double-click it, select Run if asked to run or cancel, then windows will warn that you are adding things to the registry click yes as it is safe, then click ok, it will get entered into the registry.
  • Windows 7 issues / change log:
    • There is a warning kicked up that can be ignored. it complains about DNS not beeing set correctly. reboot and you are there
    • as of 06/02/2010 roaming profiles work under windows 7

Making Amahi a PDC - Primary Domain Controller

  • First you need to enable PDC options for the amahi server.

to do this go to your dashboard, then select Setup, then Settings, then tick the box that says Advanched Features After you've done this go to Shares then Settings now you'll see the option called PDC enable it for Amahi to act as a windows PDC Server.


  • To join a machine to the domain, it has to be done by logging in once as root. Unfortunately, Amahi does not currently automatically create a root samba user. Type the following into terminal:
smbpasswd -a root
smbpasswd -e root
service smb restart
service nmb restart
  • This creates a user named root then it enables it, if your running Ubuntu 12.04 you will get a error saying smb: unrecogized service or nmb: unrecogized service, you can restart samba through the dashboard then Setup, then servers, click on Samba and click restart.

Complete Domain Setup with A Windows Box

Thanks to obnox for explaining all this to robbiet480 who got his PDC working with the same directions
1. On the Windows Box

  • Windows 7 users need to use the registry script above
  • Go to network connections
  • Double click your main network connection
  • Open the TCP/IP properties window
  • Click advanced
  • go to the WINS tab
  • Add your Amahi IP to the list
  • force enable NetBIOS Name,

2. On the Amahi box

  • If you havent ran this already
  • Open a terminal (set the samba password for the root user. You need to remember this for later!):
smbpasswd -a root
smbpasswd -e root
service smb restart
service nmb restart
  • if your running Ubuntu 12.04 you will get a error saying smb: unrecogized service or nmb: unrecogized service, you can restart samba through the dashboard then Setup, then servers, click on Samba and click restart.

3. Back to windows!

  • Open the System window by right clicking on My Computer in the Start Menu
  • Go to the "Computer Name" tab
  • Note down the Computer Name

4. Back to Amahi!

  • Open a terminal
sudo useradd -s /bin/false -d /dev/null ComputerNameNotedEarlier$
sudo smbpasswd -a -m ComputerNameNotedEarlier
  • Remember the $ on the first line but not the second!
  • This code authorizes your computer to connect

5. Back to windows again!

  • Open the System window by right clicking on My Computer in the Start Menu
  • Go to the "Computer Name" tab
  • Click Change
  • Type in the domain IN ALL CAPS (default domain name is 'WORKGROUP' this may not work but can be changed in your HDA dashboard, under Setup > Shares > Settings then click on the domain name )
  • Enter root username and password that you setup above / earlier.
  • Restart the computer
  • Login w/ your user or root from the Windows login screen.
  • You are done!

How to Join a Domain with a Non-root User

Old Development Notes

WARNING: These settings apply to the beta test only!! Other users see the old directives

Browse to your HDA dashboard. Select setup, then shares, then settings, then check PDC. now your new smb.conf is beeing generated! create the following file:

nano /var/hda/domain-settings/netlogon/logon.bat

and add the following to it:

;Sync Windows clock with Samba clock
net time /set /yes
;Mount a samba share into x:
net use u: \\hda\BACKUP /persistent:no
net use v: \\hda\AFBEELDINGEN /persistent:no
net use w: \\hda\DOCUMENTEN /persistent:no
net use x: \\hda\SOFTWARE /persistent:no
net use y: \\hda\VIDEOS /persistent:no
net use z: \\hda\MUZIEK /persistent:no

save the file. next go to the workstation that you want to add to the domain. Select start, control panel, system, and click computer name. then select network-id and follow the wizard. when it asks you for a username/password, supply the root username/password you created on the PDC. This is needed because Windows will otherwise be unable to join the Domain. once windows welcomes you to the new domain, you can restart your computer, and login with any user you created through the hda tab!



Old Directions

Open a terminal on your hda, or, if you use putty, open a connection to your hda.
Login as root:

su -

First, backup your smb.conf file, in case you run into problems you can easily revert back.

cp /etc/samba/smb.conf /etc/samba/smb_old.conf

next we need to modify the smb file, i use nano for this, you may use any editor you feel confortable with

nano /etc/samba/smb.conf

change the apropriate parts in the smb.conf.
Save your smb.conf

So at this point we need to create the corresponding directories:

mkdir /var/hda/domain-settings
mkdir /var/hda/domain-settings/netlogon
mkdir /var/hda/domain-settings/profiles

Each time you want a user to join the domain, a user needs to be added, this can be done through the users tab on the amahi dashboard.
aditionally, a profile directory needs to be created.

mkdir /var/hda/domain-settings/profiles/JanJacobs

JanJacobs is the user i created through the users tab of the amahi dashboard.
Since we are logging in as root, we need to change the ownership of the previously created directory to the corresponding owner:

chown -R JanJacobs /var/hda/domain-settings/profiles/JanJacobs

Now, this still doesnt allow us to login, because in samba, machines need to be added too!
this can be done automaticly, but for the time beeing we do it manually, amahi may facilitate this for you in the future.

useradd -s /bin/false -d /dev/null computername$
smbpasswd -a -m computername

Now as you can see there are some differences, when we added the Windows pc to Linux, we added the name computer name$, this tells Linux that it is a machine, not a name.
Next when we added the Samba password, we invoked the -m, this again tells Samba that we are adding a pc, not a person.
Also, you probably noticed that it did not prompt for a password, it just added computername$.
When you logon to the domain, Samba will read the password from your Windows password.
Now that this done, all what is left to do is restart Samba, this also has to be done for each computer you intend to login with.
no we dont add the $ sign, since all we do is adding an existing linux user to the samba password file.
we tell samba its a machine simply by adding the -m switch to the command.
At this point i have network logins working, using roaming profiles.

now its time to restart samba.

/etc/init.d/smb restart

Now you need to setup your Windows pc for domain logins.
(Note the first time that you join a Samba domain from Windows, you will need to join the domain by using root as the name, and your root password for the password.
After rebooting, any valid user will be able to access the domain.)