separator „\” używany w Windows. Opisywa-
na procedura powinna działać z następujący-
mi wersjami Windows:
MS Windows NT 4 Server, jako główny
kontroler domeny PDC (Primary Doma-
in Controller)
MS Windows 2000/2003 Server, jako kon-
troler domeny Active Directory
Wersja językowa serwerów nie ma znaczenia.
Nie ma również znaczenia, czy zostały zain-
stalowane aktualizacje Service Pack i hotfi-
xes. W okienku logowania KDE od razu za-
uważysz, czy dostępna jest opcja logowania
do domeny, ponieważ zostaną wyświetlane
wszystkie konta domenowe, których można
użyć do logowania. Pamiętaj, że opisywana da-
lej konfiguracja może zostać wykonana jedynie
przez doświadczonego użytkownika Linuksa.
Trzeba także pamiętać, że w przypadku Active
Directory opisywana konfiguracja będzie dzia-
łać jeśli domena będzie pracować w trybie „mi-
xed” – dopuszczającym korzystanie z niej przez
systemy inne niż Windows 2000.
Przygotowania po stronie
kontrolera domeny
Logowanie z poziomu Linuksa do domeny
Windows w zasadzie nie wymaga konfigura-
cji domeny, poza zmianą domyślnej nazwy
grupy użytkowników domenowych „Użyt-
kownicy domeny”. Ze względu na błąd w ser-
werze Samba, nazwa tej grupy nie może za-
wierać spacji, ponieważ przy próbie logowa-
nia na konsoli otrzymasz komunikat „[: too
many agruments”, choć system cię zaloguje.
Natomiast logowanie z poziomu KDE za-
kończy się niepowodzeniem. Żeby uniknąć
tego problemu trzeba na kontrolerze domeny
zmienić nazwę (widoczną dla systemów star-
szych niż Windows 2000) tej grupy np. na
„UżytkownicyDomeny”.
Przygotowanie Linuksa do
pracy w domenie
Aby można było logować się bezpośrednio do
domeny Windows NT/2000/2003, potrzebna
jest, co najmniej wersja 2.2.2 serwera Samba.
Samba 2.2.2 zawiera moduł „winbind”, który
jest odpowiedzialny za autoryzację w dome-
nie Win NT/2000. Gotowy do instalacji plik
RPM lub DEB, zawierający serwer Samba,
możesz ściągnąć z adresu http://pl.sam-
ba.org/samba/ftp/Binary_Packages/.
Pamiętaj, że przy takim trybie instalacji do-
tychczasowa konfiguracja Samby zostanie za-
pisana w pliku /etc/samba/smb.conf.rpmsav. Jeśli
jesteś doświadczonym administratorem Li-
nuksa, to najlepiej samodzielnie skompiluj
Sambę, ściągając najnowszą wersję kodu źró-
dłowego ze strony http://www.samba.org. Po
zainstalowaniu serwera Samba musisz wyko-
nać następujące czynności konfiguracyjne:
1. Zmień zawartość pliku /etc/nsswitch.conf
tak, żeby zawierał wpisy:
passwd:
compat winbind
shadow:
compat
group: compat winbind
2. Zmień plik „/etc/samba.d/smb.conf” tak,
żeby opcje w sekcji „[global]” wyglądały na-
stępująco:
domain master = No
local master = No
C
zy stacja robocza z Linuksem może
pracować w domenie Windows
NT/2000? Do niedawna było to nie-
możliwe, ale najnowsze wersje serwera Sam-
ba zawierają oprogramowanie, które na to
pozwala. Dzięki temu każdy użytkownik, po-
siadający konto w domenie, może się zalogo-
wać się do stacji roboczej z Linuksem nawet,
jeśli nie ma konta w samym Linuksie. Do do-
meny będziesz się logować bezpośrednio
z okienka menedżera logowania do KDE. Je-
dyna różnica jest taka, że nazwę użytkownika
podajemy w formacie:
LAB+pawel
Gdzie „LAB” to nawa domeny, a „pawel” to
nazwa konta w domenie. Znak „+” zastępuje
96
Luty 2004
www
.linux-magazine.pl
Linux w sieci Windows
LINUX USER
Linux może korzyst
ać z domeny W
indows
NT/2000, t
ak samo jak systemy firmy
Microsof
t. Daje to całkiem nowe
możliwości pracy w sieciach
firmowych.
PAWEŁ LESZEK
Linux w sieci Windows
Linux w domenie
Windows NT/2000/2003
Rysunek 1. Zmiana nazwy grupy użytkowników
domeny na taką, która nie zawiera spacji.
password server = *
security = domain
template homedir = /home/%D/%U
template shell = /bin/bash
winbind enum groups = yes
winbind enum users = yes
winbind gid = 10000-20000
winbind separator = +
winbind uid = 10000-20000
workgroup = domena
Oczywiście należy zastąpić słowo „domena”
nazwą (NetBIOS-ową) domeny NT/2000/
2003 do której chcesz się logować. Jeśli
chcesz korzystać z określonego kontrolera ja-
ko serwera haseł, to wpisz jego nazwę (Net-
BIOS-ową) w opcji password server.
3. Zmień plik /etc/pam.d/kde, który odpowia-
da za autoryzację w graficznym okienku logo-
wania KDE:
auth required pam_nologin.so
auth sufficient pam_winbind.so
auth required pam_pwdb.so
U
use_first_pass shadow nullok
account required pam_winbind.so
password required pam_cracklib.so
U
type=user retry=3
password required pam_pwdb.so
U
use_authtok
session required pam_mkhomedir.so
U
skel=/etc/skel umask=0022
session required pam_pwdb.so
4. Trzeba także zmienić plik /etc/pam.d/
kscreensaver, odpowiadający za autoryzację
użytkownika po zablokowaniu ekranu przez
wygaszacz ekranu:
auth sufficient pam_winbind.so
auth required pam_pwdb.so
U
use_first_pass shadow nullok
5. Plik /etc/pam.d/login – najważniejszy ze
wszystkich opisywanych – odpowiada za au-
toryzację w trybie znakowym oraz tworzenie
domyślnych plików konfiguracyjnych dla
użytkownika po pierwszym zalogowaniu:
auth required pam_securetty.so
auth required pam_nologin.so
auth sufficient pam_winbind.so
auth required pam_pwdb.so
U
use_first_pass shadow nullok
auth optional pam_mail.so
account required pam_winbind.so
session required pam_mkhomedir.so
U
skel=/etc/skel umask=0022
session required pam_pwdb.so
session optional pam_lastlog.so
password required pam_pwdb.so
6. Na koniec zmień plik /etc/pam.d/samba,
odpowiadający za autoryzację serwera Samba:
auth sufficient pam_winbind.so
auth required pam_pwdb.so
U
use_first_pass nullok nodelay
account sufficient pam_winbind.so
account required pam_pwdb.so
U
nodelay
session required pam_pwdb.so
U
nodelay
password required pam_pwdb.so
U
shadow md5
Przyłączanie Linuksa
do domeny
Każdy komputer, który ma pracować w do-
menie NT/2000/2003, musi mieć założone
domenowe konto komputera. Możesz je
utworzyć albo korzystając z narzędzi Win-
dows albo bezpośrednio z poziomu Linuksa
(pod warunkiem, że posiadasz uprawnienia
zakładania kont w domenie). Przy zakłada-
niu konta komputera z poziomu Windows
2000 (Active Directory) należy pamiętać, że-
by we właściwościach konta zaznaczyć opcję
„Zezwalaj na korzystanie z tego konta kom-
puterom starszym niż Windows 2000” (w
wersji angielskiej „Allow pre-Windows 2000
computers to use this account”). Z poziomu
Linuksa możesz dodać swój komputer do do-
meny Windows poleceniem:
smbpasswd -j domena -r kontroler
U
-U Administrator
Opcja „domena” oznacza nazwę domeny
(w konwencji NetBIOS), a „kontroler” to
nazwa kontrolera domeny, który ma być
użyty – w przypadku domeny Win NT po-
winien to być kontroler PDC, w przypadku
Active Directory (Windows 2000/2003) nie
ma to znaczenia.
Wykonaj następnie polecenie wbinfo -t na
konsoli znakowej. Powinieneś zobaczyć ko-
munikat „Secret is good” oznaczający, że
komputer jest prawidłowo identyfikowany
w domenie. Uruchom teraz polecenia wbinfo -
u oraz wbinfo -g. Na konsoli powinieneś zoba-
czyć listę wszystkich kont użytkowników
i grup w domenie. Ostatni test polega na wy-
konaniu próby autoryzacji w domenie. W tym
celu wykonaj polecenie:
wbinfo -a domena+konto_
U
uzytkownika%haslo
Gdzie „domena” to NetBIOS-owa nazwa do-
meny, „konto_uzytkownika” to konto w do-
menie, a „haslo” to oczywiście hasło do tego
konta, np. wbinfo -a LAB+pawel%qweasd.
W odpowiedzi na to polecenie powinieneś
otrzymać serię komunikatów zawierających
słowo „failed” i jeden zawierający słowo suc-
ceeded. Ta seria komunikatów oznacza, że
Samba przetestowała różne metody autory-
zacji w domenie i przynajmniej jedna z tych
prób powinna zakończyć się powodzeniem.
Jeśli wszystko jest OK, utwórz katalog /ho-
me/DOMENA, gdzie „DOMENA” to nazwa do-
meny w konwencji NetBIOS. Pamiętaj, że musi
być wpisana dużymi literami! W tym katalogu
będą automatycznie tworzone katalogi zawiera-
jące konta użytkowników domenowych. Nieste-
ty nie wszystkie katalogi i skróty na pulpit są po
pierwszym zalogowaniu kopiowane automa-
tycznie, dlatego należy przygotować specjalny
skrypt, który wykona to poprawnie:
#!/bin/sh
if! [ -d „$HOME/Desktop/Personal
U
Files” ]; then
cp -R -u /etc/skel/* „$HOME”
fi
Nadaj mu np. nazwę domena_update, ustaw
prawa dostępu poleceniem chmod a+x i sko-
piuj do katalogu /usr/local/bin. Skrypt ten
należy uruchomić jeden raz – po pierwszym
zalogowaniu z konta domenowego do KDE.
To już wszystko, jesteś gotowy do pracy
w domenie. Uruchom ponownie system
i spróbuj się zalogować na konto domenowe
– ich listę powinieneś zobaczyć w okienku lo-
gowania KDE. Pamiętaj, że jeśli nie uda się
logowanie do domeny, to zawsze pozostaje
możliwość zalogowania na konta istniejące
w Linuksie lokalnie.
■
97
www
.linux-magazine.pl
Luty 2004
LINUX USER
Linux w sieci Windows
Rysunek 2. Zakładanie konta komputera w Ac-
tive Directory z poziomu przystawki MMC.