Przes�anianie hase� (Shadow Password)

Autor: Michael H. Jackson, mhjack@tscnet.com
v1.3, 3 Kwietnia 1996
Wersja polska: Bartosz Maruszewski B.Maruszewski@jtz.org.pl
v1.02, 26 Lipca 1997


Dokument ten opisuje jak zdoby�, zainstalowa� i skonfigurowa� pakiet Shadow Password dla Linux-a. Om�wione zosta�o tutaj tak�e zdobywanie i (ponowna) instalacja oprogramowania oraz demon�w sieciowych, kt�re potrzebuj� dost�pu do hase� u�ytkownika. Oprogramowanie to nie jest w�a�ciw� cz�ci� pakietu Shadow Suite, ale b�d� one musia�y zosta� przekompilowane, aby m�c korzysta� z hase�. Jest tutaj tak�e zawarty przyk�ad dla programist�w, jak dodawa� obs�ug� przes�anianych hase� w swoich programach. Pod koniec dokumentu zawarte zosta�y odpowiedzi na cz�sto zadawane pytania. Dokument ten zosta� napisany w standardzie ISO-8859-2. Orygina� mo�na znale�� pod adresem ftp.icm.edu.pl w katalogu /pub/Linux/sunsite/docs/HOWTO.

1. Wprowadzenie.

Jest to dokument z serii HOWTO (czyli Jak To Zrobi�). Opisuje on jak i dlaczego instalowa� obs�ug� "shadow password" na swoim Linux-ie. Zawarte jest tak�e kilka przyk�ad�w na u�ywanie pewnych w�a�ciwo�ci pakietu Shadow Suite.

Podczas instalacji pakietu oraz u�ywania jego narz�dzi musisz by� zalogowany jako "root". Podczas instalacji b�dziesz dokonywa� pewnych zmian do oprogramowania systemowego i zalecane jest, aby� zrobi� kopi� tego oprogramowania. Zalecam te�, aby� przeczyta� i zrozumia� wszystkie instrukcje zawarte tutaj zanim zaczniesz.

1.1 Zmiany w stosunku do poprzedniej wersji.

Dodane sekcje:
   Doda�em sekcj� na temat dlaczego m�g�by� niechcie� instalowa�
   pakietu Shadow Suite.
   Doda�em sekcj� jak uaktualni� xdm-a.
   Doda�em sekcj� jak zmusi� do dzia�ania specjalne w�a�ciwo�ci pakietu
   Shadow Suite.
   Doda�em sekcj� zawieraj�c� cz�sto zadawane pytania.

Poprawki/Uaktualnienia:   
   Poprawi�em odwo�ania html do sunsite-a.
   Poprawi�em sekcj� na temat wu-ftpd, aby odzwierciedla�a dodawanie
   -lshadow do pliku Makefile.
   Poprawi�em kilka liter�wek.
   Zmieni�em sekcj� na temat wu-ftpd, aby obs�ugiwa� ELF.
   Uaktualni�em ca�y dokument, aby odzwierciedla� problemy bezpiecze�stwa
   w r�nych programach.
   Doda�em rekomendacj� pakietu Linux Shadow Suite napisanego
   przez Marka Micha�kiewicza

1.2 Nowe wersje tego dokumentu.

Najnowsz� wersj� orygina�u tego dokumentu mo�na �ci�gn�� z ftp.icm.edu.pl z katalogu /pub/Linux/sunsite/docs/HOWTO. Inne formaty znajduj� si� w katalogu other-formats. Albo poprzez sie� WWW z sunsite.icm.edu.pl. Mo�na te� bezpo�rednio od autora. Autor b�dzie te� wysy�a� nowe wersje na grup� dyskusyjn� comp.os.linux.answers

Dokument ten jest tak�e rozprowadzany wraz z dystrybucj� pakietu Shadow-YYDDMM.

Na temat nowych wersji t�umaczenia zobacz sekcj� Od t�umacza.

1.3 Komentarze.

Prosz� wszelkie komentarze, uaktualnienia czy sugestie wysy�a� do mnie. Im szybciej otrzymam poczt� tym szybciej mog� poprawi� ten dokument. Je�li masz jakie� uwagi na jego temat, to wy�lij je bezpo�rednio do mnie, poniewa� bardzo rzadko odwiedzam grupy dyskusyjne.

2. Po co przes�ania� plik passwd ?

W chwili obecnej wi�kszo�� dystrybucji Linux-a nie instaluje domy�lnie pakietu Shadow Suite. Dotyczy to Slackware 2.3, Slackware 3.0 i innych popularnych dystrybucji. Jednym z powod�w tego jest to, �e je�li zap�acono jak�� kwot� za Shadow Suite to prawa co do redystrybucji nie by�y do ko�ca jasne. Linux u�ywa licencji GNU, kt�ra pozwala na umieszczanie go w dowolnych pakietach (jak np. dystrybucje CD-ROM) i pobieranie za nie op�aty.

Obecny opiekun pakietu Shadow Suite, Marek Micha�kiewicz otrzyma� �r�d�a orygina�u na licencji w stylu BSD, kt�ra pozwala na dystrybucj�. Teraz, kiedy ju� sprawy praw kopiowania s� rozwi�zane, spodziewane jest, �e przysz�e dystrybucje b�d� zawiera� domy�lnie przes�anianie hase�. Jednak do tego czasu, b�dziesz musia� je samemu instalowa�.

Je�li instalowa�e� swoj� dystrybucj� z CD-ROM-u, to pomimo, �e dystrybucja nie zainstalowa�a Shadow Suite niekt�re pliki, kt�rych potrzebujesz mog� si� znajdowa� na CD-ROM-ie.

Wersje pakietu 3.3.1, 3.3.1-2 i shadow-mk maj� problemy dotycz�ce bezpiecze�stwa ze swoim programem login i kilkoma innymi programami typu suid root i nie powinny by� ju� u�ywane.

Wszystkie potrzebne pliki s� dost�pne poprzez anonimowane ftp oraz WWW.

W Linux-ie bez zainstalowanego pakietu Shadow Suite informacje o u�ytkowniku wraz z has�em trzymane s� w pliku /etc/passwd. Has�o znajduje si� tam w formie zakodowanej (encrypted). Jednak je�li spytasz jakiego� eksperta od kryptografii, to powie ci on/ona, �e has�o jest w postaci "encoded", a nie "encrypted" poniewa� u�ywaj�c funkcji crypt(3), tekstowi jest przypisywany �a�cuch pusty a has�o jest kluczem. Dlatego, od tego momentu b�d� u�ywa� okre�lenia "encoded".

Algorytm u�ywany do kodowania has�a jest technicznie okre�lany jako algorytm dzia�aj�cy w jedn� stron�. Jest to algorytm, kt�ry jest �atwy do zastosowania w jedn� stron�, ale bardzo trudny do z�amania. Wi�cej na ten temat znajdziesz w sekcji 2.4 albo na stronie podr�cznika systemowego dotycz�cej funkcji crypt(3).

Kiedy u�ytkownik wybiera has�o, albo jest mu ono przydzielone, jest ono kodowane losowo generowan� warto�ci� zwan� salt (s�l). Oznacza to, �e ka�de has�o mo�e zosta� zakodowane na 4096 sposob�w. Warto�� salt jest potem zapisywana razem z zakodowanym has�em.

Kiedy u�ytkownik si� wlogowuje i podaje has�o, najpierw pobierana jest warto�� salt z zakodowanego has�a. Nast�pnie pobrane has�o zostaje zakodowane pobran� warto�ci�, i por�wnane z zapisanym zakodowanym has�em. Je�li �a�cuchy te s� identyczne, to u�ytkownik zostaje "wpuszczony" do systemu. Jest bardzo trudno (ale nie jest to niemo�liwe) wzi�� losowo zakodowane has�o i otrzyma� has�o rozkodowane. Chocia�, w ka�dym systemie z wi�ksz� liczb� u�ytkownik�w, przynajmniej kilka hase� b�dzie zwyk�ymi s�owami albo jak�� wariacj� zwyk�ych s��w.

W�amywacze wi�dz� o tym wszystkim i po prostu koduj� s�ownik ze s�owami i popularnymi has�ami wszytkimi mo�liwymi warto�ciami salt. Potem por�wnaj� wyniki z zawarto�ci� twojego pliku /etc/passwd. Jak znajd� jaki� identyczny �a�cuch, to maj� has�o na nast�pne konto. Nazywane jest to atakiem s�ownikowym i jest to jeden z najpopularniejszych sposob�w na pozyskiwanie dost�pu do systemu przez osoby nieuprawnione.

Je�li si� nad tym zastanowisz, to zobaczysz, �e 8-znakowe has�o mo�e zosta� zakodowane na 4096 * 13 sposob�w. Tak wi�c s�ownik sk�adaj�cy si� powiedzmy z 400.000 popularnych s��w, nazw, imion, hase� i ich prostych wariacji zmie�ci�by si� z �atwo�ci� na dysku o pojemno�ci 4GB. W�amywacz musi go tylko posortowa� i sprawdzi� czy kt�ry� z �a�cuch�w nie jest has�em. Dysk o pojemno�ci 4GB mo�na kupi� za ok. 1000 dolar�w, tak wi�c mie�ci si� to w mo�liwo�ciach wi�kszo�ci w�amywaczy systemowych.

Je�li w�amywacz zdob�dzie tw�j plik /etc/passwd, to musi on zakodowa� sw�j s�ownik kluczem, kt�ry znajduje si� w tym pliku. Metoda ta mo�e by� wykorzystana przez przeci�tnego nastolatka z kilkoma megabajtami na dysku i komputerem klasy 486.

Nawet bez du�ej ilo�ci wolnego miejsca na dysku, narz�dzia takie jak crack(1) mog� zwykle z�ama� przynajmniej kilka hase� z systemu z dostatecznie du�� ilo�ci� u�ytkownik�w (zak�adaj�c, �e u�ytkownicy maj� mo�liwo�� samemu wybiera� sobie has�a).

