Due programmi setuid /usr/bin/bare /usr/bin/baz, condividono un singolo file di configurazione foo. La modalità del file di configurazione è 0640, poiché contiene informazioni riservate. L'unico programma viene eseguito come bar:bar(ovvero, come barra utente , barra di gruppo ); l'altro come baz:baz. Cambiare utenti non è un'opzione e persino cambiare gruppi non sarebbe preferibile.
Desidero collegare a fondo il singolo file di configurazione come /etc/bar/fooe /etc/baz/foo. Tuttavia, questo non riesce perché il file deve, per quanto ne so, appartenere root:baro a root:baz.
Soluzione potenziale: creare un nuovo gruppo i barbazcui membri sono bare baz. Facciamo fooparte di root:barbaz.
Mi sembra una soluzione piuttosto pesante. Non esiste un modo più semplice e semplice per condividere il file di configurazione footra i due programmi?
Per ora, sto mantenendo due copie identiche del file. Funziona, ma ovviamente è sbagliato. Quale sarebbe giusto?
Per informazioni: ho poca esperienza con i gruppi Unix e nessuno con setgid (2).
ssl-certgruppo, che è praticamente il tuo barbazgruppo. Lo standard consiste nell'impostare tutte le chiavi private di proprietà del ssl-certgruppo e inserire gli UID associati ai programmi che devono accedervi in quel gruppo.
ssl-certcui script postinst, al momento dell'installazione, crea il gruppo di cui parli. Non ne ero a conoscenza ssl-cert. Apache2 (installato sul mio host) consiglia ssl-cert . I vari pacchetti Exim e Dovecot non lo fanno, ma Postfix (non installato sul mio host) dipende su ssl-cert. A causa di Apache, il mio host ha un gruppo ssl-cert , ma questo gruppo non ha ancora membri. Grazie per il consiglio.