SAMBA като PDC

Калин Иванов


       kalata@linuxmail.org 
  

Юли 2004


Когато хората се замислят за централизирано управление на група от компютри се сещат за Primary Domain Controller (PDC). Заинтересовах от възможностите на SAMBA който може да бъде PDC и я настроих на FreeBSD 5.1.

Първото нещо от което имате нужда е Samba. (Това представлява система за достъп на Windows потребители до ресурсите на Linux или Unix странция или сървър)

http://www.samba.org

Няма да наблягам върху инсталацията на Samba, защото в повечето дистрибуции я има инсталирана. Ако наистина не разбирате как да си я качите прочетете README файла в разархивираната вече инсталационна директория на Samba.

Единственото от което се нуждаете е да конфигурирате конфигурационния файл и да се заредите с търпение.

Отваряте конфигурационния файл на samba обикновено в:

/etc/samba/smb.conf или /etc/smb.conf

Като начало ще покажа конфигурационния файл как съм го направил а след това ще обясня кое, как и защо съм го направил. В [global] секцията се конфигурират следните линии:

workgroup = DOMAIN #Името на домейна
netbios name = PDC #Името на сървъра
server string = Samba PDC Server #Коментар на сървъра
security = user #Използване на сървъра само от потребители
encrypt passwords = yes #Оторизация без plain-passwords
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
local master = yes #”упрявляващ” в локалната мрежата
os level = 33 # Коефициент за управляващия
domain master = yes #Управляващ в DOMAIN
admin users = admin #Администратор на DOMAIN
domain admin group = @adm #Група на Администраторите
domain logons = yes #Да може да деиства като DOMAIN
logon script = login.bat #Скрипт който да се зарежда при стартиране на машината
logon path = \\PDC\Profiles\%U # Къде да се съхранява информацията на Desktop-a
logon home = \\PDC\%U #Директория на потребителя
wins support = yes
wins proxy = yes
/p>

[homes] #Директории на потребителите на DOMAIN
comment = Home Directories
browseable = no
writeable = yes
valid users = %S
directory mode = 0700 #Права на достъп до директорията (само за тях)
create mode = 0600 #Права на файловете само от тях

[netlogon]
comment = Network Logon Service
path = /usr/local/samba/netlogon
read only = yes
write list = @adm
guest ok = yes
share modes = no
browsable=no

[Profiles]
path = /usr/local/samba/profiles
readonly = no
browseable = no
create mask = 0600
directory mask = 0700

[install]
comment = Install
path = /mnt
public = yes
writeable = yes
printable = no
write list = @adm


Като начало двата реда:

workgroup = DOMAIN #Името на домейна
netbios name = PDC #Името на сървъра

Представляват Workgroup с име DOMAIN защо се слагат? Защото когато отидете в
Properties->My Computer->Computer Name->Change… Излиза “Member of:” и там се задава DOMAIN: Domain Windows разпознава групата Domain като PDC и се опитва да се свърже с него.

След това:
security = user #Използване на сървъра само от потребители

С този ред се задава достъп до PDC само от потребители. Които после ще обясня как се администрират през “smbpasswd”.

domain logons = yes #Да може да деиства като DOMAIN
logon script = login.bat #Скрипт който да се зарежда при стартиране на машината
logon path = \\PDC\Profiles\%U # Къде да се съхранява информацията на Desktop-a
logon home = \\PDC\%U #Директория на потребителя

“domain logons” е опция която има за задача да активира Samba да действа като PDC
“logon script” задава скрипт-а който ще се активира при всяко стартиране на
потребителския компютър, който е в Domain-a.
По принцип в този скрипт се задава (примерно):

Net use s: \\PDC\install

Където install е шерната папка от сървъра и дава достъп на потребителя до “примерно” инсталационен софтуер. (тя е споделена по – надолу в самият конфигурационен файл) “logon path” представлява директория в която се записват всички настройки на потребителя, заедно с целия Desktop, My Documents и т.н. При всеки LogOff или ShutDown се записват настройките на сървъра. Profiles се дефинира по – надолу в конфиг-а.
“logon home” представлява личната директория на потребителя, Тя автоматично се задава като устройство в самият компютър. Чрез ‘logon drive” се задава устройстовото в кето да се намира личната директория. %U в Samba означава името на потребителя “username”

[homes] – задава личната директория до която има достъп само потребителя