Plik /etc/passwd zawiera tak�e takie informacje jak ID u�ytkownika i ID grupy, kt�re s� u�ywane przez wi�kszo�� program�w. Dlatego plik /etc/passwd musi pozosta� odczytywalny dla ka�dego. Je�li chcia�e� w�a�nie zmieni� prawa dost�pu do pliku /etc/passwd tak, �eby nikt nie m�g� go czyta� (opr�cz "root-a"), to pierwszym symptomem jaki by� zauwa�y�, to to, �e przy wydaniu polecenia ls -l pojawi�yby si� numery zamiast nazw u�ytkownik�w.

Pakiet Shadow Suite rozwi�zuje ten problem poprzez umieszczenie hase� w innym pliku (z regu�y jest to /etc/shadow). Plik /etc/shadow ma tak ustawione prawa dost�pu, �e nie mo�e go czyta� nikt, opr�cz "root-a". Niekt�re programy jak np. xlock, nie musz� mie� mo�liwo�ci zmiany hase�, ale tylko ich odczytu. Programy te mog� albo by� uruchamiane z prawem "suid root", albo mo�esz doda� grup� shadow, kt�ra mia�aby tylko prawo odczytu pliku /etc/shadow. Program ten mo�e wtedy nale�e� do grupy "shadow" i by� uruchamiany z prawem "sgid".

Przenosz�c zakodowane has�a do innego pliku, efektywnie zabraniamy w�amywaczom dost�pu do nich, co uniemo�liwia ataki s�ownikowe.

Dodatkowo pakiet Shadow Suite posiada wiele innych zalet:

Instalacja pakietu Shadow Suite przyczynia si� do zwi�kszenia bezpiecze�stwa sieci opartej na Linux-ie, ale pozostaje jeszcze wiele innych rzeczy do zrobienia, aby zwi�kszy� bezpiecze�stwo takiej sieci. Z czasem pojawi si� seria HOWTO po�wi�cona bezpiecze�stwu.

Na stronie po�wi�conej bezpiecze�stwu w Linux-ie zawarte s� r�ne informacje na ten temat jak r�wnie� ostrze�enia o znanych dziurach w systemie.

2.1 Czemu mo�esz nie chcie� przes�ania� swojego pliku z has�ami ?

Jest kilka okoliczno�ci i konfiguracji, w kt�rych instalacja pakietu Shadow Suite nie by�aby dobrym pomys�em:

2.2 Format pliku /etc/passwd.

Nieprzes�oni�ty plik /etc/passwd ma nast�puj�cy format:

identyfikator:has�o:UID:GID:imie_nazw:katalog:pow�oka

Gdzie:

identyfikator

Nazwa (login) u�ytkownika

has�o

Zakodowane has�o

UID

Numer u�ytkownika

GID

Numer domy�lnej grupy dla u�ytkownika

imie_nazw

Imi� i nazwisko u�ytkownika - W�a�ciwie pole to nazywa si� GECOS (General Electric Comprehensive Operating System) i mog� tam by� zapisane inne dane ni� tylko imi� i nazwisko Polecenia Shadow i strony podr�cznika systemowego nazywaj� to pole polem komentarza.

katalog

Katalog domowy u�ytkownika (pe�na �cie�ka)

pow�oka

Pow�oka dla danego u�ytkownika (pe�na �cie�ka)

Na przyk�ad:

login:Nkjg97jh7yff8:503:100:Imi� Nazwisko:/home/login:/bin/bash

Gdzie Nk jest wartoci� salt a jg97jh7yff8 jest zakodowanym has�em. Zakodowane has�o z kluczem mog�oby r�wnie dobrze wygl�da� tak: ghHFgj75fR8iP a te dwa �a�cuchy to dok�anie te same has�a. Jest 4096 mo�liwo�ci zakodowania pojedynczego has�a. {Przyk�adowym has�em jest tutaj 'has�o' naprawd� z�y przyk�ad has�a.}

Jak ju� pakiet Shadow Suite jest zainstalowany, to plik /etc/passwd zawiera:

login:x:503:100:Imi� Nazwisko:/home/login:/bin/bash

Znaczek "x" w tym przypadku jest po prostu czym� co wype�nia miejsce has�a. Format pliku /etc/passwd si� nie zmieni�, zmieni�o si� tylko miejsce przechowywania zakodowanego has�a. Oznacza to, �e ka�dy program, kt�ry tylko czyta plik /etc/passwd,a nie zapisuje w nim has�a, b�dzie nadal dzia�a� poprawnie.

Has�a znajduj� si� obecnie w pliku /etc/shadow. (jest to domy�lna nazwa)

2.3 Format pliku przes�aniaj�cego.

Plik /etc/shadow zawiera nast�puj�ce informacje:

login:has�o:ostatnio_1970:mo�e:musi:ostrz:dni:dni_1970:zarez

Gdzie:

login

patrz /etc/passwd

has�o

Zakodowane has�o

ostatnio_1970

Ilo�� dni od 1 Stycznia 1970, kiedy has�o by�o ostatnio modyfikowane

mo�e

Ilo�� dni w przeci�gu, kt�rych has�o mo�e by� zmienione

musi

Ilo�� dni, po kt�rej has�o musi zosta� zmienione

ostrz

Ilo�� dni przed wyga�ni�ciem has�a od jakiej nale�y zacz�� informowa� u�ytkownika o wyga�ni�ciu has�a.

dni

Ilo�� dni, po kt�rej has�o wygasa i konto jest blokowane

dni_1970

Ilo�� dni od 1 Stycznia 1970, po kt�rej konto jest blokowane

zarez

Pole zarezerwowane

Poprzedni przyk�ad m�g� wi�c wygl�da� tak:

login:Nkjg97jh7yff8:9479:0:10000::::

2.4 Przegl�d funkcji crypt(3).

Ze strony podr�cznika systemowego "man":

"crypt jest funkcj� koduj�c� has�o. Oparta jest na algorytmie DES (Data Encryption Standard) z dozwolonymi wariacjami (mi�dzy innymi), aby zniech�ci� do sprz�towych rozwi�za� poszukiwania klucza.

Kluczem jest podane przez u�ytkownika has�o. [Zakodowany �a�cuch jest warto�ciami NULL]

Salt jest �a�cuchem 2-znakowym wybranym ze zbioru [a-zA-Z0-9]. �a�uch ten jest u�yty po to, aby zaburzy� algorytm w jeden z 4096 sposob�w.

Bior�c 7 najmniej znacz�cych bit�w ka�dego znaku z klucza otrzymujemy 56-bitowy klucz. Ten 56-bitowy klucz jest u�ywany, do powt�rnego kodowania sta�ego �a�cucha (zwykle s� to znaki NULL). Zwr�cona warto�� wskazuje na zakodowane has�o - seri� 13 drukowalnych znak�w ASCII (dwa pierwsze znaki reprezentuj� warto�� salt). Warto�� zwracana wskazuje na sta�e dane, kt�rych zawarto�� jest zmieniana przy ka�dym wywo�aniu.

Uwaga: Liczba mo�liwych warto�ci klucza to 2^56 = 7,2E16 (oko�o 72 biliard�w). Wyczerpuj�ce poszukiwania tego klucza s� mo�liwe przy wykorzystaniu wielu r�wnolegle wsp�pracuj�cych komputer�w. Oprogramowanie, takie jak crack(1), jest dost�pne i szuka ono takich kluczy, kt�re z regu�y u�ywane s� przez ludzi. Dlatego w�a�nie przy wybieraniu has�a powinno si� unika� przynajmniej zwyk�ych s��w. Zaleca si�, u�ywanie programu passwd(1), kt�re podczas zmiany has�a sprawdza czy nowe has�o nie jest przesadnie proste.

Algorytm DES ma w sobie pewne kruczki, kt�re czyni� u�ycie interfejsu crypt(3) bezu�ytecznym w przypadku innym ni� autentykacja hase�. Je�li masz zamiar u�ywa� interfejsu crypt(3) do kryptografii nie r�b tego: zdob�d� dobr� ksi��k� na temat kodowania (encryption) i jedn� z szeroko dost�pnych bibliotek DES."

Wi�kszo�� pakiet�w Shadow Suite zawiera kod zwi�kszaj�cy ilo�� znak�w w ha�le do 16. Eksperci od DES-a s� temu przeciwni, poniewa� w takim przypadku kodowanie najpierw odbywa si� dla lewej strony d�u�szego has�a, a potem dla prawej strony. Z powodu tego jak dzia�a crypt, mo�e to stworzy� mniej bezpiecznie zakodowane has�o ni� wtedy, gdy u�yte zosta�oby has�o kr�tsze. Dodatkowo, jest ma�o prawdopodobne, �eby u�ytkownik by� w stanie zapami�ta� has�o 16-znakowe.

Trwaj� w tej chwili prace, kt�re maj� na celu zast�pienie dotychczasowego algorytmu autentykacji czym� bardziej bezpiecznym oraz z obs�ug� d�u�szych hase� (szczeg�lnie algorytmem MD5) oraz pozostawienie kompatybilno�ci z metod� wykorzystuj�c� crypt.

Je�li szukasz dobrej ksi��ki na temat kodowania polecam:

        "Applied Cryptography: Protocols, Algorithms, and Source Code in C"
        by Bruce Schneier <schneier@chinet.com>
        ISBN: 0-471-59756-2

3. Zdobywanie pakietu Shadow Suite.

3.1 Historia pakietu Shadow Suite dla Linux-a.

NIE U�YWAJ PAKIET�W WYMIENIONYCH W TEJ SEKCJI, S� W NICH PROBLEMY Z BEZPIECZE�STWEM.

Orygina� pakietu Shadow Suite zosta� napisany przez John F. Haugh II.

Jest kilka wersji, kt�re by�y u�ywane na Linux-ie:

Pakiet shadow-mk zawiera pakiet shadow-3.3.1 dystrybuowany przez John F. Haugh II wraz z �at� shadow-3.3.1-2 patch, kilka poprawek zrobionych przez Mohan Kokal <magnus@texas.net>, kt�re uczyni�y instalacj� o wiele �atwiejsz�, �at� zrobion� przez Joseph R.M. Zbiciak, kt�ra eliminuje dziury w programie /bin/login zwi�zane z opcjami -f, -h oraz kilka innych �at.

