Saltar al contenido

¿Cuál es la forma más segura de permitir que un usuario tenga acceso de lectura a un archivo de registro?

Solución:

Solución 1:

Solo para expandir un poco las respuestas anteriores, aquí hay un caso de uso del mundo real. Ejecuto la aplicación de análisis de registros empresariales Splunk en una caja de Redhat. Se ejecuta bajo el usuario splunk y el grupo splunk. Esto evita que splunk acceda a los registros en / var / log, ya que solo son accesibles por root (o un administrador sudo)

Para permitir el acceso de solo lectura para splunk solo, he usado algunas ACL y logrotate modificado para persistirlo.

Puede configurar manualmente la ACL con

sudo setfacl -m g:splunk:rx /var/log/messages

Esto no persistirá ya que logrotate no volverá a aplicar la configuración de ACL, por lo que, para una solución más permanente, agregué una regla para logrotate para restablecer la ACL. Agregué el archivo …

/etc/logrotate.d/Splunk_ACLs

con

{
    postrotate
        /usr/bin/setfacl -m g:splunk:rx /var/log/cron
        /usr/bin/setfacl -m g:splunk:rx /var/log/maillog
        /usr/bin/setfacl -m g:splunk:rx /var/log/messages
        /usr/bin/setfacl -m g:splunk:rx /var/log/secure
        /usr/bin/setfacl -m g:splunk:rx /var/log/spooler
    endscript
}

Verifique el estado de ACL de un archivo con

$ getfacl /var/log/messages

Para obtener más información sobre ACL, consulte https://help.ubuntu.com/community/FilePermissionsACLs http://bencane.com/2012/05/27/acl-using-access-control-lists-on-linux/

Solucion 2:

No es necesario agregar root al grupo, ya que tendrá acceso a través de los privilegios de usuario de todos modos, solo déle lectura al grupo al grupo que usted decida. Recuerde hacer los cambios con logrotate también o los cambios de grupo se borrarán todas las noches.


Solución 3:

Su plan es aceptable y en el esquema de permisos de Unix “tradicional” es la mejor manera de hacerlo.
Otra opción es hacer que syslog desvíe los mensajes de interés a otro archivo (lo que evita que el usuario de la aplicación acceda a cualquier cosa sensible que pueda estar en /var/log/messages).

Si no tiene ganas de estar sujeto al esquema de permisos tradicional de Usuario / Grupo / Otro, también puede usar las ACL POSIX (otras, posiblemente mejores howtos / información disponibles a través de Google) para darle al usuario de su aplicación acceso de solo lectura a /var/log/messages – esto es un poco más detallado y no corre el riesgo de poner accidentalmente a otra persona en el grupo de la aplicación y darle acceso a cosas que no deberían poder ver.


Solución 4:

Yip he usado setfacl para hacer esto para dar acceso a la mail.log archivo para un cliente, no también tendrá que pegar un comando en el logrotate.conf file para restablecer la ACL después de que se hayan rotado los registros, por ejemplo:

postrotate
         /usr/bin/setfacl -m o::r /var/log/mail.log  
endscript

Tenga en cuenta que acabo de configurar esto y no lo he probado, pero aunque se publicaría aquí, no puedo ver por qué no funcionaría, alguien me corrija si me equivoco.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *