Ho un'applicazione che scrive un file di log in /var/app/applog.log. Questa applicazione deve essere avviata come root, ma viene eseguita come app: app e può anche essere declassata a nessuno: nessuno
Che cosa è esattamente nessuno: nessuno e quali privilegi ha?
È meglio eseguire la mia app come app: app o nessuno: nessuno?
Il file di registro ha lo stesso utente del demone che li crea (app o nessuno). Ma per qualche motivo appartiene al gruppo radice.
Ho visto che rsyslog usa l'utente syslog e, a seconda della configurazione, usa il gruppo adm (ho visto molte guide che raccomandano l'uso di questo gruppo per rsyslog. Cosa fa questo gruppo ed è sicuro utilizzarlo per rsyslog?)
Il mio rsyslog.conf ha questo aspetto:
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup adm
Affinché rsyslog possa leggere il log della mia app devo cambiare il gruppo dei file di log in adm e per qualche ragione devo anche aggiungere rsyslog al gruppo adm (anche se specificando adm group in conf) per rsyslog in grado di leggi il file.
Quale utente: gruppo dovrebbero essere i file di log e quale è il modo più sicuro per consentire a ryslog di leggerli?
Alla fine voglio che il mio demone sia in grado di scrivere solo su questi registri e rsyslog sia in grado di leggerli. Nessun altro utente dovrebbe essere in grado di leggere / modificare i log diversi da root. Qualche idea?