Administrator systemu Linux - zarządzanie użytkownikami
Omawiając zarządzanie użytkownikami , musimy zrozumieć trzy ważne terminy -
- Users
- Groups
- Permissions
Omówiliśmy już szczegółowe uprawnienia dotyczące plików i folderów. W tym rozdziale porozmawiajmy o użytkownikach i grupach.
Użytkownicy CentOS
W CentOS istnieją dwa typy kont -
System accounts - Używany dla demona lub innego oprogramowania.
Interactive accounts - Zwykle przypisywany użytkownikowi w celu uzyskania dostępu do zasobów systemowych.
Główna różnica między tymi dwoma typami użytkowników to -
System accountssą używane przez demony do uzyskiwania dostępu do plików i katalogów. Zwykle nie będzie można ich interaktywnie logować za pośrednictwem powłoki lub fizycznej konsoli.
Interactive accounts są używane przez użytkowników końcowych do uzyskiwania dostępu do zasobów obliczeniowych z poziomu logowania powłoki lub konsoli fizycznej.
Mając tę podstawową wiedzę na temat użytkowników, stwórzmy teraz nowego użytkownika dla Boba Jonesa z działu księgowości. Nowy użytkownik jest dodawany z rozszerzeniemadduser Komenda.
Oto kilka adduser wspólne przełączniki -
Przełącznik | Akcja |
---|---|
-do | Dodaje komentarz do konta użytkownika |
-m | Tworzy katalog domowy użytkownika w domyślnej lokalizacji, jeśli nie istnieje |
-sol | Domyślna grupa do przypisania użytkownika |
-n | Nie tworzy prywatnej grupy dla użytkownika, zwykle grupy z nazwą użytkownika |
-M | Nie tworzy katalogu domowego |
-s | Domyślna powłoka inna niż / bin / bash |
-u | Określa UID (w inny sposób przypisany przez system) |
-SOL | Dodatkowe grupy, do których ma zostać przypisany użytkownik |
Podczas tworzenia nowego użytkownika użyj przełączników -c, -m, -g, -n w następujący sposób -
[root@localhost Downloads]# useradd -c "Bob Jones Accounting Dept Manager"
-m -g accounting -n bjones
Zobaczmy teraz, czy został utworzony nasz nowy użytkownik -
[root@localhost Downloads]# id bjones
(bjones) gid = 1001(accounting) groups = 1001(accounting)
[root@localhost Downloads]# grep bjones /etc/passwd
bjones:x:1001:1001:Bob Jones Accounting Dept Manager:/home/bjones:/bin/bash
[root@localhost Downloads]#
Teraz musimy włączyć nowe konto za pomocą polecenia passwd -
[root@localhost Downloads]# passwd bjones
Changing password for user bjones.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost Downloads]#
Konto użytkownika nie jest włączone, umożliwiając użytkownikowi zalogowanie się do systemu.
Wyłączanie kont użytkowników
Istnieje kilka metod wyłączania kont w systemie. Obejmuje to ręczną edycję pliku / etc / passwd. Lub nawet używając polecenia passwd z rozszerzeniem-lprzełącznik. Obie te metody mają jedną wielką wadę: jeśli użytkownik ma dostęp do SSH i używa klucza RSA do uwierzytelniania, nadal może się zalogować przy użyciu tej metody.
Teraz użyjmy polecenia chage , zmieniając datę ważności hasła na poprzednią datę. Warto też zanotować na koncie, dlaczego je wyłączyliśmy.
[root@localhost Downloads]# chage -E 2005-10-01 bjones
[root@localhost Downloads]# usermod -c "Disabled Account while Bob out of the country
for five months" bjones
[root@localhost Downloads]# grep bjones /etc/passwd
bjones:x:1001:1001:Disabled Account while Bob out of the country for four
months:/home/bjones:/bin/bash
[root@localhost Downloads]#
Zarządzaj grupami
Zarządzanie grupami w systemie Linux ułatwia administratorowi łączenie użytkowników w kontenerach, stosując zestawy uprawnień mające zastosowanie do wszystkich członków grupy. Na przykład wszyscy użytkownicy w księgowości mogą potrzebować dostępu do tych samych plików. W ten sposób tworzymy grupę księgową, dodając użytkowników księgowych.
W większości przypadków wszystko, co wymaga specjalnych uprawnień, powinno być wykonywane w grupie. Takie podejście zwykle pozwala zaoszczędzić czas w porównaniu z zastosowaniem specjalnych uprawnień tylko do jednego użytkownika. Na przykład Sally jest odpowiedzialna za raporty i tylko Sally potrzebuje dostępu do określonych plików do raportowania. A co, jeśli Sally pewnego dnia zachoruje, a Bob złoży raport? Czy potrzeba raportowania rośnie? Po utworzeniu grupy administrator musi to zrobić tylko raz. Dodawanie użytkowników jest stosowane w miarę zmiany lub rozszerzania potrzeb.
Poniżej przedstawiono niektóre typowe polecenia używane do zarządzania grupami -
- chgrp
- groupadd
- groups
- usermod
chgrp - Zmienia prawa własności do pliku lub katalogu.
Stwórzmy katalog dla osób z grupy księgowej do przechowywania plików i tworzenia katalogów dla plików.
[root@localhost Downloads]# mkdir /home/accounting
[root@localhost Downloads]# ls -ld /home/accounting
drwxr-xr-x. 2 root root 6 Jan 13 10:18 /home/accounting
[root@localhost Downloads]#
Następnie dajmy grupy własności do rachunkowości grupy.
[root@localhost Downloads]# chgrp -v accounting /home/accounting/
changed group of ‘/home/accounting/’ from root to accounting
[root@localhost Downloads]# ls -ld /home/accounting/
drwxr-xr-x. 2 root accounting 6 Jan 13 10:18 /home/accounting/
[root@localhost Downloads]#
Teraz wszyscy w grupie księgowej mają uprawnienia do odczytu i wykonywania uprawnień do / home / accounts . Będą również potrzebować uprawnień do zapisu.
[root@localhost Downloads]# chmod g+w /home/accounting/
[root@localhost Downloads]# ls -ld /home/accounting/
drwxrwxr-x. 2 root accounting 6 Jan 13 10:18 /home/accounting/
[root@localhost Downloads]#
Ponieważ grupa księgowa może zajmować się poufnymi dokumentami, musimy zastosować pewne restrykcyjne uprawnienia dla innych lub światowych .
[root@localhost Downloads]# chmod o-rx /home/accounting/
[root@localhost Downloads]# ls -ld /home/accounting/
drwxrwx---. 2 root accounting 6 Jan 13 10:18 /home/accounting/
[root@localhost Downloads]#
groupadd - Używane do tworzenia nowej grupy.
Przełącznik | Akcja |
---|---|
-sol | Określa identyfikator GID grupy |
-K | Zastępuje specyfikacje GID w /etc/login.defs |
-o | Pozwala na zastąpienie nieunikalnego identyfikatora grupy |
-p | Hasło grupowe, umożliwiające użytkownikom aktywację |
Stwórzmy nową grupę o nazwie Secret. Dodamy hasło do grupy, umożliwiając użytkownikom dodawanie się za pomocą znanego hasła.
[root@localhost]# groupadd secret
[root@localhost]# gpasswd secret
Changing the password for group secret
New Password:
Re-enter new password:
[root@localhost]# exit
exit
[centos@localhost ~]$ newgrp secret
Password:
[centos@localhost ~]$ groups
secret wheel rdc
[centos@localhost ~]$
W praktyce hasła do grup nie są używane często. Grupy dodatkowe są odpowiednie, a udostępnianie haseł innym użytkownikom nie jest dobrym rozwiązaniem w zakresie bezpieczeństwa.
Plik groupspolecenie służy do pokazania, do której grupy należy użytkownik. Wykorzystamy to po wprowadzeniu pewnych zmian w naszym obecnym użytkowniku.
usermod służy do aktualizacji atrybutów konta.
Poniżej przedstawiono typowe przełączniki typu usermod .
Przełącznik | Akcja |
---|---|
-za | Dołącza, dodaje użytkownika do dodatkowych grup, tylko z opcją -G |
-do | Komentarz, aktualizuje wartość komentarza użytkownika |
-re | Katalog domowy, aktualizuje katalog domowy użytkownika |
-SOL | Grupuje, dodaje lub usuwa drugorzędne grupy użytkowników |
-sol | Grupa, domyślna podstawowa grupa użytkownika |
[root@localhost]# groups centos
centos : accounting secret
[root@localhost]#
[root@localhost]# usermod -a -G wheel centos
[root@localhost]# groups centos
centos : accounting wheel secret
[root@localhost]#