Jak ograniczyć dostęp użytkowników na komputerze Linux

Jak ograniczyć dostęp użytkowników na komputerze Linux

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