Pakiet shadow-mk by� pakietem poprzednio rekomendowanym, ale powinien zosta� zamieniony z powodu problem�w z bezpiecze�stwem zwi�zanych z programem login.

W pakietach 3.3.1, 3.3.1-2 oraz shadow-mk s� problemy zwi�zane z programem login. B��d ten to niesprawdzanie d�ugo�ci podawanego identyfikatora. Powoduje to przepe�nienie bufora, co z kolei powoduje za�amania (crashes) programu albo gorzej. Podobno to przepe�nienie bufora mo�e by� wykorzystane przez kogo�, kto posiada konto w systemie w po��czeniu z bibliotekami dzielonymi, aby uzyska� przywileje root-a. Nie b�d� opisywa� jak dok�adnie dzia�a ten b��d poniewa� jest du�o system�w Linux-owych, kt�re s� zara�one, ale systemy z zainstalowanymi tymi pakietami Shadow Suite oraz wi�kszo�� system�w w wersji przed-ELF bez pakietu Shadow Suite s� podatne na atak!

Wi�cej informacji na ten temat znajdziesz na stronie po�wi�conej bezpiecze�stwu w Linux-ie. (Shared Libraries and login Program Vulnerability)

3.2 Gdzie znale�� pakiet Shadow Suite.

Jedyny polecany pakiet Shadow Suite jest wci�� w wersji BETA, chocia� najnowsze wersje s� bezpieczne w �rodowisku produkcji i nie zawieraj� podatnego na ataki programu login.

W pakiecie u�ywane jest nast�puj�ce nazewnictwo:

shadow-RRMMDD.tar.gz

gdzie RRMMDD oznacza dat� wprowadzenia pakietu w obieg.

Wersja ta ostatecznie b�dzie wersj� 3.3.3, kiedy zako�czone zostan� testy w wersji BETA, a obs�ugiwana jest przez Marka Micha�kiewicza <marekm@i17linuxb.ists.pwr.wroc.pl>.

Dost�pna jest jako shadow-current.tar.gz.

Dost�pna jest tak�e pod adresem ftp.icm.edu.pl.

Powiniene� u�y� najnowszej dost�pnej wersji.

NIE powiniene� u�ywa� wersji starszej ni� shadow-960129 poniewa� wyst�puje tam opisany powy�ej problem z programem login.

Je�li pisz� o pakiecie Shadow Suite, to mam na my�li ten w�a�nie plik. Zak�ada si� te�, �e tej w�a�nie wersji u�ywasz.

Aby napisa� ten dokument u�y�em tej w�a�nie wersji pakietu.

Je�li wcze�niej u�ywa�e� pakietu shadow-mk, powiniene� zaktualizowa� go do tej wersji i ponownie skompilowa� wszystko to, co pierwotnie przekompilowa�e�,

3.3 Co jest zawarte w pakiecie Shadow Suite.

Pakiet ten zawiera zast�pcze wersje dla program�w:
su, login, passwd, newgrp, chfn, chsh, id

Pakiet ten zawiera tak�e nowe programy: chage, newusers, dpasswd, gpasswd, useradd, userdel, usermod, groupadd, groupdel, groupmod, groups, pwck, grpck, lastlog, pwconv, pwunconv.

Dodatkowo znajduje si� tam tak�e biblioteka libshadow.a przeznaczona do pisania i kompilowania program�w, kt�re potrzebuj� dost�pu do hase� u�ytkownik�w.

Zawarte s� tak�e strony podr�cznika systemowego do wszystkich program�w.

Znajduje si� tam tak�e plik konfiguracyjny dla programu login, kt�ry zostanie zainstalowany jako /etc/login.defs.

4. Kompilacja program�w.

4.1 Rozpakowywanie archiw�w.

Pierwszym krokiem po �ci�gni�ciu programu jest rozpakowanie go. Pakiet jest w formie starowanej i skompresowany programem gzip, tak wi�c najpierw przenie� go do /usr/src, a potem napisz:

tar -xzvf shadow-current.tar.gz

Powstanie katalog /usr/src/shadow-RRMMDD, w kt�rym znajd� si� �r�d�a pakietu.

4.2 Konfiguracja w pliku config.h

Pierwsz� rzecz� jak� musisz zrobi�, to skopiowa� odpowiednie pliki Makefile i config.h:

cd /usr/src/shadow-RRMMDD
cp Makefile.linux Makefile
cp config.h.linux config.h

Potem powiniene� przejrze� plik config.h. Zawiera on definicje dla niekt�rych opcji konfiguracyjnych. Je�li u�ywasz zalecanego pakietu, to polecam wy��czenie na pocz�tek przes�anianie hase� grup.

Domy�lnie opcja ta jest w��czona. Aby to wy��czy�, wyedytuj plik config.h i zmie� #define SHADOWGRP na #undef SHADOWGRP. Na pocz�tek proponuje to wy�aczy�, a p�niej jak b�dziesz chcia� hase� dla grup i administrator�w grup, to mo�esz przekompilowa� pakiet. Je�li zostawisz t� opcj� w��czon� musisz stworzy� plik /etc/gshadow.

W��czanie opcji pozwalaj�cej na d�u�sze has�a nie jest zalecane - patrz wy�ej.

Opcja AUTOSHADOW zosta�a zaprojektowana, aby umo�liwi� dzia�anie programom, kt�re ignoruj� przes�anianie hase�. Teoretycznie brzmi to dobrze, ale niestety nie dzia�a poprawnie. Je�li w�aczysz t� opcj� i program zostanie uruchomiony z przywilejami "root-a", mo�e on wywo�a� funkcj� getpwnam() jako "root", a p�niej zapisa� zmienion� pozycj� spowrotem do pliku /etc/passwd (i has�o nie jest ju� przes�oni�te).

Do takich program�w zaliczaj� si� chfn i chsh. (Nie mo�esz obej�� tego przez zamian� rzeczywistego uid z efektywnym uid przed wywo�aniem funkcji getpwnam() poniewa� root tak�e mo�e u�ywa� chfn i chsh.)

To samo ostrze�enie jest s�uszne je�li kompilujesz bibliotek� libc, kt�ra posiada opcj� SHADOW_COMPAT, kt�ra robi to samo. Nie powinna ona by� u�ywana! Je�li zakodowane has�a zaczn� si� pojawia� spowrotem w pliku /etc/passwd, to to w�a�nie jest przyczyn�.

Je�li u�ywasz wcze�niejszej wersji biblioteki ni� 4.6.27, b�dziesz musia� zrobi� troch� wi�cej zmian w pliku config.h i Makefile.

W pliku config.h zmie�:

#define HAVE_BASENAME

na:

#undef HAVE_BASENAME

A nast�pnie w pliku Makefile zmie�:

SOBJS = smain.o env.o entry.o susetup.o shell.o \
        sub.o mail.o motd.o sulog.o age.o tz.o hushed.o

SSRCS = smain.c env.c entry.c setup.c shell.c \
        pwent.c sub.c mail.c motd.c sulog.c shadow.c age.c pwpack.c rad64.c \
        tz.c hushed.c

na:

SOBJS = smain.o env.o entry.o susetup.o shell.o \
        sub.o mail.o motd.o sulog.o age.o tz.o hushed.o basename.o

SSRCS = smain.c env.c entry.c setup.c shell.c \
        pwent.c sub.c mail.c motd.c sulog.c shadow.c age.c pwpack.c rad64.c \
        tz.c hushed.c basename.c

Zmiany te powoduj� zawarcie kodu z basename.c, kt�ry zawiera si� w libc 4.6.27 i p�niejszych.

4.3 Kopie zapasowe twoich oryginalnych program�w.

Dobrym pomys�em b�dzie zrobienie kopii zapasowych program�w, kt�re zostan� zamienione przez Shadow Suite. W dystrybucji Slackware 3.0 s� to:

Pakiet w wersji BETA ma mo�liwo�� wykonania tego poprzez program make, ale jest to w komentarzu w pliku Makefile, poniewa� r�ne dystrybucje umieszczaj� te programy w r�nych miejscach. Mo�na to zrobi� pisz�c: make save, ale najpierw trzeba skasowa� znaki # z pliku Makefile od linii: save:

Powiniene� tak�e zrobi� kopi� zapasow� pliku /etc/passwd, ale b�d� ostro�ny, �eby� nie zmaza� programu passwd w katalogu /etc.

4.4 Polecenie make

Aby zainstalowa� pakiet musisz by� zalogowany jako "root".

Uruchom make, aby skompilowa� programy wykonywalne:

make all

Mo�esz zobaczy� ostrze�enie: rcsid defined but not used. Wszystko jest w porz�dku, poniewa� autor u�ywa wersji kontrolnej pakietu.

5. Instalacja

5.1 Zaopatrz si� w dyskietk� startow� w razie gdyby� co� popsu�.

Je�li co� powa�nie p�jdzie nie tak, by�oby dobrze, gdyby� mia� dyskietk� startow�. Je�li masz dyskietki boot/root z czas�w instalacji, to w porz�dku, w innym przypadku przeczytaj Bootdisk-HOWTO, kt�re opisuje jak zrobi� dyskietk� startow�.

5.2 Usuwanie zduplikowanych stron podr�cznika systemowego.

Powiniene� tak�e przenie�� strony podr�cznika systemowego, kt�re zostan� zast�pione. Nawet je�li jeste� na tyle odwa�ny, �e instalujesz Shadow Suite bez kopii zapasowej, to i tak b�dziesz chcia� przenie�� stare strony podr�cznika systemowego. Nowe strony normalnie nie usun�yby starych, poniewa� te drugie s� przypuszczalnie skompresowane.

Mo�esz u�y� takiej kombinacji polece�: man -aW polecenie i locate polecenie, aby zlokalizowa� strony, kt�re maj� by� usuni�te czy przeniesione. Raczej �atwiej zrobi� to przed poleceniem make install.

Je�li u�ywasz dystrybucji Slackware 3.0, to oto strony, kt�re powiniene� usun��/przesun��:

W katalogu /var/man/cat[1-9] mog� znajdowa� si� strony o tych samych nazwach, kt�re tak�e powinny zosta� usuni�te/przeniesione.

