Linux: come imporre autorizzazioni specifiche per i registri appena creati che vengono creati dalla rotazione dei registri?


15

Ho notato che i registri di posta che vengono creati /var/logvengono creati e di proprietà di root (utente e gruppo). Ho scritto un controllo Nagios che monitora il registro e per consentire all'utente Nagios di accedervi, ho dato al othergruppo le autorizzazioni di lettura, ovvero:

chmod o+r /var/log/maillog

Ora, quando ci penso, questo è solo un file di registro, quando il file di registro verrà riempito, il meccanismo di rotazione del registro rinominerà questo file e ne aprirà uno nuovo, ma il nuovo maillogfile non avrà il read writepermesso.

Quindi la mia domanda è: come posso assicurarmi che il meccanismo di rotazione del registro crei tutti i nuovi file di mailllog con le giuste autorizzazioni per l'utente Nagios?

Grazie in anticipo

Risposte:


21

logrotateha l' createopzione:

create mode owner group

Immediatamente dopo la rotazione (prima dell'esecuzione dello script postrotate) viene creato il file di registro (con lo stesso nome del file di registro appena ruotato). modespecifica la modalità per il file di registro in ottale (lo stesso di chmod (2)), il proprietario specifica il nome utente che sarà proprietario del file di registro e group specifica il gruppo al quale apparterrà il file di registro. È possibile omettere qualsiasi attributo del file di registro, nel qual caso tali attributi per il nuovo file utilizzeranno gli stessi valori del file di registro originale per gli attributi omessi. Questa opzione può essere disabilitata usando l'opzione nocreate.

Maggiori informazioni con man logrotate.

Usalo così:

/var/log/maillog {
....
        create 664 user group
....
}

in /etc/logrotate.confo un file separato in /etc/logrotate.de verificare se nessun altro file ha già la precedenza su questo. La modalità di configurazione dipende dal sistema operativo in uso (ad es. Ubuntu, questo viene gestito nella rsyslogconfigurazione).


Come posso configurare che /var/log/maillogverranno creati solo i file di registro futuri con le autorizzazioni utente desiderate senza modificare nessuna delle impostazioni predefinite che sono già applicate al maillog?
Itai Ganot,

Vedi la mia modifica e lettura man logrotate(e guarda /etc/logrotate.confe /etc/logrotate.dper molti esempi).
Sven

2
@ItaiGanot Dovresti anche correggere la tua configurazione di syslog in modo che crei il file con il permesso appropriato, invece di fare un chmod iniziale.
Jenny D,

@JennyD, grazie, ciò significa che dovrei rimuovere la /var/log/mailloglinea da in /etc/logrotate.d/syslogmodo che le impostazioni in /etc/logrotate.confavranno luogo?
Itai Ganot,

2
@ItaiGanot No! Significa che dovresti scoprire quale programma syslog stai usando (probabilmente uno syslog-ngo entrambi rsyslog) e cambiarne la configurazione. Ciò è necessario perché quando il sistema viene riavviato o il programma syslog viene riavviato per qualche altro motivo, potrebbe ricreare il file con l'autorizzazione errata.
Jenny D,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.