Kompletny przewodnik pliku /etc /shadow dla Linux

Kompletny przewodnik pliku /etc /shadow dla Linux
Plik Shadow i plik PASSWD są powszechnie używane do wykonywania procesów uwierzytelniania w Linux. Plik Shadow to plik tekstowy, który przechowuje dane użytkowników w systemie. Co najważniejsze, hasła tutaj są przechowywane w formie zaszyfrowanej lub w formacie haszowanym.

Przechowywanie haseł w pliku /etc /passwd jest podatne na niepewność systemową. Uprawnienia pliku dla pliku Shadow są ustawione na 640 lub 400.

Co obejmiemy?

W tym artykule zbadamy plik cienia w Linux.

Dlaczego potrzebujemy pliku Shadow?

Plik passwd w Linux jest czytelny dla wszystkich i z tego powodu zaszyfrowane hasła zostały przeniesione do innego pliku o nazwie plik Shadow. Jest czytelny tylko przez root. Plik Shadow znajduje się również w folderze /etc w /etc /shadow.

Podobnie jak plik Passwd, pierwsze pole w pliku Shadow zawiera nazwę konta i używa dwukropka do oddzielania różnych pól. Posiadanie osobnego pliku zawierającego zaszyfrowane hasła również ułatwia dodanie nowych parametrów konta. Ponadto pomaga to w kontrolowaniu konta, a także kontroluje starzenie się hasła.

Plik shadow jest chroniony odczyt w celu ochrony zaszyfrowanych haseł. Jest to ważny środek bezpieczeństwa, ponieważ każdy, kto ma dostęp do pliku, może spróbować rozbić zaszyfrowane hasło.

Aspekty bezpieczeństwa pliku cienia

Plik Shadow jest dobrym narzędziem do zresetowania hasła root systemu Linux. Możemy zlokalizować wpis konta dla użytkownika root i manipulować niektórymi ustawieniami, aby odzyskać nasze hasło root. Jednak proces odzyskiwania haseł z pliku Shadow jest na razie poza tym.

Jak wspomniano wcześniej, plik Shadow jest czytelny tylko przez root. Jeśli posiadacz konta z niepełnosprawnością próbuje włamać się na inne konta systemowe, po prostu uderzy głową o ścianę. Jeśli w jakiś sposób osoba ma dostęp do hasła, czas na pęknięcie zależy od użytego algorytmu szyfrowania. Chociaż nie jest to tak łatwe, ponieważ może zająć kilka minut na lata, aby złamać zaszyfrowane hasło.

Składnia pliku Shadow

Składnia pliku Shadow jest jako:

Login: EncyrptedPassword: lastChangedate: min_age: max_age: ostrzeżenie: bezczynność: wydech_date: Zarezerwowany

Pola w powyższej linii są reprezentowane w ciągu dnia. Ostatnia zmiana I wygaśnięcie są pola daty. Czas w tych polach jest pobierany od daty rozpoczęcia czasu UNIX I.mi., 1 stycznia 1970.

Objaśnienie pól w pliku cienia

W tym pliku znajduje się dziewięć pól, które są wyznaczone przez kolony: '

Pozwól, że wyjaśnię każde pole tutaj:

Zaloguj się: każda linia w pliku cienia zaczyna się od nazwy użytkownika. Nazwa użytkownika łączy wpisy w pliku cienia z tych znalezionych w /etc /passwd.

EncryptedPassword: Jest to symbol zastępczy dla zaszyfrowanego hasła. Więc oczywiście nie ma tego podobieństwa z prawdziwym hasłem. Jeśli * lub ! jest umieszczony tutaj, oznacza to, że konto nie ma hasła.

Data LastChange - jest to w zasadzie data pod względem liczby dni pobranych od początku czasu UNIX. To jest czas, który daje datę, kiedy hasło zostało ostatnio zmodyfikowane. Jeśli ta wartość wynosi 0, oznacza to, że hasło musi zostać zmienione następnym razem, gdy użytkownik się zaloguje.

Minage - to pole mówi, że hasło można zmienić tylko wtedy, gdy wartość daty jest minimalna+trwa. Jeśli to pole jest puste, oznacza to, że hasło można zmienić w dowolnym momencie.

Maxage - To pole mówi, że hasło musi zostać zmienione, gdy wartość daty jest maxage+lastage. W rzeczywistości jest to data, w której wygasa hasło. W przypadku pustych haseł data ważności jest bezsensowna, dlatego nie jest wymagane maksymalne, ostrzegawcze i bezczynności.

OSTRZEŻENIE - Daje to użytkownikowi ostrzeżenie o zmianie hasła, gdy data staje się LastChange+Maxage -Warning lub rozpoczął się okres ostrzegawki hasła. Jeśli ta wartość wynosi 0 lub pusta (pusta), oznacza to, że nie ma okresu ostrzegawczego.

bezczynność - po wygaśnięciu hasła użytkownik może nadal zmieniać hasła do dni bezczynności. Jeśli to pole nie jest wypełnione, nie ma okresu bezczynności.

Data wygaśnięcia - jest to data, kiedy konto użytkownika wygasa. Od tego dnia konto nie będzie dostępne do logowania. Jeśli to pole jest puste, konto nigdy nie wygasa. Nie używaj też wartości „0” tutaj.

Specjalna flaga: to miejsce zwykle nie jest używane i zostało wykorzystane do wykorzystania w przyszłości.

Teraz weźmy przykład, aby wyjaśnić nasze zrozumienie powyższych pól. Weźmy na przykład poniższy przykładowy wpis z pliku Shadow:

Linuxhint: 6 $ KKRCC8IP8NKTFJJZJIGJIJ: 12825: 14: 45: 10: 30: 13096

Rozbijmy każde pole krok po kroku:

1. Linuxhint to nazwa użytkownika.

2. Następnym pole jest zaszyfrowane hasło użytkownika. To długie hasło. Jednak lekko go obcięliśmy ze względu na zwięzłość.

3. Użytkownik zmodyfikował swoje hasło 12825 dni lub 35 lat, 1 miesiąc i 11 dni, czyli 11 lutego 2005 r.mi. 1 stycznia 1970.

4. Minimalny czas, po którym użytkownik może zmienić hasło, wynosi 14 dni. Aby hasło wymienione jest w dowolnym momencie, ustaw to pole na 0.

5. Hasło będzie musiało zostać zresetowane co 45 dni.

6. Ostrzeżenie o zresetowaniu hasła pojawi się 10 dni przed datą jego zmiany.

7. Jeśli hasło wygasa i nie jest wykonywane logowanie przez 30 dni, konto użytkownika zostanie wyłączone.

8. Po 13096 dniach od UNIX Epoch Time lub 9 listopada 2005 r. Konto wygasa.

Wniosek

Plik Shadow to bardzo bezpieczne miejsce do przechowywania informacji o koncie. Istnieją obawy dotyczące bezpieczeństwa w silnych hasłach użytkownika w pliku PASSWD. Uczynienie pliku Shadow według roota eliminuje jedynie szanse na wykorzystanie hasła przez użytkowników i atakujących z niepełnosprawnością.