Kto tworzy / etc / {group, gshadow, passwd, shadow} -?

29

W dowolnym systemie linux, do którego mam dostęp (kilka Archlinuxes, Ubuntu, Debian Sid i Gentoo) są następujące 4 pliki /etc/, wszystkie zakończone myślnikiem:

/etc/group-
/etc/gshadow-
/etc/passwd-
/etc/shadow-

W Internecie mówią, że są to tylko pliki kopii zapasowych, aktualizowane do ostatniej zmiany.

Teraz zastanawiam się: kto tworzy te pliki? Czy to mój redaktor? Czy to aplikacja edytuje te pliki (gpasswd, useradd, groupadd itd.)? Czy to coś na niższym poziomie (może nawet moduł jądra)?

peoro
źródło

Odpowiedzi:

24

Pliki kopii zapasowych są tworzone przez program, który modyfikuje pliki /etc/grouplub /etc/passwdpliki podobne useradd, groupadda pliki podobne tworzone są ze względów bezpieczeństwa na wypadek uszkodzenia plików podczas edycji. Jądro nigdy nie dotyka tych plików.

Karlson
źródło
1
To dziwne, ponieważ shadowi gshadowpliki (z myślnikiem) mają inny chmod , w przeciwieństwie 000do innych użytkowników i mogą je odczytać? Czy istnieje sposób tworzenia kopii zapasowych przy zachowaniu właściwego chmod000 ?
Ilia Rostovtsev
@IliaRostovtsev O ile mi wiadomo shadowi gshadowpliki mają uprawnienia 0400.
Karlson,
Nie, w CentOS, Fedora / RedHat jest ustawiony 0000. 0400Sądzę, że ustawienie tego jest niepewne , ponieważ każdy użytkownik w twoim systemie mógłby uruchomić cat /etc/shadowi uzyskać jego wynik?
Ilia Rostovtsev
@IliaRostovtsev Po pierwsze, patrzę na uprawnienia w /etc/shadowsystemie RedHat i jeśli w rzeczywistości użytkownik inny niż root może wyświetlić ten plik z uprawnieniami 0400, oznacza to, że wystąpił znaczny błąd w przetwarzaniu uprawnień, chyba że plik jest własnością innego użytkownika .
Karlson,
1
Powiązane @IliaRostovtsev: unix.stackexchange.com/q/549464/135943
Wildcard