5.3 Polecenie make install

Jeste� got�w, aby napisa� (zr�b to jako "root"):

make install

Zainstaluje to nowe programy i programy zast�pcze oraz ustawi odpowiednie prawa dost�pu do plik�w. Zostan� tak�e zainstalowane strony podr�cznika systemowego.

S� tu tak�e instalowane pliki nag��wkowe w odpowiednich miejscach w /usr/include/shadow.

Je�li u�ywasz wersji BETA tego pakietu, to musisz r�cznie skopiowa� plik login.defs do katalogu /etc i upewni� si�, �e tylko "root" mo�e go modyfikowa�.

cp login.defs /etc
chmod 600 /etc/login.defs

Plik ten jest plikiem konfiguracyjnym dla programu login. Powiniene� go przejrze� i odpowiednio zmodyfikowa� jego zawarto�� zgodnie z twoimi wymaganiami. To tutaj decydujesz, z kt�rych terminalli (tty) mo�e zalogowa� si� "root" oraz ustawiasz inne opcje bezpiecze�stwa (np. domy�lne wygasanie hase�).

5.4 Polecenie pwconv

Nast�pnym krokiem jest polecenie pwconv. Musi ono tak�e by� wykonane jako "root" i najlepiej w katalogu /etc:

cd /etc
/usr/sbin/pwconv

Program pwconv tworzy z pliku /etc/passwd dwa pliki: /etc/npasswd i /etc/nshadow.

Dost�pny jest tak�e program pwunconv je�li musisz zrobi� normalny plik /etc/passwd z plik�w /etc/passwd i /etc/shadow.

5.5 Zmiany nazw plik�w npasswd i nshadow

Teraz, kiedy ju� wykona�e� polecenie pwconv, stworzy�e� dwa pliki - /etc/npasswd i /etc/nshadow. Ich nazwy musz� zosta� zmienione odpowiednio na /etc/passwd i /etc/shadow. Chcemy tak�e zrobi� kopi� oryginalnego pliku /etc/passwd i upewni� si�, �e tylko "root" mo�e go czyta�. Kopi� zapasow� umie�cimy w katalogu domowym "root-a":

cd /etc
cp passwd ~/passwd
chmod 600 ~/passwd
mv npasswd passwd
mv nshadow shadow

Powiniene� si� tak�e upewni�, czy w�a�ciciel plik�w i prawa dost�pu s� poprawne. Je�li masz zamiar u�ywa� XWindows, to programy xlock i xdm musz� mie� mo�liwo�� odczytu pliku shadow, ale nie zapisu.

S� dwa sposoby na zrobienie tego. Mo�esz ustawi� bit "SUID" dla programu xlock (chmod u+s xlock); xdm ma z regu�y ten bit ustawiony. Albo mo�esz przydzieli� plik /etc/shadow do grupy shadow, ale zanim to zrobisz, sprawd� czy masz grup� shadow w pliku /etc/group. W�a�ciwie �aden z u�ytkownik�w systemu nie powinien by� w tej grupie.

cd /etc
chown root.root passwd
chown root.shadow shadow
chmod 0644 passwd
chmod 0640 shadow

Tw�j system ma teraz przes�oni�te has�a. Powiniene� teraz przej�� na inny wirtualny terminal i sprawdzi� czy mo�esz si� zalogowa�

Zr�b to teraz - naprawd� !

Je�li nie mo�esz, to co� jest nie tak ! Aby powr�ci� do stanu sprzed instalacji Shadow Suite zr�b to:

cd /etc
cp ~/passwd passwd
chmod 644 passwd

Przywracasz w ten spos�b stare pliki, kt�re wcze�niej zachowa�e�, na ich w�a�ciwe miejsce.

6. Inne programy, kt�re mo�e musisz uaktualni� albo "za�ata�".

Pomimo, i� pakiet Shadow Suite posiada zast�pcze programy dla wi�kszo�ci program�w, kt�re potrzebuj� dostepu do hase�, to prawie w ka�dym systemie s� jeszcze dodatkowe programy, kt�re potrzebuj� dost�pu do hase�.

Je�li masz dystrybucj� Debian (a nawet je�li nie masz), mo�esz znale�� �r�d�a program�w, kt�re musz� by� przerobione pod tym adresem.

Reszta tej sekcji opisuje jak uaktualni� programy: adduser, wu_ftpd, ftpd, pop3d, xlock, xdm i sudo tak, aby obs�ugiwa�y przes�oni�te has�a.

Aby dowiedzie� si� jak zrobi� obs�ug� przes�oni�tych hase� w jakimkolwiek innym programie zobacz sekcj� Obs�uga przes�anianych hase� w programach w C. (Programy te i tak musz� by� uruchomione z bitem "SUID" dla "root-a" albo grupy shadow, aby rzeczywi�cie mie� dost�p do hase�.)

6.1 Program adduser z dystrybucji Slackware.

Dystrybucja Slackware (i pewnie inne) zawiera interaktywny program s�u��cy do dodawania nowych u�ytkownik�w - /sbin/adduser. Wersj� tego programu obs�uguj�c� przes�oni�te has�a mo�na pobra� np. z ftp.icm.edu.pl z katalogu /pub/Linux/sunsite/system/admin/accounts/.

Ja zalecam u�ywanie program�w, kt�re s� dostarczane wraz z pakietem Shadow Suite (useradd, usermod, i userdel) zamiast adduser z dystrybucji Slackware. Co prawda nauczenie si� jak si� nimi pos�ugiwa� zabiera troch� czasu, ale op�aca si� to poniewa� masz o wiele wi�ksz� kontrol� i maj� one poprawne blokowanie plik�w (file locking) /etc/passwd i /etc/shadow - adduser tego nie robi.

Wi�cej informacji w nast�pnej sekcji - Wprowadzanie pakietu Shadow Suite do u�ycia..

Ale je�li ju� musisz go mie�, oto co musisz zrobi�:

tar -xzvf adduser.shadow-1.4.tar.gz
cd adduser
make clean
make adduser
chmod 700 adduser
cp adduser /sbin

6.2 Serwer wu_ftpd.

Wraz z wi�kszo�ci� dystrybucji Linux-a przychodzi serwer wu_ftpd. Je�li twoja dystrybucja nie instaluje domy�lnie pakietu Shadow Suite, to tw�j serwer wu_ftpd nie b�dzie skompilowany z obs�ug� przes�oni�tych hase�. wu_ftpd jest odpalany z inetd/tcpd jako proces "root-a". Je�li tw�j demon wu_ftpd jest star� wersj�, to b�dziesz chcia� j� uaktualni� tak czy inaczej poniewa� stare wersje maj� pewien b��d, kt�ry kompromituje konto "root". (Wi�cej informacji znajdziesz na Stronie Domowej Bezpiecze�stwa na Linuxie).

Na szcz�cie musisz tylko zdoby� �r�d�a tego programu i skompilowa� go z w��czon� obs�ug� "Shadow password".

Je�li nie masz systemu ELF, to serwer wu_ftpd mo�esz znale�� na SUNSite Polska - nazywa si� wu_ftpd-2.4-fixed.tar.gz

Jak ju� �ci�gniesz te �r�d�a, to wtedy napisz:

cd /usr/src
tar -xzvf wu-ftpd-2.4-fixed.tar.gz
cd wu-ftpd-2.4-fixed
cp ./src/config/config.lnx.shadow ./src/config/config.lnx

Potem zmie� w pliku ./src/makefiles/Makefile.lnx lini�:

LIBES = -lbsd -support

na:

LIBES = -lbsd -support -lshadow

Teraz mo�esz uruchomi� skrypt kompiluj�cy i zainstalowa� pakiet:

cd /usr/src/wu-ftpd-2.4-fixed
/usr/src/wu-ftp-2.4.fixed/build lnx
cp /usr/sbin/wu.ftpd /usr/sbin/wu.ftpd.old
cp ./bin/ftpd /usr/sbin/wu.ftpd

Polecenia te powoduj� u�ycie pliku konfiguracyjnego z obs�ug� hase� przes�anianych dla Linux-a, skompilowanie i instalacj� serwera.

U siebie na Slackware 2.3 musia�em dodatkowo przed kompilacj� zrobi� co� takiego:

cd /usr/include/netinet
ln -s in_systm.h in_system.h
cd -

Zg�aszane by�y problemy z kompilacj� na systemie binarnym ELF, ale wersja BETA nast�pnej wersji dzia�a dobrze. Mo�na j� znale�� pod adresem ftp.icm.edu.pl pod nazw� wu-ftp-2.4.2-beta-10.tar.gz.

Jak ju� �ci�gniesz serwer umie�� go w /usr/src i napisz:

cd /usr/src
tar -xzvf wu-ftpd-2.4.2-beta-9.tar.gz
cd wu-ftpd-beta-9
cd ./src/config

Potem zmie� w pliku config.lnx:

#undef SHADOW.PASSWORD

na:

#define SHADOW.PASSWORD

Potem:

cd ../Makefiles

i zmie� w pliku Makefile.lnx

LIBES = -lsupport -lbsd # -lshadow

na:

LIBES = -lsupport -lbsd  -lshadow

Nast�pnie skompiluj i zainstaluj:

cd ..
build lnx
cp /usr/sbin/wu.ftpd /usr/sbin/wu.ftpd.old
cp ./bin/ftpd /usr/sbin/wu.ftpd

Zauwa�, �e powiniene� sprawdzi� w /etc/inetd.conf katalog, w kt�rym tw�j serwer rzeczywi�cie si� znajduje. Powiadomiono mnie, �e niekt�re dystrybucje umieszczaj� demony serwer�w w innych miejscach, a wtedy wu_ftpd mo�e si� znajdowa� gdzie indziej.

6.3 Standardowy ftpd.

Je�li masz u siebie standardowy serwer ftpd, zaleca�bym zmian� na wu_ftpd. Poza znan� dziur� om�wion� wcze�niej, wu_ftpd jest uznany za bardziej bezpieczny.

Je�li nalegasz na standardowy, albo potrzebujesz obs�ugi NIS, to na SUNSite Polska znajdziesz ftpd-shadow-nis.tgz.

