Dos programas setuid /usr/bin/bary /usr/bin/bazcomparten un solo archivo de configuración foo. El modo del archivo de configuración es 0640, ya que contiene información confidencial. El único programa se ejecuta como bar:bar(es decir, como barra de usuario , barra de grupo ); el otro como baz:baz. Cambiar usuarios no es una opción, e incluso cambiar grupos no sería preferible.
Deseo vincular el archivo de configuración individual como /etc/bar/fooy /etc/baz/foo. Sin embargo, esto falla porque el archivo debe, hasta donde yo sé, pertenecer ao root:bara root:baz.
Posible solución: crear un nuevo grupo barbazcuyos miembros sean bary baz. Dejar foopertenecer a root:barbaz.
Eso parece una solución bastante dura para mí. ¿No hay una forma más ordenada y sencilla de compartir el archivo de configuración fooentre los dos programas?
Por ahora, mantengo dos copias idénticas del archivo. Esto funciona, pero obviamente está mal. ¿Qué sería lo correcto?
Para información: tengo poca experiencia con grupos Unix y ninguno con setgid (2).
ssl-certgrupo, que es más o menos tu barbazgrupo. El estándar es configurar todas las claves privadas para que sean propiedad del ssl-certgrupo y colocar los UID asociados con los programas que necesitan acceder a ellos en ese grupo.
ssl-certcuya secuencia de comandos postinst, en la instalación, crea el grupo del que habla. No me había dado cuenta ssl-cert. Apache2 (instalado en mi host) recomienda ssl-cert . Los diversos paquetes Exim y Dovecot no lo hacen, pero Postfix (no instalado en mi host) depende de ssl-cert. Debido a Apache, mi host tiene un grupo ssl-cert , pero este grupo aún no tiene miembros. Gracias por el consejo.