Bociek PLD - Pisarz
I. Informacje podstawowe
II. Instalacja
III. Podręcznik użytkownika
IV. Podręcznik administratora
Administracja
Konta użytkowników
V. Tworzenie PLD - Praktyczny poradnik
VI. O podręczniku
O tej książce
Spis treści
Inne wersje tego dokumentu
HTML (jeden plik)
Odnośniki
Tworzymy dokumentację PLD
Strona PLD
Listy dyskusyjne PLD

Konta użytkowników

<- ->
 

W PLD zastosowano klasyczny dla systemów uniksowych system kont użytkowników, tak więc istnieje podział na dwa rodzaje kont: konta systemowe i konta użytkowników. Zarządzanie kontami systemowymi następuje automatycznie w trakcie instalowania bądż usuwania programów, które ich wymagają. Z tego powodu nie musimy się nimi zajmować, zajmiemy się więc tylko kontami zwykłych użytkowników.

W PLD domyślnie instalowanym pakietem do zarządzania kontami jest pakiet shadow. Możemy do jednak zastąpić zbiorem pwdutils, który zawiera narzędzia o większych możliwościach. Dzięki nim nie będzie już konieczności "ręcznego" edytowania plików systemowych, z tego względu opisane zostaną wyłączne narzędzia pwdutils.

Dodanie

Konto użytkownika dodajemy poleceniem useradd -m {$nazwa_użytkownika} np.:

# useradd -m jkowalski

Powyższe polecenie doda konto o identyfikatorze 'jkowalski' i utworzy katalog domowy (parametr "-m"). Dodatkowo do stworzonego katalogu skopiowana zostaje zawartość katalogu /etc/skel. Domyślna konfiguracja konta jest tworzona na podstawie opcji z plików: /etc/default/useradd i /etc/login.defs. Najważniejsze opcje pierwszego z nich to:
  • GROUP - identyfikator grupy głównej - domyślnie: 1000 (users)

  • HOME - miejsce przechowywania katalogów domowych - domyślnie: /home/users

  • SHELL - powłoka - domyślnie: /bin/bash

Drugi określa bardziej zaawansowane opcje, najważniejsze z nich to:

  • PASS_MAX_DAYS - liczba dni do wygaśnięcia hasła -domyślnie: 99999

  • PASS_MIN_DAYS - minimalna liczba dni do między zmianami hasła -domyślnie: 0

  • PASS_WARN_AGE - ilość dni przez które będzie pokazywane ostrzeżenie o wygaśnięciu hasła - domyślnie: 7

Wiele opcji kont zawartych w tych plikach można łatwo modyfikować, poprzez przekazanie odpowiednich parametrów do programu useradd oraz passwd, więcej informacji na ten temat uzyskamy w podręczniku systemowym. Jeśli chcemy utworzyć większa ilość kont o zmodyfikowanych parametrach to wygodniejsze będzie ustawienie interesujących nas wartości w podanych powyżej plikach.

Jeśli użytkownik ma konto na wielu maszynach dobrym zwyczajem jest nadawanie takiego samego numeru użytkownika (UID) dla każdego z kont. W przypadku programu useradd należy użyć opcji "-u".

Na koniec administrator musi ustawić hasło dla danego użytkownika.

Usunięcie

Aby usunąć konto użyjemy programu userdel:

# userdel jkowalski

Warto wspomnieć tu o opcjach "-r" i "-f", pierwsza usuwa katalog domowy, druga wymusza usunięcie również plików z katalogu domowego nawet jeśli do niego nie należą.

Ze względów bezpieczeństwa można polecić blokowanie kont użytkowników w miejsce ich usuwania, w ten sposób możemy się ochronić przed sytuacją powrotu do użytku numeru UID usuniętego użytkownika.

Modyfikacja

Dane użytkownika modyfikujemy poleceniem usermod, dokładny opis tego programu znajdziemy w manualu.

Hasło

Pierwsze hasło dla użytkownika jest nadawane przez administratora, każdą następną jego modyfikację użytkownik może wykonywać samodzielnie.

Ustawienie hasła przez administratora: passwd {$nazwa_użytkownika}

# passwd jkowalski
Changing password for jkowalski.
New UNIX password:  
Retype new UNIX password:

Zwykły użytkownik zmienia swoje hasło również poleceniem passwd, tyle że bez podawania parametru. Administrator może zmusić użytkownika do zmiany hasła tuż po zalogowaniu:

# passwd -e jkowalski

Zarządzanie kontami

Hasło blokujemy poleceniem: passwd -l {$nazwa_użytkownika} np.:

# passwd -l jkowalski

Aby odblokować użyjemy parametru parametru "-u" np.:

# passwd -u jkowalski

Musimy pamiętać, że powyższe polecenia nie blokują dostępu opartego o inną metodę autoryzacji niż hasło, np. o klucz SSH. W takim wypadku dodatkowo powinniśmy zmienić powłokę użytkownikowi na nie figurującą w /etc/shells np.:

# usermod -s /bin/false jkowalski

 
<- ->