6.4 pop3d (Post Office Protocol 3)

Je�li potrzebujesz obs�ugi Post Office Protocol 3, b�dziesz musia� skompilowa� ponownie program pop3d. Normalnie jest on uruchamiany przez inetd/tcpd jako "root".

Na SUNSite Polska dost�pne s� dwie wersje:

Obie s� raczej proste do zainstalowania.

6.5 xlock

Je�li zainstalujesz pakiet Shadow Suite i uruchomisz XWindows, a nast�pnie zablokujesz (lock) ekran nie uaktualniaj�c programu xlock, b�dziesz musia� u�y� CTRL+ALT+Fx, aby prze��czy� si� na wirtualn� konsol� tekstow� (je�li masz jak��), zalogowa� si� i zlikwidowa� proces xlock (albo u�y� CTRL+ALT+BACKSPACE �eby zamkn�� XWindows). Na szcz�cie uaktualnienie programu xlock jest do�� proste.

Je�li masz XFree86 wersja 3.x.x, przypuszczalnie u�ywasz xlockmore (kt�ry jest wspania�ym "screensaver-em" w po�aczeniu z "lock"). Nast�puj�cy pakiet obs�uguje przes�oni�te has�a - xlockmore-3.5.tgz a dost�pny jest z SUNSite Polska. Je�li masz starsz� wersj� zalecam uaktualnienie do tej.

Oto "z grubsza" to, co musisz zrobi�:

Tw�j xlock b�dzie teraz dzia�a� poprawnie.

6.6 xdm

xdm jest programem, kt�ry prezentuje ekran "loguj�cy" dla XWindows. Niekt�re systemy startuj� ten program kiedy system ma si� uruchomi� w odpowiednim "runlevel-u" (zobacz /etc/inittab).

Je�li zainstalowa�e� przes�aniane has�a, musisz uaktulani� ten program. Na szcz�cie jest to do�� proste:

xdm.tar.gz mo�na �ci�gn�� z SUNSite Polska.

�ci�gnij ten plik i umie�� go w /usr/src, potem go rozpakuj: tar -xzvf xdm.tar.gz.

Zmie� w pliku /usr/X11R6/lib/X11/config/linux.cf lini�

#define HasShadowPasswd NO

na:

#define HasShadowPasswd YES

Skompiluj pliki wykonywalne:

cd /usr/src/xdm
xmkmf
make depend
make

Potem umie�� wszystko na swoim miejscu cp xdm /usr/X11R6/bin/.

xdm jest uruchamiany jako "root" tak wi�c nie musisz zmienia� jego praw dost�pu.

6.7 sudo

Program sudo pozwala administratorowi na udost�pnianie zwyk�ym u�ytkownikom program�w, kt�re wymagaj� uprawnie� "root-a". Jest to po�yteczne poniewa� mo�na ogranicza� dost�p do konta "root" i jednocze�nie pozwala� u�ytkownikom np. montowa� urz�dzenia.

sudo musi przeczyta� has�o poniewa� weryfikuje u�ytkownika kiedy jest uruchamiane. sudo jest uruchamiane z bitem SUID "root" tak wi�c nie ma problemu z dost�pem do pliku /etc/shadow.

Program ten z obs�ug� hase� przes�anianych dost�pny jest na SUNSite Polska pod nazw� sudo-1.2-shadow.tgz.

Uwaga: Podczas instalacji tego programu usuni�ty zostanie plik /etc/sudoerrs i zast�piony domy�lnym przychodz�cym razem z pakietem. Tak wi�c zr�b sobie kopi� zapasow� je�li robi�e� tam jakie� zmiany. Albo mo�esz usun�� linijk� kasuj�c� ten plik z pliku Makefile.

Obs�uga przes�anianych hase� jest ju� ustawiona w pakiecie, tak wi�c wszystko co trzeba zrobi�, to przekompilowa� go. Po umieszczeniu go w /usr/src napisz:

cd /usr/src
tar -xzvf sudo-1.2-shadow.tgz
cd sudo-1.2-shadow
make all
make install

6.9 pppd (Serwer Protoko�u Point-to-Point)

Serwer pppd mo�e zosta� tak ustawiony, aby u�ywa� r�nych typ�w autentykacji:
Password Authentication Protocol (PAP) i Cryptographic Handshake Authentication Protocol (CHAP). Serwer pppd zwykle czyta �a�uchy hase� z /etc/ppp/chap-secrets i/albo z /etc/ppp/pap-secrets. Je�li u�ywasz tego domy�lnego zachowania serwera pppd, to przeinstalowywanie go nie jest konieczne.

pppd pozwala tak�e na u�ycie parametr�w login-u (albo z wiersza polece�, albo z pliku konfiguracyjnego, albo z pliku z opcjami). Je�li jest podana jaka� opcja login-u, to pppd u�yje pliku /etc/passwd, �eby zweryfikowa� identyfikator i has�o dla PAP. To oczywi�cie nie zadzia�a odk�d nasz plik z has�ami jest przes�aniany. Je�li u�ywasz pppd-1.2.1d, to b�dziesz musia� doda� kod do obs�ugi hase� przes�anianych.

Podany w dalszej cz�ci przyk�ad dodaje obs�ug� dla tej w�a�nie wersji.

Wersja pppd-2.2.0 ma ju� w sobie obs�ug� przes�anianych hase�.

7. Wprowadzanie pakietu Shadow Suite do u�ycia.

Sekcja ta opisuje kilka rzeczy kt�re b�dziesz chcia� wiedzie� jak ju� zainstalowa�e� pakiet Shadow Suite. Dalsze informacje zawarte s� na stronach podr�cznika systemowego na temat ka�dego polecenia.

7.1 Dodawanie, Modyfikacja i usuwanie u�ytkownik�w.

Pakiet Shadow Suite doda� nast�puj�ce polecenia do dodawania, modyfikacji i usuwania u�ytkownik�w. S� one obs�ugiwane z wiersza polece� przez parametry (mog�e� tak�e zainstalowa� program adduser).

useradd.

Polecenie useradd mo�e zosta� u�yte, aby doda� u�ytkownika do systemu. Wykonujesz je tak�e, �eby zmieni� domy�lne ustawienia.

Pierwsz� rzecz� jak� powiniene� zrobi�, to sprawdzi� ustawienia domy�lne na twoim systemie i odpowiednio je zmieni�:

useradd -D


GROUP=1
HOME=/home
INACTIVE=0
EXPIRE=0
SHELL=
SKEL=/etc/skel

Warto�ci domy�lne to pewnie nie s� te, kt�re chcesz u�ywa�, tak wi�c je�li zacz��by� dodawa� u�ytkownik�w teraz, to musia�by� podawa� informacje dla ka�dego u�ytkownika. Jednak mo�emy i powinni�my zmieni� warto�ci domy�lne:

Aby zrobi� takie zmiany napisa�bym:

useradd -D -g100 -e60 -f0 -s/bin/bash

Teraz uruchomienie useradd -D poka�e:


GROUP=100
HOME=/home
INACTIVE=0
EXPIRE=60
SHELL=/bin/bash
SKEL=/etc/skel

W razie gdyby� chcia� wiedzie�, to warto�ci te s� zapisywane w /etc/default/useradd.

Teraz mo�esz u�y� polecenia useradd, aby doda� u�ytkownik�w do systemu. Na przyk�ad, aby doda� u�ytkownika fred u�ywaj�c warto�ci domy�lnych napisa�by�:

useradd -m -c "Fred Flintstone" fred

Stworzy to nast�puj�c� pozycj� w /etc/passwd:

fred:*:505:100:Fred Flinstone:/home/fred:/bin/bash

oraz nast�puj�c� pozycj� w /etc/shadow:

fred:!:0:0:60:0:0:0:0

Utworzony zostanie katalog domowy freda oraz skopiowana zostanie tam zawarto�� katalogu /etc/skel z powodu opcji -m.

Poniewa� nie podali�my UID-u u�yty zostanie nast�pny wolny.

Konto freda b�dzie utworzone, ale nie b�dzie on si� m�g� zalogowa� dop�ki go nie odblokujemy. Zrobimy to przez zmian� has�a:

passwd fred


Changing password for fred
Enter the new password (minimum of 5 characters)
Please use a combination of upper and lower case letters and numbers.
New Password: *******
Re-enter new password: *******

Teraz w /etc/shadow b�dzie:

fred:J0C.WDR1amIt6:9559:0:60:0:0:0:0

A fred b�dzie m�g� si� teraz zalogowa� i korzysta� z systemu. Najlepsze w u�yciu program�w, kt�re przychodz� razem z pakietem Shadow Suite jest to, �e wszelkie zmiany plik�w /etc/passwd i /etc/shadow s� wykonywane z tzw. blokowaniem. Ta wi�c je�li dodajesz u�ytkownika do systemu a inny u�ytkownik w�a�nie sobie zmienia has�o, to obie operacje zostan� wykonane poprawnie.

Powiniene� u�ywa� raczej dostarczonych program�w ni� edytowa� r�cznie pliki /etc/passwd i /etc/shadow. Je�li edytowa�e� plik /etc/shadow i jaki� u�ytkownik zmienia� sobie w tym samym czasie has�o, to po zapisaniu zmian dokonanych przez ciebie nowe has�o u�ytkownika zginie.

Oto ma�y interaktywny skrypt, kt�ry dodaje nowego u�ytkownika u�ywaj�c useradd i passwd:


