Qui crée / etc / {group, gshadow, passwd, shadow} -?

29

Dans n'importe quel système Linux auquel j'ai accès (quelques Archlinux, un Ubuntu, un Debian Sid et un Gentoo), il y a les 4 fichiers suivants /etc/, se terminant tous par un tiret:

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

Sur Internet, ils disent que ce ne sont que des fichiers de sauvegarde, mis à jour à l'avant-dernier changement.

Maintenant, je me demande: qui crée ces fichiers? Est-ce mon éditeur? Est-ce l'application qui édite ces fichiers (gpasswd, useradd, groupadd, etc.)? Est-ce quelque chose à un niveau inférieur (peut-être même un module du noyau)?

peoro
la source

Réponses:

24

Les fichiers de sauvegarde sont créés par le programme qui modifie vos fichiers /etc/groupou /etc/passwdsimilaires useradd, groupaddet similaires créés par mesure de sécurité au cas où les fichiers seraient corrompus lors de la modification. Le noyau ne touche jamais ces fichiers.

Karlson
la source
1
C'est étrange, car shadowet les gshadowfichiers (avec un tiret), ont un chmod différent , contrairement 000et peuvent être lus par d'autres utilisateurs? Existe-t-il un moyen de faire des sauvegardes en conservant correctement chmod000 ?
Ilia Rostovtsev
@IliaRostovtsev Pour autant que je sache, les fichiers shadowet gshadowont les autorisations de 0400.
Karlson
Non, sur CentOS, Fedora / RedHat il est réglé sur 0000. Il n'est pas sûr de le régler 0400, je crois parce que n'importe quel utilisateur de votre système pourrait s'exécuter cat /etc/shadowet en obtenir la sortie?
Ilia Rostovtsev
@IliaRostovtsev Tout d'abord, je regarde les autorisations sur /etc/shadowun système RedHat et s'il est réellement possible pour les non-root d'afficher ce fichier avec des autorisations, 0400cela signifie qu'il y a un bogue important dans le traitement des autorisations, sauf si le fichier appartient à un autre utilisateur .
Karlson
1
@IliaRostovtsev: unix.stackexchange.com/q/549464/135943
Wildcard