MANIEK Logo Mój Asystent Nauki Informatyki i Egzaminów Klasyfikacyjnych
Logowanie
ASSO / Linux Server / Użytkownicy Linux

10 — Zarządzanie użytkownikami

Czas: 135 min

Cele i treść

Cele:
  • Uczeń wyjaśnia przeznaczenie usługi lub narzędzia w systemie Linux.
  • Uczeń zna najważniejsze pliki i polecenia administracyjne.
  • Uczeń wykonuje konfigurację w terminalu lub narzędziu graficznym.
  • Uczeń testuje działanie usługi i dokumentuje wynik.

Lekcja obejmuje temat: Zarządzanie użytkownikami.

Główne części: Pliki konfiguracyjne: /etc/passwd (struktura rekordu użytkownika), /etc/shadow (hasła i ich polityki), /etc/login.defs., Różnica między kontem użytkownika a kontem administratora (root)., Podstawowe uprawnienia użytkowników., Wprowadzenie do modelu uprawnień Linux (rwx - read, write, execute) dla właściciela, grupy i innych („world”)..

Notatka:

Import przygotowany z rozkładu klasy 2. Po imporcie można dopisać własne screeny, załączniki, zadania i kryteria oceniania.

#passwd#useradd

Punkty lekcji

1 - Pliki konfiguracyjne: /etc/passwd (struktura rekordu użytkownika), /etc/shadow (hasła i ich polityki), /etc/login.defs.opis
/etc/passwd:

Przeznaczenie: Główny plik przechowujący informacje o kontach użytkowników. Każdy użytkownik ma jeden wiersz.

Struktura rekordu: Każdy wiersz składa się z 7 pól oddzielonych dwukropkami (:):

Nazwa użytkownika (login): np. jannowak.

Hasło (password): Historycznie, obecnie几乎 zawsze zawiera po prostu x, oznaczające, że rzeczywiste zaszyfrowane hasło jest przechowywane w /etc/shadow.

UID (User ID): Unikalny numer identyfikacyjny użytkownika.

0: Zarezerwowane dla roota.

1-999: Systemowe konta usług i systemów.

1000+: Konta zwykłych użytkowników.

GID (Group ID): Numer identyfikacyjny grupy podstawowej użytkownika.

GECOS: Pole opisowe, często zawierające pełne imię i nazwisko, numer pokoju, telefon itp.

Katalog domowy (Home directory): Ścieżka do katalogu domowego użytkownika, np. /home/jannowak.

Powłoka (Shell): Domyślna powłoka command-line użytkownika, np. /bin/bash lub /usr/sbin/nologin (dla kont systemowych).

/etc/shadow:

Przeznaczenie: Plik przechowujący zaszyfrowane hasła użytkowników oraz związane z nimi polityki bezpieczeństwa. Dostępny tylko do odczytu dla użytkownika root.

Struktura rekordu: Każdy wiersz składa się z 9 pól oddzielonych dwukropkami:

Nazwa użytkownika.

Zaszyfrowane hasło: Hasło zakodowane przy użyciu algorytmu hashującego (np. SHA-512). Może przyjmować specjalne wartości:

! lub * – konto jest zablokowane, logowanie hasłem jest niemożliwe.

puste – konto nie ma hasła (bardzo niebezpieczne!).

Data ostatniej zmiany hasła: Liczba dni od 1 stycznia 1970 (tzw. epoch).

Minimalny wiek hasła: Minimalna liczba dni, które muszą upłynąć przed kolejną zmianą hasła (0 = można zmieniać od razu).

Maksymalny wiek hasła: Maksymalna liczba dni, po których hasło musi zostać zmienione.

Okres ostrzegawczy: Liczba dni przed wygaśnięciem hasła, w których użytkownik jest o tym ostrzegany.

Okres tolerancji: Liczba dni po wygaśnięciu hasła, przez które konto jest jeszcze aktywne, a użytkownik może je zmienić.

Data wygaśnięcia konta: Data (w dniach od epoch), po której konto zostanie automatycznie zablokowane.

Zarezerwowane.

/etc/login.defs:

Przeznaczenie: Plik konfiguracyjny zawierający domyślne polityki dla tworzenia użytkowników i haseł dla całego systemu.

Przykładowe ustawienia:

PASS_MAX_DAYS 90 – Maksymalny wiek hasła.

PASS_MIN_DAYS 0 – Minimalny wiek hasła.

PASS_WARN_AGE 7 – Okres ostrzegawczy.

UID_MIN 1000, UID_MAX 60000 – Zakres UID dla zwykłych użytkowników.

CREATE_HOME yes – Czy automatycznie tworzyć katalog domowy przy tworzeniu użytkownika.

2 - Różnica między kontem użytkownika a kontem administratora (root).zadanie

Konto root (superuser): Ma identyfikator UID=0. Ma nieograniczone uprawnienia w systemie. Może czytać, modyfikować i usuwać dowolny plik, zmieniać uprawnienia, zarządzać procesami i konfigurować sprzęt. Logowanie bezpośrednio na roota jest niezalecane ze względów bezpieczeństwa.