Правата за самостоятелен достъп се задават със следните редове:

valid users = %S
directory mode = 0700 #Права на достъп до директорията (само за тях)
create mode = 0600 #Права на файловете само от тях

Тук “directory mode” задава правата на достъп до директории 0700 означава че само потребителя има достъп до директорията, а “create mode” и 0600 за самостоятелен достъп до файловете.
“valid users” са валидните потребители за Domain където %S са всички потребители на Domain.

[netlogon] – се задава за да може да се сложи служебна информация за отделните потребители. В нашият случай се слага в нея “login.bat”. Но също могат да се зададат и “Security Policies” (за момента не съм го правил).

[Profiles] – Както вече обясних това са директориите на потребителите, където автоматично се съхраняват данните за Desktop, My Documents и т.н. зададени със определените права.

Сега ще трябва да се вкарат потребители и машини в Domain-а. Регистрацията става много лесно.
Създавате група staff и adm:

addgroup adm
addgroup staff

Създавате user (потребител) чрез:
Adduser
Или направо:

useradd -g 100 -d /dev/null -c admin -m -s /bin/false admin$
useradd -g 101 -d /dev/null -c joro -m -s /bin/false joro$

където admin$ представлява името на компютъра в мрежата, а joro$ е името на потребителя, a “-g 100” е номера на групата (в този случай adm), a “-g 101” e групата staff.
За да се регистрират в Domain-а трябва по отделно да се регистират и потребител и машина. Това става със smbpasswd.


smbpasswd –a admin

А за да регистрира машина:

smbpasswd –m admin$

Така вкарвате всички машини в мрежата които искате да имат достъп до Domain и след това потребителите които искате да го ползват.


До тук нещата се настройват лесно. Но излизат винаги проблеми, както при мен отделих повече време на проблемите, отколкото на настройките. За да могат Windows машини да се свързват към Samba трябва да се инсталират някои
registry които можете да намерите в:

http://de.samba.org/samba/ftp/docs/Registry/

Те са за всички версии на Windows.

Ако сте пробвали дали машината която ще я вкарате в Domain има достъп до PDC тя е направила заявка към сървъра и е отворила \\PDC\IPC$. За да може да се свърже към Domain-а трябва тази връзка да я няма и затова преди да започнете напишете:

Net use * /delete

Ще ви покаже връзката към PDC която трябва да затворите. Иначе при влизането в Domain дава грешка за прекалено много връзки към Domain.

На теория вече трябва да е възможно един Windows който е регистриран в Domain да може да се свърже с него, затова сега отиваме в Properties->My Computer->Computer Name->Change… И променяме стойността на Domain: да бъде Domain (както се казва нашият Domain) След като направи компютъра връзка с Domain-а пита за администраторският акаунт,
който създадохме по – горе. След като го въведете “би трябвало” да изкара “Welcome to DOMAIN”. Но не винаги е така.

“A domain controller for the domain DOMAIN could not be contacted.” – Проверете дали Samba сървъра е пуснат или дали сте задали правилно IP адресите.

“Username or password incorrect” – ако сте сигурни, че администраторския акаунт е правилен тогава не сте създали машината във Domain. Това е обяснено по – горе как да я създадете.

Сега наистина трябва да може да се Log-не в Domain.

След като се LogOff вече имате меню в advanced settings на Login екрана да избирате между Domain и This Computer. Избирате Domain и въвеждате вашият потребител който сте създали преди това.

“Windows cannot update your roaming profile” – Това се получава когато директорията на потребителя в Profiles не е с неговите нива на достъп, затова отивате в

/usr/local/samba/profiles

chown user:nobody 755 user’sdirectory/

Автоматично Windows си създава своя поддиректория в която слага служебната информация за всеки потребител като всеки потребител си има своя собствена директория:

/usr/local/samba/profiles/admin
/usr/local/samba/profiles/joro

Така вече създадените потребители имат достъп до Domain. Както и вие си имате PDC.

Ако наистина има излезли проблеми които не съм написал или пропуснал, ще бъда благодарен да ги разясним.

Успех на всички които са решили да създават Domain чрез Samba.
Ако имате някакви въпроси, можете да се обърнете към мен на:
kalata@linuxmail.org

HTML tags и редакция Проект FreeBSD България

Последна промяна: $Author: miro $ $Date: 2004/07/27 01:03:46 $ © BG-FreeBSD