#!/bin/bash
#
# /sbin/newuser - Skrypt dodaj�cy u�ytkownik�w do systemu u�ywaj�cego
#                 program�w useradd z pakietu Shadow Suite i passwd.
#
# Napisany przez Mike'a Jacksona <mhjack@tscnet.com> jako przyk�ad do 
# Shadow-Password-HOWTO. Pozwolenie na u�ywanie i modyfikacje wyra�nie dane.
#
# Mo�naby ten skrypt zmodyfikowa� tak, �eby pokazywa� warto�ci domy�lne
# oraz pozwala� na modyfikacj� podobnie jak program adduser ze Slackware.
# Mo�naby te� sprawdza� b��dy, czy g�upie warto�ci.
# 
#
##
# Warto�ci domy�lne dla polecenia useradd
##
GROUP=100        # Domy�lna grupa
HOME=/home       # Katalog domowy (/home/identyfikator)
SKEL=/etc/skel   # Katalog szkieletowy
INACTIVE=0       # Ilo�� dni, po kt�rych wygasa has�o.
EXPIRE=60        # Ilo�� dni, przez kt�r� ma istnie� has�o
SHELL=/bin/bash  # Domy�lna pow�oka (pe�na �cie�ka)
##
# Warto�ci domy�lne dla polecenia passwd
##
PASSMIN=0        # Ilo�� dni mi�dzy kt�r� zmienia si� has�o
PASSWARN=14      # Ilo�� dni przed wyga�ni�ciem has�a kiedy jest
#                  wysy�ana wiadomo�� ostrzegaj�ca.
##
#            Upewnij si�, �e "root" uruchomi� ten skrypt
##
WHOAMI=`/usr/bin/whoami`
if [ $WHOAMI != "root" ]; then
        echo "You must be root to add news users!"
        exit 1
fi
##
#   Zapytaj o identyfikator i imi� i nazwisko
##
echo ""
echo -n "Username: "
read USERNAME
echo -n "Full name: "
read FULLNAME
#
echo "Adding user: $USERNAME."
#
# Zauwa�, �e wymagane s� "" przy $FULLNAME poniewa� pole to b�dzie
# prawie zawsze zawiera�o przynajmniej jedn� spacj�, a bez " polecenie
# useradd "pomy�la�oby", �e jest to nast�pny parametr kiedy dosz�oby
# do spacji.
#
/usr/sbin/useradd -c"$FULLNAME" -d$HOME/$USERNAME -e$EXPIRE \
        -f$INACTIVE -g$GROUP -m -k$SKEL -s$SHELL $USERNAME
##
# Ustaw domy�lne warto�ci dla has�a
##
/bin/passwd -n $PASSMIN -w $PASSWARN $USERNAME >/dev/null 2>&1
##
# Niech polecenie passwd zapyta poprawnie (dwa razy) o has�o
##
/bin/passwd $USERNAME
##
# Poka�, co zosta�o zrobione
##
echo ""
echo "Entry from /etc/passwd:"
echo -n "   "
grep "$USERNAME:" /etc/passwd
echo "Entry from /etc/shadow:"
echo -n "   "
grep "$USERNAME:" /etc/shadow
echo "Summary output of the passwd command:"
echo -n "   "
passwd -S $USERNAME
echo ""

U�ycie skryptu do dodawania u�ytkownik�w do systemu jest na prawd� bardziej preferowane ni� r�czna edycja plik�w /etc/passwd czy /etc/shadow czy te� u�ywanie programu adduser ze Slackware. Mo�esz �mia�o modyfikowa� ten skrypt dla swoich potrzeb.

Wi�cej informacji na temat useradd znajdziesz w podr�czniku systemowym.

usermod.

Program usermod u�ywany jest do modyfikowania informacji na temat danego u�ytkownika. Opcje tego programu s� podobne do opcji programu useradd.

Powiedzmy, �e chcesz zmieni� pow�ok� dla freda; zrobi�by� to tak:

usermod -s /bin/tcsh fred

Teraz pozycja dotycz�ca freda w /etc/passwd zmieni�aby si� na:

fred:*:505:100:Fred Flinstone:/home/fred:/bin/tcsh

Za��my, �e chcemy, �eby konto freda wygas�o 15.09.1997:

usermod -e 09/15/97 fred <-- data w stylu angielskim-ameryka�skim (mmddrr)

Teraz pozycja dotycz�ca freda w /etc/shadow zmieni�aby si� na:

fred:J0C.WDR1amIt6:9559:0:60:0:0:10119:0

Wi�cej informacji na temat usermod znajdziesz w podr�czniku systemowym.

userdel.

userdel robi dok�adnie to czego si� spodziewa�e� - kasuje konto podanego u�ytkownika. U�ycie jest proste:

userdel -r <identyfikator>

Opcja -r powoduje skasowanie wszystkich plik�w z katalogu domowego u�ytkownika. Plik�w zlokalizowanych w innym systemie plik�w trzeba poszuka� i skasowa� je r�cznie.

Je�li chcesz tylko zablokowa� dane konto, a nie skasowa� to u�yj polecenia passwd.

7.2 Polecenie passwd i "termin wa�no�ci" has�a.

Polecenie passwd u�ywane jest do zmiany has�a. Opr�cz tego u�ywane jest przez "root-a" do:

Na przyk�ad, sp�jrzmy jeszcze raz na freda:

passwd -S fred
fred P 03/04/96 0 60 0 0

Oznacza to, �e has�o freda jest wa�ne, ostatnio by�o zmieniane 04.03.1996, mo�e by� zmienione w ka�dej chwili, wygasa po 60 dniach, fred nie zostanie ostrze�ony oraz konto nie zostanie zablokowane po wyga�ni�ciu has�a.

Oznacza to po prostu tyle, �e kiedy fred zaloguje si� po wyga�ni�ciu has�a zostanie zaraz na pocz�tku poproszony o podanie nowego has�a.

Je�li zdecydujemy si�, �e chcemy ostrzec freda na 14 dni przed wyga�ni�ciem jego has�a i zablokowa� jego konto 14 dni po wyga�ni�ciu has�a trzebaby napisa� tak:

passwd -w14 -i14 fred

Teraz dane o fredzie zmiani�y si� na:

fred P 03/04/96 0 60 14 14

Wi�cej informacji na temat passwd znajdziesz w podr�czniku systemowym.

7.3 Plik login.defs

Plik /etc/login jest plikiem konfiguracyjnym dla programu login oraz dla ca�ego pakietu Shadow Suite.

/etc/login zawiera ustawienia od tego jak b�d� wygl�da� znaki zach�ty do tego jakie domy�lne warto�ci b�d� dla wygasania has�a kiedy u�ytkownik je sobie zmieni.

Plik /etc/login.defs jest do�� dobrze udokumentowany ju� przez same komentarze w nim zawarte. Chocia� jest kilka rzeczy do odnotowania:

Z powy�szej listy wynika, �e jest to raczej wa�ny plik i powiniene� si� upewni�, �e istnieje i �e ustawienia s� takie jak chcia�e�.

7.4 Has�a dla grup.

Plik /etc/groups mo�e zawiera� has�a, kt�re pozwalaj� u�ytkownikom do��czy� si� do jakiej� grupy. Funkcja ta jest w��czona je�li zdefiniujesz sta�� SHADOWGRP w pliku /usr/src/shadow-YYMMDD/config.h .

Je�li j� zdefiniujesz i skompilujesz pakiet, musisz utworzy� plik /etc/gshadow, �eby trzyma� tam has�a grup i informacje administracyjne.

Do utworzenia pliku /etc/shadow u�y�e� programu pwconv; nie ma odpowiednika do utworzenia pliku /etc/gshadow, ale to nie ma znaczenia bo plik ten sam si� sob� zajmuje.

Aby stworzy� pocz�tkowy plik /etc/gshadow zr�b tak:

touch /etc/gshadow
chown root.root /etc/gshadow
chmod 700 /etc/gshadow

Jak b�dziesz tworzy� nowe grupy, zostan� one dodane do /etc/group i /etc/gshadow.

Do modyfikacji grup s�u�� programy dostarczane wraz z pakietem Shadow Suite: groups, groupadd, groupmod i groupdel.

Format pliku /etc/group jest taki:

nazwa_grupy:!:GID:cz�onek,cz�onek,...

Gdzie:

nazwa_grupy

- chyba nie wymaga wyja�niania :)

!

- w tym miejscu normalnie by�oby has�o, ale teraz jest ono w gshadow

GID

- numer grupy

cz�onek

- lista cz�onk�w grupy.

Format pliku /etc/gshadow jest taki:

nazwa_grupy:has�o:admin,admin,...:cz�onek,cz�onek,...

Gdzie:

nazwa_grupy

- chyba nie wymaga wyja�niania :)

has�o

- zakodowane has�o grupy

admin

- lista administrator�w grupy

cz�onek

- lista cz�onk�w grupy

Polecenie gpasswd jest u�ywane tylko do dodawania i usuwania cz�onk�w do/z grupy. "root" i ka�dy z administrator�w grupy mo�e usuwa� i dodawa� cz�onk�w.

Has�o dla grupy mo�e by� zmienione za pomoc� polecenia passwd przez "root-a" i ka�dego z administrator�w grupy.

Chocia� nie ma strony do podr�cznika systemowego dla gpasswd, to zrozumienie opcji tego polecenia nie jest takie trudne jak ju� rozumiesz jego format i koncept. gpasswd bez �adnych parametr�w poda opcje jakie przyjmuje.

7.5 Programy do sprawdzania poprawno�ci.

pwck

Program pwck sprawdza poprawno�� plik�w /etc/passwd i /etc/shadow. Sprawdzi ka�dego u�ytkownika czy ma:

Ostrze�e nas tak�e je�li znajdzie konta bez hase�.

Uruchomienie tego programu po zainstalowaniu pakietu Shadow Suite jest dobrym pomys�em. Powinno sie go tak�e uruchamia� okresowo - co tydzie�, co miesi�c. Je�li u�yjesz opcji -r, to mo�esz u�y� programu cron, aby uruchamia� pwck okresowo i dostawa� raport poczt�.

grpck

Program ten sprawdza poprawno�� plik�w /etc/group i /etc/gshadow. Sprawdza:

Ma tak�e opcj� -r do automatycznych raport�w.

7.6 Has�a przez telefon. (Dial-up)

Has�a przez telefon s� inn� opcjonaln� lini� obrony dla system�w, kt�re umo�liwiaj� dost�p przez telefon. Je�li masz system z du�� ilo��i� u�ytkownik�w ��cz�cych si� lokalnie albo poprzez sie�, ale chcesz ograniczy� kto mo�e sie po��czy�, to "has�a przez telefon" s� dla ciebie. Aby w�aczy� "has�a przez telefon" musisz wyedytowa� plik /etc/login.defs i upewni� si�, �e DIALUPS_CHECK_ENAB jest ustawione na yes.

