
Även om den inte kan agera som en Active Directory Primary Domain Controller (PDC), kan en Samba-server konfigureras för att visas som en domänkontrollant i Windows NT4 stil. En betydande fördel med den här konfigurationen är förmågan att centralisera användare och maskinreferenser. Samba kan även använda flera bakändesystem till att lagra användarinformation.
Detta avsnitt behandlar konfigurationen av Samba som en Primär domänkontrollant (PDC) genom att använda standard-bakändesystemet för smbpasswd.
Install Samba and libpam-smbpass to sync the user accounts, by entering the following in a terminal prompt:
sudo apt-get install samba libpam-smbpass
Next, configure Samba by editing
/etc/samba/smb.conf
. The security mode should be set to user, and the workgroup should relate to the organization properly:workgroup = EXAMPLE ... security = user
In the commented “Domains” section, add or uncomment the following:
domain logons = yes logon path = \\%N\%U\profile logon drive = H: logon home = \\%N\%U logon script = logon.cmd add machine script = sudo /usr/sbin/useradd -N -g machines -c Machine -d /var/lib/samba -s /bin/false %u
domain logons: tillhandahåller tjänsten Netlogon som medför att Samba fungerar som en domänkontrollant.
logon path: placerar användarens Windows-profil i deras hemmakatalog. Det är också möjligt att konfigurera en delad [profiles] och placera alla profiler under en enda katalog.
logon drive: specificerar hemmakatalogens lokala sökväg.
logon home: specificerar hemmakatalogens plats.
logon script: fastställer vilket skript som skall köras lokalt när en användare har loggat in. Skriptet måste placeras i delningen [netlogon].
add machine script: ett skript som automatiskt skapar ett Machine Trust Account som är nödvändigt för att ansluta en arbetsstation till en domän.
In this example, the machines group will need to be created using the addgroup utility. See Basics for details.
Note
If Roaming Profiles will not be used, leave the logon home and logon path options commented.
Avkommentera delningen [homes] för att tillåta logon home att bli ansluten:
[homes] comment = Home Directories browseable = no read only = no create mask = 0700 directory mask = 0700 valid users = %S
When configured as a domain controller, a [netlogon] share needs to be configured. To enable the share, uncomment:
[netlogon] comment = Network Logon Service path = /srv/samba/netlogon guest ok = yes read only = yes share modes = no
Note
The original netlogon share path is
/home/samba/netlogon
, but according to the Filesystem Hierarchy Standard (FHS), /srv is the correct location for site-specific data provided by the system.Skapa nu katalogen
netlogon
, och en (för tillfället) tomlogon.cmd
skriptfil:sudo mkdir -p /srv/samba/netlogon sudo touch /srv/samba/netlogon/logon.cmd
Any normal Windows logon script commands can be entered in
logon.cmd
to customize the client's environment.With root being disabled by default, in order to join a workstation to the domain, a system group must be mapped to the Windows Domain Admins group. Using the net utility, from a terminal enter:
sudo net groupmap add ntgroup="Domain Admins" unixgroup=sysadmin rid=512 type=d
Note
Change sysadmin to the preferred group. The user used to join the domain needs to be a member of the sysadmin group, as well as a member of the system admin group. The admin group allows sudo use.
Slutligen, starta om Samba för att aktivera den nya domänkontrollanten:
sudo /etc/init.d/samba restart
It is now possible to join Windows clients to the Domain in the same manner as joining them to an NT4 domain running on a Windows server.
With a Primary Domain Controller (PDC) on the network, it is best to have a Backup Domain Controller (BDC) as well. This will allow clients to authenticate in case the PDC becomes unavailable.
When configuring Samba as a BDC, there must be a way to sync account information with the PDC. There are multiple ways of accomplishing this, such as scp, rsync, or by using LDAP as the passdb backend.
Using LDAP is the most robust way to sync account information, because both domain controllers can use the same information in real time. However, setting up a LDAP server may be overly complicated for a small number of user and computer accounts. See Samba LDAP page for details.
Börja med att installera samba och libpam-smbpass. Från en terminal skriv:
sudo apt-get install samba libpam-smbpass
Redigera nu
/etc/samba/smb.conf
och avkommentera följande i [global]:workgroup = EXAMPLE ... security = user
I den kommenterade Domains avkommentera eller lägg till:
domain logons = yes domain master = no
Säkerställ att en användare har läsrättigheter till filer i
/var/lib/samba
. till exempel, för att tillåta användare i gruppen admin till scp filerna, skriv:sudo chgrp -R admin /var/lib/samba
Nästa steg, synkronisera användarkontona, genom att använda scp till att kopiera katalogen
/var/lib/samba
från PDCn:sudo scp -r username@pdc:/var/lib/samba /var/lib
Note
Replace username with a valid username and pdc with the hostname or IP Address of the actual PDC.
Till sist, starta om samba:
sudo /etc/init.d/samba restart
Test that the Backup Domain controller is working by stopping the Samba daemon on the PDC, then trying to login to a Windows client joined to the domain.
If the logon home option has been configured as a directory on the PDC, and the PDC becomes unavailable, access to the user's Home drive will also be unavailable. For this reason, it is best to configure the logon home to reside on a separate file server from the PDC and BDC.
För detaljerad konfigurering av Samba, se Samba HOWTO Collection
Den här guiden finns också tillgänglig i ett utskrivet format.
O'Reilly's Using Samba är en annan bra referens.
Chapter 4 of the Samba HOWTO Collection explains setting up a Primary Domain Controller.
Chapter 5 of the Samba HOWTO Collection explains setting up a Backup Domain Controller.