Konto zwykłego użytkownika: Ma UID >= 1000. Ma bardzo ograniczone uprawnienia. Może modyfikować tylko pliki we własnym katalogu domowym i tych, do których otrzymał explicitnie uprawnienia. Aby wykonać zadanie administracyjne, używa komendy sudo (SuperUser DO), która tymczasowo podnosi jego uprawnienia do poziomu roota (jeśli użytkownik jest skonfigurowany w grupie sudo lub pliku /etc/sudoers).

3 - Podstawowe uprawnienia użytkowników.opis

Do uzupełnienia.

4 - Wprowadzenie do modelu uprawnień Linux (rwx - read, write, execute) dla właściciela, grupy i innych („world”).notatka

Idea, że użytkownik może operować tylko na plikach, do których ma explicitnie nadane odpowiednie uprawnienia. Jego domyślną "przestrzenią roboczą" jest jego katalog domowy.

5 - Bezpieczeństwo: znaczenie silnych haseł, blokowanie kont.,opis

Silne hasła: Długie (min. 12 znaków), wykorzystujące litery (małe i duże), cyfry i znaki specjalne. Unikanie słów ze słownika i danych personalnych.

Blokowanie kont: Jak rozpoznać zablokowane konto w /etc/shadow (! lub *). Użycie poleceń passwd -l [user] (lock) i passwd -u [user] (unlock) do zarządzania blokadą.

Zasada najmniejszych uprawnień: Nadawanie użytkownikom tylko tych uprawnień, które są im absolutnie niezbędne do wykonania swojej pracy.

6 - Ćwiczenia praktyczneopis

Do uzupełnienia.

7 - Ćwiczenie 1: Wyświetlenie zawartości plików /etc/passwd i /etc/shadow.zadanie

Otwórz terminal.

Wyświetl zawartość pliku /etc/passwd:

cat /etc/passwd – wyświetla całą zawartość pliku.

less /etc/passwd – wyświetla zawartość stronami (możliwość przewijania strzałkami, wyjście - klawisz q).

head -n 5 /etc/passwd – wyświetla pierwsze 5 linii pliku.

tail -n 5 /etc/passwd – wyświetla ostatnie 5 linii pliku.

grep "$USER" /etc/passwd – wyszukuje i wyświetla linię zawierającą nazwę bieżącego użytkownika.

Spróbuj wyświetlić plik /etc/shadow:

cat /etc/shadow – powinien zwrócić błąd "Permission denied", ponieważ zwykły użytkownik nie ma uprawnień do odczytu.
sudo cat /etc/shadow – użycie sudo pozwala na tymczasowe uzyskanie uprawnień roota do odczytu pliku. Zaobserwuj strukturę pól, zwłaszcza drugiego pola z zaszyfrowanym hasłem.
8 - Ćwiczenie 2: Analiza pojedynczego rekordu z /etc/passwd.zadanie

Kroki:

Znajdź swój własny rekord w pliku /etc/passwd (np. grep "$USER" /etc/passwd).

Skopiuj cały wiersz.

Rozpisz go na poszczególne pola, np.:

jannowak:x:1001:1001:Jan Nowak,,,,:/home/jannowak:/bin/bash

Pole 1 (Login): jannowak

Pole 2 (Password): x (hasło w /etc/shadow)

Pole 3 (UID): 1001

Pole 4 (GID): 1001

Pole 5 (GECOS): Jan Nowak,,,,

Pole 6 (Home dir): /home/jannowak

Pole 7 (Shell): /bin/bash

Znajdź i przeanalizuj rekord użytkownika root (grep "^root" /etc/passwd). Zwróć uwagę na UID=0 i katalog domowy (/root).

9 - Ćwiczenie 3: Przełączenie się na konto root za pomocą su i sudo -i.zadanie

Kroki:

Komenda su (substitute user):

Wpisz su i naciśnij Enter.

System poprosi o hasło użytkownika root. Po jego podaniu (jeśli znane) powłoka zmieni się na root#.

Wykonaj kilka komend jako root (np. whoami, id).

Aby wrócić do swojego konta, wpisz exit.

su - (z myślnikiem) symuluje pełne logowanie jako root, ładując zmienne środowiskowe roota.

Komenda sudo -i (sudo interactive):

Wpisz sudo -i i naciśnij Enter.

System poprosi o Twoje własne hasło (hasło użytkownika, który jest w grupie sudo).

Po uwierzytelnieniu powłoka zmieni się na root#, podobnie jak w przypadku su -.

To jest zalecana i bezpieczniejsza metoda, ponieważ nie wymaga udostępniania hasła roota i wszystkie polecenia są logowane.

Wyjdź z powłoki roota komendą exit.

Powiązane arkusze i pytania

Arkusze

Brak powiązanych arkuszy.

Pytania

Brak powiązanych pytań.