S� dwa pliki, kt�re zawieraj� informacje o po��czeniach przez telefon: /etc/dialups, kt�ry zawiera "tty" (jeden na lini� bez "/dev/"). Je�li dany tty jest tam zawarty to po��czenie jest sprawdzane; oraz /etc/d_passwd z pe�n� �cie�k� dost�pu do pow�oki oraz opcjonalnym has�em.

Je�li u�ytkownik zaloguje si� na lini�, kt�ra jest podana w /etc/diulups i jego pow�oka jest podana w /etc/d_passwd, to b�dzie m�g� si� zalogowa� tylko po podaniu poprawnego has�a.

Innym u�ytecznym celem "hase� przez telefon" mo�e by� ustawienie linii, kt�ra pozwala tylko na po��czenia konkretnego rodzaju (np. PPP lub/i UUCP). Je�li u�ytkownik pr�buje si� po��czy� inaczej (np. list� pow�ok), to musi zna� has�o na t� lini�.

Zanim b�dziesz m�g� u�ywa� tych w�a�ciwo�ci musisz stworzy� te pliki.

Polecenie dpasswd przypisuje has�a do konkretnych pow�ok zawartych w pliku /etc/d_passwd. Wi�cej informacji znajdziesz na stronie podr�cznika systemowego.

8. Obs�uga przes�anianych hase� w programach w C.

Dodawanie obs�ugi hase� przes�anianych do program�w jest ca�kiem proste. Jedynym problemem jest to, �e program musi zosta� uruchomiony z prawami "root-a", aby mie� dost�p do pliku /etc/shadow.

Tutaj pojawia si� jeden wielki problem: podczas pisania takich program�w nale�y si� trzyma� jak naj�ci�lej zasad bezpiecze�stwa. Na przyk�ad je�li program posiada wyj�cie do pow�oki, to nie mo�e si� to zdarzy� na prawach "root-a".

Je�li program musi mie� dost�p do /etc/shadow i nie potrzebuje wi�cej praw "root-a", to lepiej uruchomi� go z prawami grupy "shadow". Program xlock jest przyk�adem takiego programu.

W przyk�adzie podanym ni�ej, pppd-1.2.1d jest ju� uruchomiony z prawami "root-a", tak wi�c dodanie obs�ugi hase� przes�anianych nie powinno zagrozi� bezpiecze�stwu.

8.1 Pliki nag��wkowe.

Pliki te powinny znajdowa� si� w /usr/include/shadow. Powinien tam by� tak�e plik /usr/include/shadow.h, ale b�dzie to symboliczne do�aczenie do /usr/include/shadow/shadow.h.

Aby doda� obs�ug� hase� przes�anianych do programu, musisz do��czy� pliki nag��wkowe:

#include <shadow/shadow.h>
#include <shadow/pwauth.h>

Dobrym pomys�em by�oby u�ycie dyrektyw kompilatora, aby skompilowa� warunkowo kod z obs�ug� hase� przes�anianych. (tak jak w przyk�adzie poni�ej.)

8.2 Biblioteka libshadow.a

Biblioteka ta zosta�a zainstalowana w /usr/lib jak instalowa�e� pakiet Shadow Suite.

Kiedy kompilujesz obs�ug� przes�aniancyh hase� w programie trzeba poinformowa� "linker-a", aby do��czy� bibliotek� libshadow.a.

Robi si� to tak:

gcc program.c -o program -lshadow

Chocia� jak zobaczymy w poni�szym przyk�adzie, wi�kszo�� du�ych program�w u�ywa plik�w Makefile i ma zwykle zmienn� LIBS=..., kt�r� si� modyfikuje.

8.3 Struktura Shadow.

Biblioteka libshadow.a u�ywa struktury spwd dla informacji, kt�re otrzyma z pliku /etc/shadow. Oto definicja tej struktury wzi�ta z /usr/include/shadow/shadow.h:


struct spwd
{
  char *sp_namp;                /* identyfikator */
  char *sp_pwdp;                /* zakodowane has�o */
  sptime sp_lstchg;             /* data ostatniej zmiany */
  sptime sp_min;                /* minimalna ilo�� dni mi�dzy zmianami */
  sptime sp_max;                /* maksymalna ilo�� dni mi�dzy zmianami */
  sptime sp_warn;               /* ilo�� dni przed wyga�ni�ciem has�a
                                   kiedy b�dzie wysy�ane ostrze�enie */
  sptime sp_inact;              /* ilo�� dni, po jakiej wygasa has�o
                                   dop�ki konto nie b�dzie zablokowane */
  sptime sp_expire;             /* ilo�� dni od 01.01.1970 dop�ki
                                   konto nie wyga�nie */
  unsigned long sp_flag;        /* zarezerwowane na przysz�o�� */
};

Do pola sp_pwdp mo�na dodatkowo wstawi� nawz� programu:

identyfikator:Npge08pfz4wuk;@/sbin/extra:9479:0:10000::::

Oznacza to, �e opr�cz podania has�a b�dzie wykonany program /sbin/extra, kt�ry wykona dalsz� autentykacj�. Wywo�any program otrzyma identyfikator i prze��cznik, kt�ry okre�li dlaczego zosta� wywo�any. Wi�cej informacji znajdziesz w /usr/include/shadow/pwauth.h i pwauth.c.

Oznacza to, �e powinni�my u�y� funkcji pwauth do przeprowadzenia poprawnej autentykacji, poniewa� zajmie si� ona tak�e drug� autentykacj�. Jest to u�yte w przyk�adzie poni�ej.

Autor pakietu Shadow Suite twierdzi, �e odk�d wi�kszo�� program�w tego nie stosuje, mo�e to zosta� usuni�te lub zmienione w przysz�ych wersjach pakietu.

8.4 Funkcje pakietu Shadow Suite.

Plik shadow.h zawiera deklaracje funkcji zawartych w bibliotece libshadow.a:


extern void setspent __P ((void));
extern void endspent __P ((void));
extern struct spwd *sgetspent __P ((__const char *__string));
extern struct spwd *fgetspent __P ((FILE *__fp));
extern struct spwd *getspent __P ((void));
extern struct spwd *getspnam __P ((__const char *__name));
extern int putspent __P ((__const struct spwd *__sp, FILE *__fp));

Funkcja, kt�r� u�yjemy w przyk�adzie to getspnam, kt�ra odczyta struktur� spwd dla podanego identyfikatora.

8.5 Przyk�ad.

Jest to przyk�ad na dodanie obs�ugi hase� przes�anianych do programu, kt�ry tego potrzebuje, ale nie ma domy�lnie w��czonego.

Przyk�ad ten u�ywa serwera Point-to-Point Protocol (pppd-1.2.1d), kt�ry ma tryb do autentykacji PAP u�ywaj�c identyfikatora i has�a z pliku /etc/passwd zamiast z plik�w PAP czy CHAP. Nie musisz dodawa� tego kodu do pppd-2.2.0, poniewa� on ju� tam jest.

Ta w�a�ciwo�� pppd przypuszczalnie nie jest cz�sto u�ywana, ale je�li zainstalowa�e� Shadow Suite, to serwer ten nie b�dzie dzia�a� poniewa� has�a nie s� ju� zapisywane w /etc/passwd.

Kod do autentykacji u�ytkownik�w przez pppd-1.2.1d umieszczony jest w pliku /usr/src/pppd-1.2.1d/pppd/auth.c.

Poni�szy kod musi zosta� dodany na pocz�tku pliku gdzie znajduj� si� wszystkie inne dyrektywy #include. Otoczyli�my je dyrektywami warunkowymi (czyli skompiluj� si� tylko je�li kompilujemy z w�aczon� obs�ug� hase� przes�anianych).


#ifdef HAS_SHADOW
#include <shadow.h>
#include <shadow/pwauth.h>
#endif

Nast�pnym krokiem jest modyfikacja w�a�ciwiego kodu. Ci�gle modyfikujemy plik auth.c.

Funkcja auth.c przed modyfikacj�:


/*
 * login - Check the user name and password against the system
 * password database, and login the user if OK.
 *
 * returns:
 *      UPAP_AUTHNAK: Login failed.
 *      UPAP_AUTHACK: Login succeeded.
 * In either case, msg points to an appropriate message.
 */
static int
login(user, passwd, msg, msglen)
    char *user;
    char *passwd;
    char **msg;
    int *msglen;
{
    struct passwd *pw;
    char *epasswd;
    char *tty;

    if ((pw = getpwnam(user)) == NULL) {
        return (UPAP_AUTHNAK);
    }
     /*
     * XXX If no passwd, let them login without one.
     */
    if (pw->pw_passwd == '\0') {
        return (UPAP_AUTHACK);
    }

    epasswd = crypt(passwd, pw->pw_passwd);
    if (strcmp(epasswd, pw->pw_passwd)) {
        return (UPAP_AUTHNAK);
    }

    syslog(LOG_INFO, "user %s logged in", user);

    /*
     * Write a wtmp entry for this user.
     */
    tty = strrchr(devname, '/');
    if (tty == NULL)
        tty = devname;
    else
        tty++;
    logwtmp(tty, user, "");             /* Add wtmp login entry */
    logged_in = TRUE;

    return (UPAP_AUTHACK);
}

Has�o u�ytkownika jest umieszczane w pw->pw_passwd, tak �e wszystko co musimy zrobi�, to doda� funkcj� getspnam. Umie�ci to has�o w spwd->sp_pwdp.

Dodamy funkcj� pwauth, aby przeprowadzi� w�a�ciw� autentykacj�. Przeprowadzi to tak�e drug� autentykacj� je�li plik shadow jest odpowiednio ustawiony.

Funkcja auth.c po modyfikacji do obs�ugi hase� przes�anianych:


/*
 * login - Check the user name and password against the system
 * password database, and login the user if OK.
 *
 * This function has been modified to support the Linux Shadow Password
 * Suite if USE_SHADOW is defined.
 *
 * returns:
 *      UPAP_AUTHNAK: Login failed.
 *      UPAP_AUTHACK: Login succeeded.
 * In either case, msg points to an appropriate message.
 */
