Shadow Password HOWTO pl 7 (2)


Przesłanianie haseł (Shadow Password): Wprowadzanie pakietu Shadow Suite do użycia. Następna strona Poprzednia strona Spis treści 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: Niech domyślną grupą będzie 100 Niech hasła wygasają po 60 dniach Niech konta nie będą blokowane po wygaśnięciu hasła Niech domyślną powłoką będzie /bin/bash 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: Blokowania i odblokowywania kont (-l i -u) Ustawiania maksymalnej ilości dni przez jaką hasło jest ważne (-x) Ustawiania minimalnej ilości dni między zmianami hasła (-n) Ustawiania ilości dni, po których wysyłane jest ostrzeżenie o wygaśnięciu hasła (-w) Ustawiania ilości dni, po której hasło wygasa przed zablokowaniem konta (-i) Pozwalania na przeglądanie informacji o koncie w czytelniejszym formacie (-S) 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: Zawiera opcje, które mogą być włączane i wyłączane do określania ilości zalogowań. Zawiera wskazania na inne pliki konfiguracyjne. Zawiera domyślne wartości dla takich ustawień jak "termin ważności" hasła. 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: poprawną ilość pól, unikalny identyfikator, dobry UID i GID dobrą grupę domyślną poprawny katalog domowy poprawną powłokę 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: ilość pól, unikalną nazwę grupy poprawność listy administratorów i członków. 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. Następna strona Poprzednia strona Spis treści

Wyszukiwarka

Podobne podstrony:
Shadow Password HOWTO pl 10 (2)
Shadow Password HOWTO pl 8 (2)
Shadow Password HOWTO pl (3)
Shadow Password HOWTO pl 5 (2)
Shadow Password HOWTO pl (2)
Shadow Password HOWTO pl 6 (2)
Shadow Password HOWTO pl 9 (2)
Shadow Password HOWTO pl 2 (2)
Shadow Password HOWTO pl 1 (2)
Shadow Password HOWTO pl 4 (2)
Shadow Password HOWTO pl 3 (2)
Shadow Password HOWTO pl
shadow password howto 4 wrjj4xl2rttpywxk645hll3i63bvo7zfmqmiewy wrjj4xl2rttpywxk645hll3i63bvo7zfmqmi
shadow password howto 5 xwj2yqx7sdr7adin3jsjtftaoqyivxcflwawaqa xwj2yqx7sdr7adin3jsjtftaoqyivxcflwaw
shadow password howto 2 foxyypsfur2dgvcm757tzpjjjqzxkvhcxqxuazi foxyypsfur2dgvcm757tzpjjjqzxkvhcxqxu
shadow password howto xaxuxvyqvflgb5m452rbxlszzlk756szuoenxpa xaxuxvyqvflgb5m452rbxlszzlk756szuoenxp
shadow password howto 6 wekeaom5hhmqmfgscm4mih3yeed3zer56aqewwa wekeaom5hhmqmfgscm4mih3yeed3zer56aqe
shadow password howto 9 rrzkcxlxnah6g6g76dgcjvmvfeeihhseu43rxfi rrzkcxlxnah6g6g76dgcjvmvfeeihhseu43r
shadow password howto 1 jvl6nxop7fpn62s67zmft74rytj65xu7oqy4xdi jvl6nxop7fpn62s67zmft74rytj65xu7oqy4

więcej podobnych podstron