Jak ograniczyć dostęp użytkowników na komputerze Linux
- 1736
- 58
- Pani Janina Cieśla
Cel
Dowiedz się, jak ograniczać dostęp użytkowników na komputerze Linux
Wersje systemu operacyjnego i oprogramowania
- System operacyjny: - Wszystkie dystrybucje Linux
Wymagania
- Uprawnienia korzeniowe
Trudność
ŁATWY
Konwencje
- # - Wymaga podanych poleceń Linuksa, które można wykonać z uprawnieniami root
bezpośrednio jako użytkownik root lub za pomocąsudo
Komenda - $ - Wymaga, aby podane polecenia Linux zostały wykonane jako zwykły użytkownik niepewny
Wstęp
W tym samouczku nauczymy się, jak ograniczyć dostęp do komputera Linux, interakcja z dwoma plikami: /itp./Securetty
, które pozwól nam określić z konsoli możliwe zalogowanie się bezpośrednio jako root i /itp./Security/Access.conf
, w którym możemy ustalić niektóre reguły, aby ograniczyć dostęp dla określonych użytkowników lub grup z niektórych pochodzenia.
Ogranicz logowanie korzenia
Pierwszą rzeczą, którą zamierzamy zrobić, to nauczyć się edytować /itp./Securetty
plik, aby umożliwić bezpośredni dostęp do korzeni tylko na określonych konsolach. Rzućmy okiem na plik: tak to wygląda na komputerze CentoS7:
Konsola VC/1 VC/2 VC/3 VC/4 VC/5 VC/6 VC/7 VC/8 VC/9 VC/10 VC/11 Tty1 Tty2 Tty3 Tty5 Tty6 Tty7 Tty8 Tty9 Tty10 Tty11 Ttys0 Ttysclp0 Sclp_line0 3270/ Tty1 HVC0 HVC1 HVC2 HVC3 HVC4 HVC5 HVC6 HVC7 HVSI0 HVSI1 HVSI2 XVC0
To, co tam widzimy. Skupmy się na tty
urządzenia na razie. Otwórz plik z edytorem tekstu i skomentuj tty1
wejście:
[…] #Tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9 tty10 tty11 […]
Zapisz i wyjdź z edytora tekstu. Teraz, jeśli przejdziemy do pierwszego tty
Naciskając Ctrl + alt + 1
lub biegając CHVT 1
, I spróbuj zalogować się jako root, będziemy mieli następujący wynik:
Zgodnie z oczekiwaniami, system odmówił dostępu do nas jako korzenia z określonego TTY. Aby zdobyć przywileje główne i wykonać zadania administracyjne, musimy następnie zalogować się jako normalny użytkownik, a następnie użyć sudo
Lub Su
(lub zaloguj się z innego TTY, jeśli jest to dozwolone).
Należy pamiętać, że nie wpłynie to na możliwość logowania jako korzenia podczas korzystania z SSH. Aby uniknąć tego konkretnego zachowania, należy skonfigurować serwer SSH, modyfikując /etc/ssh/sshd_config
plik i ustaw Pertrootlogin
dyrektywa NIE
Reguły dostępu do konfiguracji w/etc/Security/Access.conf
Jeśli /itp./Securetty
plik pozwala nam określić, z którego terminali można zalogować się bezpośrednio jako root, konfiguracja reguł dostępu w /itp./Security/Access.conf
Plik, możemy zezwolić lub odmówić dostępu do określonych użytkowników lub grup z określonych pochodzenia.
Włóż PAM_ACCESS.Więc moduł
Przed skonfigurowaniem naszych zasad musimy zmodyfikować /etc/pam.D/login
, Aby dodać Pam_Access.Więc
moduł, który pozwoli Pam
zeskanować dostęp.conf
plik do zasad, które zdefiniujemy. Użyj swojego ulubionego edytora tekstu, aby zmodyfikować plik, aby wyglądał w ten sposób:
#%PAM-1.0 Auth [user_unknown = ignoruj sukces = ok ignor = ignor default = zły] pam_securetty.Tak więc auth System System-Auth Auth obejmuje wymagane konto postloginowe pam_nologin.Tak więc konto wymagane PAM_ACCESS.Tak więc konto zawierają hasło systemu Uwzględniające system-system # pam_selinux.Tak blisko powinna być pierwsza sesja reguł sesji wymagana PAM_SELINUX.Tak zwana sesja wymagana pam_loginuid.Tak więc sesja opcjonalna pam_console.Więc # Pam_Selinux.Tak więc po otwarciu powinny być tylko sesje, które należy wykonać w sesji kontekstu użytkownika Wymagane PAM_SELINUX.Tak więc sesja otwarcia wymagana przestrzeń pam_namespace.Tak więc sesja opcjonalna pam_keyinit.więc sesja zużycia sesji uwzględniają sesję systemu systemu Uwzględnij Postlogin -Sesja Opcjonalna PAM_CK_CONNECTER.Więc
To, co zrobiliśmy, to dodać Wymagane konto PAM_ACCESS.Więc
linia na końcu konto
Sekcja. Teraz, gdy się konfigurujemy Pam
Możemy zacząć mówić o zasadach dostępu.
Składnia zasad
Zdefiniować zasadę w dostęp.conf
Plik, musimy szanować bardzo prostą i wyraźną składnię. Zasada składa się z trzech sekcji, oddzielonych okrężnicy:
Zezwolenie: Użytkownicy: pochodzenie
Pierwsza część reguły określa uprawnienia i składa się z -
Lub +
Znak: Pierwszy tworzy to, co możemy nazwać zasadą „Odmowa”, podczas gdy druga określa zasadę, w której udzielane są uprawnienia do dostępu.
W drugiej części podajemy podmiotom reguły. Sekcja składa się z listy grup lub nazwy logowania. Aby uniknąć konfliktów między użytkownikami i grupami, które można wymienić w ten sam sposób, wpisy grupy można określić w nawiasach, ale tylko wtedy, gdy NodefGroup
Opcja jest ustawiona w /etc/pam.D/login
plik, który zmodyfikowaliśmy powyżej, na końcu dodanego linii.
Trzecia część reguły określa źródło, z którego dostęp jest dozwolony lub odmowa, będąc tym: jeden lub więcej ttys
, Nazwy hostów, adresy hosta lub domeny.
Słowa kluczowe
Składnia reguł, użyj nawet potężnych słów kluczowych. Przede wszystkim mamy WSZYSTKO
. To słowo kluczowe zawsze będzie zgodne: na przykład, gdy jest używany w drugiej sekcji, będzie pasował do wszystkich możliwych użytkowników lub grup lub w trzecim, wszystkich możliwych źródłach.
NIC
Słowo kluczowe ma dokładny przeciwny efekt WSZYSTKO
, I LOKALNY
, który ma sens tylko w pochodzenie
sekcja reguły będzie pasować do każdego ciągu, który nie zawiera '.'. Wreszcie bardzo potężne słowo kluczowe jest Z WYJĄTKIEM
co pozwala nam określić wyjątki od ustalonej reguły.
Kilka przykładów
Plik zawiera kilka przydatnych przykładów, spójrzmy na niektóre z nich. Przede wszystkim mamy następujące czynności:
- : Wszystko oprócz roota: tty1
Ta linia, pozwól nam uzyskać odwrotny wynik, który uzyskaliśmy wcześniej, modyfikując /itp./Securetty
Plik: Przede wszystkim mamy -
znak, co oznacza, że jest to zaprzeczyć
reguła. W następnej sekcji, oddzielonej okrężnicy, mamy Wszystkie oprócz roota
,co określa, że reguła należy zastosować do wszystkich użytkowników, z wyjątkiem źródło
, W trzeciej części widzimy, że określona reguła jest ważna tylko wtedy, gdy ktoś próbuje uzyskać dostęp tty1
.
Kolejny przykład, tym razem z wieloma nazwami użytkowników:
-: WSBSCARO WSBSCEC WSBSPAC WSBSYM WSCOSOR WSTAIWDE: All
Reguła zabrania dostępu do użytkowników WSBSCARO, WSBSECR, WSBSPAC, WSBSYM, WSCOSOR i WSTAIWDE ze wszystkich źródeł (patrz The WSZYSTKO
słowo kluczowe w akcji)
Coś bardziej złożonego. Tym razem reguła zaprzecza dostępu do wszystkich użytkowników, którzy nie są członkami grupy kół lokalny
Loginy:
-: Wszystkie oprócz (koła): lokalne
Wreszcie przykład, który określa regułę dla zdalnego logowania:
+ : root: 192.168.200.1 192.168.200.4 192.168.200.9
Jak powinniśmy teraz zrozumieć, ta zasada pozwala źródło
Aby uzyskać dostęp do systemu tylko z określonych adresów IP.
Przypadek testowy
Możemy zweryfikować to, co powiedzieliśmy powyżej z przypadkiem testowym: zbudujmy regułę, aby odmówić dostępu EGDOC
(moje konto w tym systemie) z tty1
i dołącz to na końcu /itp./Security/Access.conf
plik:
-: egdoc: tty1
Teraz, jeśli przejdziemy do tty1
I spróbuj się zalogować, otrzymujemy tę niegrzeczną odpowiedź z systemu:
Proszę zauważyć, że kolejność określonych zasad w /itp./Security/Access.conf
Plik jest naprawdę ważny, ponieważ reguły są oceniane w kolejności wyglądu.
Powiązane samouczki Linux:
- Rzeczy do zainstalowania na Ubuntu 20.04
- Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
- Linux Pliki konfiguracyjne: Top 30 Najważniejsze
- Pobierz Linux
- Czy Linux może uzyskać wirusy? Badanie podatności Linuksa…
- Najlepszy Linux Distro dla programistów
- Rzeczy do zrobienia po zainstalowaniu Ubuntu 22.04 JAMMY Jellyfish…
- Polecenia Linux: Top 20 najważniejsze polecenia, które musisz…
- Zainstaluj Arch Linux na stacji roboczej VMware
- Podstawowe polecenia Linux