static int
login(user, passwd, msg, msglen)
    char *user;
    char *passwd;
    char **msg;
    int *msglen;
{
    struct passwd *pw;
    char *epasswd;
    char *tty;

#ifdef USE_SHADOW
    struct spwd *spwd;
    struct spwd *getspnam();
#endif

    if ((pw = getpwnam(user)) == NULL) {
        return (UPAP_AUTHNAK);
    }

#ifdef USE_SHADOW
        spwd = getspnam(user);
        if (spwd)
                pw->pw_passwd = spwd->sp-pwdp;
#endif
 
     /*
     * XXX If no passwd, let NOT them login without one.
     */
    if (pw->pw_passwd == '\0') {
        return (UPAP_AUTHNAK);
    }
#ifdef HAS_SHADOW
    if ((pw->pw_passwd && pw->pw_passwd[0] == '@'
         && pw_auth (pw->pw_passwd+1, pw->pw_name, PW_LOGIN, NULL))
        || !valid (passwd, pw)) {
        return (UPAP_AUTHNAK);
    }
#else
    epasswd = crypt(passwd, pw->pw_passwd);
    if (strcmp(epasswd, pw->pw_passwd)) {
        return (UPAP_AUTHNAK);
    }
#endif

    syslog(LOG_INFO, "user %s logged in", user);

    /*
     * Write a wtmp entry for this user.
     */
    tty = strrchr(devname, '/');
    if (tty == NULL)
        tty = devname;
    else
        tty++;
    logwtmp(tty, user, "");             /* Add wtmp login entry */
    logged_in = TRUE;

    return (UPAP_AUTHACK);
}

Po dok�adnym prze�ledzaniu tego kodu oka�e si�, �e zrobili�my jeszcze jedn� zmian�. Oryginalna wersja pozwala�a na dost�p (zwraca�a UPAP_AUTHACK) je�li nie by�o has�a w pliku /etc/passwd. Nie jest to dobrze, poniewa� popularnym u�yciem tej w�a�ciwo�ci programu login jest u�ywanie jednego konta, na dost�p do programu PPP, a potem sprawdzenie identyfikatora i has�a dostarczonych przez PAP z tymi w plikach /etc/passwd i /etc/shadow.

Tak wi�c je�li ustwiliby�my oryginaln� wersj�, aby uruchamia�a pow�ok� dla u�ytkownika np. ppp, to ka�dy m�g�by uzyska� po��czenie ppp przez podanie identyfikatora ppp i pustego has�a.

Poprawili�my to przez zwr�cenie UPAP_AUTHNAK zamiast UPAP_AUTHACK je�li pole z has�em jest puste.

Interesuj�ce jest to, �e pppd-2.2.0 ma ten sam problem.

Nast�pnie musimy zmodyfikowa� plik Makefile tak, �eby pojawi�y si� dwie rzeczy:
USE_SHADOW musi by� zdefiniowane i libshadow.a musi by� dodana w procesie "linkowania".

Wyedytuj plik Makefile i dodaj:

LIBS = -lshadow

Potem znajd� lini�:

COMPILE_FLAGS = -I.. -D_linux_=1 -DGIDSET_TYPE=gid_t

i zmie� j� na:

COMPILE_FLAGS = -I.. -D_linux_=1 -DGIDSET_TYPE=gid_t -DUSE_SHADOW

Teraz kompilacja i instalacja.

9. Cz�sto zadawane pytania.

P: Kiedy� kontrolowa�em terminale z jakich m�g� si� logowa� "root" przez plik /etc/securettys, teraz nie wygl�da na to �eby dzia�a�o. Co jest grane ?

O: Teraz kiedy pakiet Shadow Suite jest zainstalowany plik /etc/securettys nie ma �adnego znaczenia. Terminale, z kt�rych mo�e si� zalogowa� "root" s� teraz podawane w pliku konfiguracyjnym /etc/login.defs. Pozycja w tym pliku mo�e wskazywa� na jaki� inny plik.

P: Zainstalowa�em pakiet Shadow Suite i nie mog� si� zalogowa�, co przegapi�em ?

O; Przypuszczalnie zainstalowa�e� pakiet i zapomnia�e� uruchomi� program pwconv albo zapomnia�e� skopiowa� /etc/npasswd na /etc/passwd oraz /etc/nshadow na /etc/shadow. Mo�esz musisz tak�e skopiowa� login.defs do /etc.

P: W sekcji o "xlock-u" by�o napisane, �eby zmieni� grup� pliku /etc/shadow na shadow, ale ja nie mam takiej grupy - co mam zrobi� ?

O: Mo�esz j� doda�. Po prostu wyedytuj plik /etc/group i dodaj lini� definiuj�c� grup� shadow. Musisz si� upewni�, �e numer grupy nie jest u�ywany przez �adn� inn� i musisz j� doda� przed pozycj� nogroup. Albo po prostu ustaw bit SUID dla programu xlock.

P: Jest jaka� lista dyskusyjna dla Linux Shadow Password Suite ?

O: Tak, ale jest ona dla rozwijaj�cych ten pakiet i dla testuj�cych wersje BETA. Mo�esz si� zapisa� na t� list� wysy�aj�c list na adres shadow-list-request@neptune.cin.net o tytule subscribe. Na li�cie tej dyskutuje si� w�a�ciwie o konkretnej serii shadow-YYMMSS. Powiniene� si� na ni� zapisa� je�li chcesz by� w��czony do dalszego rozwoju albo je�li zainstalowa�e� sobie ten pakiet i chcesz wiedzie� o nowszych wersjach.

P: Zainstalowa�em Shadow Suite, ale kiedy u�ywam polecenia userdel dostaj�: "userdel: cannot open shadow group file" - co zrobi�em �le ?

O: Skompilowa�e� pakiet z w��czon� opcj� SHADOWGRP, ale nie masz pliku /etc/gshadow. Musisz albo wyedytowa� plik config.h i skompilowa� ponownie pakiet albo stworzy� plik /etc/gshadow. Zobacz sekcj� dotycz�c� przes�anianych grup.

P: Zainstalowa�em Shadow Suite, ale zakodowane has�a pojawiaj� si� w pliku /etc/passwd, co jest ?

O: Albo w�aczy�e� opcj� AUTOSHADOW w pliku config.h, albo twoja biblioteka libc by�a skompilowana z opcj� SAHDOW_COMPAT. Musisz dowiedzie� si�, kt�re z tych dw�ch jest prawdziwe i skompilowa� ponownie.

10. Prawa autorskie podzi�kowania i r�ne.

10.1 Prawa autorskie

Linux Shadow Password HOWTO jest chronione prawami autorskimi Michaela H. Jacksona.

Dozwolone jest dystrybuowanie kopii tego dokumentu zak�adaj�c, �e wzmianka o prawach autorskich i to pozwolenie jest zawarte we wszystkich kopiach.

Dozwolone jest dytrybuowanie i kopiowanie modyfikowanych wersji tego dokumentu pod warunkami kopiowania z powy�szego akapitu, zak�adaj�c, �e zawarta jest jasna informacja, �e jest to wersja modyfikowana tego dokumentu.

Dozwolone jest kopiowanie i dystrybucja t�umacze� tego dokumentu na inne j�zyki pod warunkami dla wersji modyfikowanych wymienionymi wy�ej.

Dozwolone jest konwertowanie tego dokumentu na inne media pod warunkami podanymi powy�ej dla wersji modyfikowanych zak�adaj�c, �e informacja o �r�dle nowego dokumentu jest zawarta przez oczywisty odno�nik do dokumentu �r�d�owego w nowej wersji tego dokumentu. Je�li wyst�puj� jakie� w�tpliow�ci co do s�owa "oczywiste", w�a�ciciel praw autorskich rezerwuje sobie prawo decyzji.

10.2 Podzi�kowania i r�ne.

Przyk�ady kod�w dla auth.c zosta�y wzi�te z pppd-1.2.1d i ppp-2.1.0e, Copyright (c) 1993 and The Australian National University oraz Copyright (c) 1989 Carnegie Mellon University.

Podzi�kowania dla Marka Micha�kiewicza <marekm@i17linuxb.ists.pwr.wroc.pl> za napisanie i opiek� nad pakietem Shadow Suite dla Linux-a oraz za przejrzenie i komentarze do tego dokumentu.

Podzi�kowania dla Rona Tidda <rtidd@tscnet.com> za jego pomocne przejrzenie i testowanie.

Podzi�kowania dla wszystkich, kt�rzy przys�ali do mnie komentarze, aby pom�c w ulepszeniu tego dokumentu.

Je�li masz jakie� uwagi lub sugestie to napisz do mnie prosz�,

z powa�aniem

Michael H. Jackson <mhjack@tscnet.com>

10.3 Od t�umacza.

T�umaczenie to jest chronione prawami autorskimi © Bartosza Maruszewskiego. Dozwolone jest rozprowadzanie i dystrybucja na prawach takich samych jak dokument oryginalny.

Je�li znalaz�e� jakie� ra��ce b��dy ortograficzne, gramatyczne, sk�adniowe, techniczne to pisz do mnie:

B.Maruszewski@jtz.org.pl

Oficjaln� stron� t�umacze� HOWTO jest http://www.jtz.org.pl/

Aktualne wersje przet�umaczonych dokument�w znajduj� si� na tej�e stronie. Dost�pne s� tak�e poprzez anonimowe ftp pod adresem ftp.jtz.org.pl w katalogu /HOWTO/.

Przet�umaczone przeze mnie dokumenty znajduj� si� tak�e na mojej stronie WWW. S� tam te� odwo�ania do Polskiej Strony T�umaczeniowej.

Kontakt z nasz� grup�, grup� t�umaczy mo�esz uzyska� poprzez list� dyskusyjn� jtz@ippt.gov.pl. Je�li chcesz sie na ni� zapisa�, to wy�lij list o tre�ci subscribe jtz Imi� Nazwisko na adres majordomo@ippt.gov.pl

Zmiany w tym dokumencie wprowadzone przez t�umacza to:

#

Hosting by: Hurra Communications Sp. z o.o.
Generated: 2007-01-26 18:02:23