3 sposoby wyłączenia konta root

Print Friendly, PDF & Email

Użytkownik root jako jedyny w systemie od początku posiada pełne uprawnienia. Jest w stanie usunąć system z dysku przy pomocy jednego polecenia. Dlatego też tak istotne jest, aby na co dzień nie pracować na koncie root. W tym wpisie przedstawię 3 sposoby, które pozwolą na podniesienie bezpieczeństwa w systemie.

Oczywiście zablokowanie działania użytkownika root, jest niezbyt rozsądnym posunięciem, więc na początek warto utworzyć innego z takimi samymi uprawnieniami ale inną nazwą.

W konsoli z poziomu konta root niezależnie czy jest to Debian (i jego pochodne) czy Centos/Red Hat użyj

Useradd utworzy nowego użytkownika (userr = userroot), przełącznik -m utworzy katalog domowy a -c opis tego konta. Passwd pomoże ustawić hasło dla nowego konta.

Kolejnym krokiem jest dodanie nowego konta do grupy wheel / sudo. Grupa wheel / sudo to specjalna grupa użytkowników używana w niektórych systemach uniksowych do kontrolowania dostępu do polecenia su, która pozwala użytkownikowi podszywać się pod innego użytkownika (zwykle superużytkownika).

Po tym zabiegu przy użyciu su userr przełącz się na nowe konto, aby zablokować pierwotne konto root.

Blokowanie ROOT’a po SSH

Praca na serwerach opartych o GNU/Linux to głównie konsola (czyli okienko trybu tekstowego), gdzie wykonywane są polecenia, które mają wpływ na działanie całego systemu. Dobrym pomysłem jest domyślne wyłączenie możliwości zdalnego logowania się poprzez SSH konta root. Zdalnie zaloguje się zwykły użytkownik a dopiero później przełączy się przy pomocy su userr na użytkownika z wyższymi uprawnieniami. Innym pomysłem jest wykonywanie poleceń poprzez zastosowanie sudo nazwa_użytkownika polecenie.

Rozpocząć należy od edycji poniższego pliku sshd_config

należy odszukać wiersz z PermitRootLogin, jeżeli jest on ustawiony jako yes, należy zmienić tę wartość na no.

Disable Root Login in SSh
Wyłączenie dostępu zdalnego dla root’a

Ostatnim krokiem jest ponowne uruchomienie systemu lub tylko usługi ssh

Zablokowanie dostępu do shell’a (konsoli)

Tworząc użytkownika otrzymuje on dostęp do shella (/bin/bash). Jednak, jeżeli użytkownik ma nie móc logować się do shell’a należy ustawić zamiast /bin/bash należy ustawić /sbin/nologin.

Zmiany tego ustawienia możliwa jest na co najmniej 2 sposoby:

  • niebezpieczny, edytowanie pliku /etc/passwd przy pomocy vim, gdzie kasuje się /bin/bash a na jego miejsce dodany jest /sbin/nologin. Błąd przy edytowaniu tego pliku odetnie dostęp dla wszystkich do systemu.
  • bezpieczny, użycie polecenia usermod –shell /sbin/nologin root, które to polecenie zaktualizuje bezpiecznie wpis w /etc/passwd, wymaga podania hasła obecnie zalogowanego użytkownika czyli userr.

Przy próbie logowania system będzie ciągle prosił o wpisanie loginu oraz hasła, bez komunikatu, że logowanie dla tego użytkownika jest zabronione.

Blokada konta ROOT’a poprzez PAM

Pluggable Authentication Modules (w skrócie PAM) to scentralizowana, podłączana, modułowa i elastyczna metoda uwierzytelniania w systemach Linux. PAM, poprzez moduł /lib/security/pam_listfile.so, pozwala na dużą elastyczność w ograniczaniu uprawnień określonych kont.

Powyższy moduł może służyć do odniesienia się do listy użytkowników, którzy nie mogą logować się za pośrednictwem niektórych usług docelowych, takich jak login, ssh i dowolne inne programy obsługujące PAM.

W tym przypadku chcemy wyłączyć dostęp użytkownika root do systemu, ograniczając dostęp do usług logowania i/lub sshd. Wszystkie polecenia należy wykonać z poziomu userr. Najpierw otwórz i edytuj plik usługi docelowej w katalogu /etc/pam.d/

Do pliku login i/lub sshd dodaj poniższy wiersz (na końcu pliku)

W pliku blockedusers wystarczy dodać użytkownika, który nie będzie miał prawa logowania do systemu.

W kolejnym kroku należy utworzyć plik blockedusers

Warto również nadać do niego uprawnienia dla pliku blockedusers na poziomie 600 (u=r+w,g,o=brak). Czyli odczyt oraz zapis będzie miał tylko użytkownik userr.

Podsumowanie

Jak widzisz podniesienie poziomu bezpieczeństwa w systemie GNU/Linux poprzez wyłączenie lub mocne ograniczenie dostępu do niego poprzez użytkownika root.

Print Friendly, PDF & Email

Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.

Link do formularza tutaj: https://beitadmin.pl/pomysly

Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).

Dodaj komentarz

beitadmin.pl - Droga Administratora IT