Zwei setuid-Programme /usr/bin/bar
und /usr/bin/baz
teilen sich eine einzige Konfigurationsdatei foo
. Der Modus der Konfigurationsdatei ist 0640
, da er vertrauliche Informationen enthält. Das ein Programm läuft als bar:bar
(die, wie Benutzer bar, Gruppe bar ); der andere als baz:baz
. Das Ändern von Benutzern ist keine Option, und selbst das Ändern von Gruppen ist nicht vorzuziehen.
Ich möchte die einzelne Konfigurationsdatei als /etc/bar/foo
und fest verlinken /etc/baz/foo
. Dies schlägt jedoch fehl, da die Datei meines Wissens entweder zu root:bar
oder zu gehören muss root:baz
.
Mögliche Lösung: Erstellen Sie eine neue Gruppe, barbaz
deren Mitglieder bar
und sind baz
. Gehören foo
zu root:barbaz
.
Das sieht für mich nach einer ziemlich schwierigen Lösung aus. Gibt es keine bessere und einfachere Möglichkeit, die Konfigurationsdatei foo
zwischen den beiden Programmen zu teilen ?
Im Moment verwalte ich zwei identische Kopien der Datei. Das funktioniert, ist aber offensichtlich falsch. Was wäre richtig?
Zur Information: Ich habe wenig Erfahrung mit Unix-Gruppen und keine mit setgid (2).
ssl-cert
Gruppe, die so ziemlich Ihre barbaz
Gruppe ist. Der Standard besteht darin, alle privaten Schlüssel so ssl-cert
festzulegen, dass sie der Gruppe gehören, und die UIDs, die den Programmen zugeordnet sind, die auf sie zugreifen müssen, in diese Gruppe aufzunehmen.
ssl-cert
dessen Postinst-Skript bei der Installation die Gruppe erstellt, von der Sie sprechen. Ich hatte es nicht gewusst ssl-cert
. Apache2 (auf meinem Host installiert) empfiehlt ssl-cert
. Die verschiedenen Exim- und Dovecot-Pakete funktionieren nicht, aber Postfix (nicht auf meinem Host installiert) hängt davon ab ssl-cert
. Aufgrund von Apache hat mein Host eine SSL-Zertifikatsgruppe , aber diese Gruppe hat noch keine Mitglieder. Danke für den Hinweis.