Wyszukiwanie w witrynie

Seria RHCSA: Jak zarządzać użytkownikami i grupami w RHEL 7 – część 3


Zarządzanie serwerem RHEL 7, tak jak w przypadku każdego innego serwera Linux, będzie wymagało umiejętności dodawania, edytowania, zawieszania lub usuwania kont użytkowników oraz przyznawania użytkownikom niezbędnych uprawnień do plików , katalogi i inne zasoby systemowe w celu wykonywania przypisanych im zadań.

Zarządzanie kontami użytkowników

Aby dodać nowe konto użytkownika do serwera RHEL 7, możesz uruchomić jedno z dwóch poniższych poleceń jako root:

adduser [new_account]
useradd [new_account]

Po dodaniu nowego konta użytkownika domyślnie wykonywane są następujące operacje.

  1. Jego/jej katalog domowy zostanie utworzony (/home/username, chyba że określono inaczej).
  2. Te ukryte pliki .bash_logout, .bash_profile i .bashrc są kopiowane do katalogu domowego użytkownika i będą używane do dostarczania zmiennych środowiskowych dla jego /jej sesja użytkownika. Możesz zapoznać się z każdym z nich, aby uzyskać więcej szczegółów.
  3. Dla dodanego konta użytkownika tworzony jest katalog buforowania poczty.
  4. Utworzona zostanie grupa o tej samej nazwie co nowe konto użytkownika.

Pełne podsumowanie konta przechowywane jest w pliku /etc/passwd. Plik ten zawiera rekordy dla poszczególnych kont użytkowników systemu i ma następujący format (pola oddzielone są dwukropkiem):

[username]:[x]:[UID]:[GID]:[Comment]:[Home directory]:[Default shell]
  1. Te dwa pola [username] i [Komentarz] są oczywiste.
  2. Drugie pole „x” wskazuje, że konto jest zabezpieczone ukrytym hasłem (w /etc/shadow), które służy do logowania się jako [nazwa użytkownika].
  3. Pola [UID] i [GID] są liczbami całkowitymi, które pokazują w równym stopniu identyfikator użytkownika i podstawowy identyfikator grupy, do której należy [nazwa użytkownika] .

Wreszcie,

  1. [Katalog domowy] pokazuje bezwzględną lokalizację katalogu domowego [username], a
  2. [Domyślna powłoka] to powłoka, która jest zatwierdzana dla tego użytkownika, gdy ten loguje się do systemu.

Kolejnym ważnym plikiem, z którym musisz się zapoznać, jest /etc/group, w którym przechowywane są informacje o grupie. Podobnie jak w przypadku /etc/passwd, w każdej linii znajduje się jeden rekord, a jego pola również są oddzielone dwukropkiem:

[Group name]:[Group password]:[GID]:[Group members]

Gdzie,

  1. [Nazwa grupy] to nazwa grupy.
  2. Czy ta grupa używa hasła grupowego? („x” oznacza nie).
  3. [GID]: tak samo jak w /etc/passwd.
  4. [Członkowie grupy]: lista użytkowników oddzielonych przecinkami, którzy są członkami każdej grupy.

Po dodaniu konta, w każdej chwili możesz edytować informacje o koncie użytkownika za pomocą usermod, którego podstawowa składnia to:

usermod [options] [username]

Przeczytaj także:
15 przykładów poleceń „useradd”
15 przykładów poleceń „usermod”.

PRZYKŁAD 1: Ustalenie daty ważności konta

Jeśli pracujesz dla firmy, która ma jakąś politykę włączania konta na określony czas lub jeśli chcesz przyznać dostęp na ograniczony okres czasu, możesz użyć --expiredate flaga, po której następuje data w formacie RRRR-MM-DD. Aby sprawdzić, czy zmiana została zastosowana, możesz porównać dane wyjściowe programu

chage -l [username]

przed i po aktualizacji daty wygaśnięcia konta, jak pokazano na poniższym obrazku.

PRZYKŁAD 2: Dodanie użytkownika do grup dodatkowych

Oprócz grupy podstawowej, która jest tworzona w momencie dodania nowego konta użytkownika do systemu, użytkownika można dodać do grup dodatkowych za pomocą kombinacji -aG lub –append –groups opcje, po których następuje lista grup oddzielonych przecinkami.

PRZYKŁAD 3: Zmiana domyślnej lokalizacji katalogu domowego użytkownika i/lub zmiana jego powłoki

Jeśli z jakiegoś powodu musisz zmienić domyślną lokalizację katalogu domowego użytkownika (inną niż /home/username), będziesz musiał użyć -d lub –home opcje, po których następuje bezwzględna ścieżka do nowego katalogu domowego.

Jeśli użytkownik chce użyć innej powłoki niż bash (na przykład sh), która jest przypisana domyślnie, użyj usermod z –shell flaga, po której następuje ścieżka do nowej powłoki.

PRZYKŁAD 4: Wyświetlanie grup, do których należy użytkownik

Po dodaniu użytkownika do grupy dodatkowej możesz sprawdzić, czy faktycznie należy on do takiej grupy:

groups [username]
id [username]

Poniższy obraz przedstawia Przykłady 2 do 4:

W powyższym przykładzie:

usermod --append --groups gacanepa,users --home /tmp --shell /bin/sh tecmint

Aby usunąć użytkownika z grupy, pomiń przełącznik --append w powyższym poleceniu i wyświetl listę grup, do których użytkownik ma należeć, po flagi --groups.

PRZYKŁAD 5: Wyłączenie konta poprzez zablokowanie hasła

Aby wyłączyć konto, musisz użyć opcji -L (małe L) lub –lock, aby zablokować hasło użytkownika. Uniemożliwi to użytkownikowi zalogowanie się.

PRZYKŁAD 6: Odblokowanie hasła

Jeśli chcesz ponownie włączyć użytkownika, aby mógł ponownie zalogować się do serwera, użyj opcji -U lub –odblokuj, aby odblokować hasło użytkownika, które zostało wcześniej zablokowane, jak wyjaśniono w Przykładzie 5 powyżej.

usermod --unlock tecmint

Poniższy obraz ilustruje Przykłady 5 i 6:

PRZYKŁAD 7: Usuwanie grupy lub konta użytkownika

Aby usunąć grupę, użyj groupdel, natomiast do usunięcia konta użytkownika użyj userdel (dodaj przełącznik –r jeśli chcesz także usunąć zawartość jego katalogu domowego i bufora poczty):

groupdel [group_name]        # Delete a group
userdel -r [user_name]       # Remove user_name from the system, along with his/her home directory and mail spool

Jeśli istnieją pliki, których właścicielem jest nazwa_grupy, nie zostaną one usunięte, ale właścicielem grupy zostanie ustawiony GID usuniętej grupy.