3 votes

Comment accorder à un utilisateur non root l'accès au seul répertoire /var/log ?

J'ai nouvellement créé un utilisateur non-root (normal) et je veux accorder l'accès uniquement au répertoire /var/log afin que l'utilisateur puisse voir et surveiller les journaux. L'utilisateur ne devrait pas être en mesure de cd/ls ou d'accéder au répertoire /etc et de faire quoi que ce soit d'autre que de visualiser les fichiers dans /var/log. Cette configuration est-elle possible ?

J'ai essayé d'utiliser setfacl -m u:user:--- sur le répertoire /etc, mais j'obtiens l'erreur /etc/profile permission denied lorsque je me connecte avec l'utilisateur.

Comment puis-je y parvenir ?

2voto

unsuitable001 Points 51

Méthode 1 :

L'autorisation de visualiser les fichiers journaux est accordée aux utilisateurs faisant partie du groupe adm.

sudo usermod -aG adm <USER>

Méthode 2 :

Utilisez logrotate

manuel de logrotate

créer un groupe de propriétaires de mode Immédiatement après la rotation (avant que le postrotate script ne soit exécuté) le fichier journal est créé (avec le même nom que le fichier journal qui vient d'être tourné). mode spécifie le mode pour le fichier journal en octal (le même que chmod(2)), owner spécifie le nom de l'utilisateur qui sera propriétaire du fichier journal, et group spécifie le groupe auquel le fichier journal appartiendra. L'un des attributs du fichier journal peut être omis, auquel cas les attributs du nouveau fichier utiliseront les mêmes valeurs que le fichier journal original pour les attributs omis. Cette option peut être désactivée en utilisant l'option nocreate.

Utilisation :

/var/log/messages { .... create 444 user group .... }

Méthode 3 :

Fais-le, mec ! Suivez n'importe quelle bûche dont vous avez besoin.

tail -f /var/log/messages.log

Je vais utiliser la 3ème méthode. Parce que je suis paresseux. (zzzzzz)

1voto

waltinator Points 32821

Lire man journalctl et ajoutez le normal l'utilisateur au systemd-journal o adm groupes.

Ou bien vous pourriez le faire de manière compliquée :

Bien que restreindre l'accès à d'autres répertoires soit (IMHO) stupide, voici comment vous pouvez accorder l'accès à des parties de /var/log en ajoutant le normal utilisateur aux groupes. Lire man group;man adduser;man find;man xargs;man stat;man sort;man uniq . Note ajouter un utilisateur à un groupe donnera à cet utilisateur group accès partout sur le système.

# How many unique permission values are there?
# Note that all but 41 allow some sort of group access
walt@bat:~(0)$ sudo find /var/log -print | xargs -r sudo stat -c "%A" | sort | uniq -c | sort -n
[sudo] password for walt: 
      1 drwx------
      1 drwxrwx---
      1 lrwxrwxrwx
      3 drwxr-sr-x
      3 drwxrwxr-x
      3 drwxr-x---
      4 -rw-rw-r--
     13 drwxr-xr-x
     41 -rw-------
     95 -rw-r--r--
    147 -rw-r-----

# What groups are there in /var/log?
walt@bat:~(0)$ sudo find /var/log -print | xargs -r sudo stat -c "%G" | sort | uniq -c | sort -n
      1 debci
      1 lp
      1 ntp
      1 syslog
      1 walt
      2 monkeysphere
      2 www-data
      5 utmp
     33 systemd-journal
    107 adm
    158 root

# Look at the owner and group of the log files and consider
# adding the normal user to these groups

walt@bat:~(0)$ sudo find /var/log -print | xargs -r sudo stat -c "%U %G %n" | sort -u
# 312 lines on MY system - not worth posting

# now, about the 41 that don't allow group access:
walt@bat:~(0)$ sudo find /var/log -perm 0600 -ls
   392396      4 -rw-------   1 root     utmp         1536 Mar 22 09:01 /var/log/btmp.1
   391673      4 -rw-------   1 root     utmp          384 Apr  2 00:43 /var/log/btmp
   394821      0 -rw-------   1 root     root            0 Mar  1  2018 /var/log/dbconfig-common/dbc.log
   424051      4 -rw-------   1 root     root          457 Feb  6  2018 /var/log/dbconfig-common/dbc.log.1
   522427      4 -rw-------   1 root     root         3149 Apr  3 09:04 /var/log/lightdm/seat0-greeter.log.3.gz
   523533      4 -rw-------   1 root     root          828 Feb 17 00:08 /var/log/lightdm/x-1.log.7.gz
   531112      0 -rw-------   1 root     root            0 Apr 14 07:36 /var/log/lightdm/seat0-greeter.log
   522345      4 -rw-------   1 root     root         1002 Apr  2 07:35 /var/log/lightdm/lightdm.log.6.gz
   524257      0 -rw-------   1 root     root            0 Mar 23 08:55 /var/log/lightdm/x-1.log
   523434      4 -rw-------   1 root     root          663 Mar 29 00:50 /var/log/lightdm/x-0.log.7.gz
   527110      4 -rw-------   1 root     root          809 Feb 17 16:19 /var/log/lightdm/x-1.log.6.gz
   523997      4 -rw-------   1 root     root         1402 Apr  2 00:58 /var/log/lightdm/seat0-greeter.log.4.gz
   523443      4 -rw-------   1 root     root         1358 Mar 29 00:55 /var/log/lightdm/lightdm.log.7.gz
   523486      4 -rw-------   1 root     root          206 Apr  6 07:35 /var/log/lightdm/lightdm.log.3.gz
   523363      4 -rw-------   1 root     root         2481 Apr  3 09:14 /var/log/lightdm/lightdm.log.5.gz
   522228      4 -rw-------   1 root     root         2303 Apr  5 10:46 /var/log/lightdm/seat0-greeter.log.2.gz
   527032      4 -rw-------   1 root     root          778 Mar 21 00:49 /var/log/lightdm/x-1.log.3.gz
   523128      4 -rw-------   1 root     root          662 Mar  6 00:15 /var/log/lightdm/x-1.log.5.gz
   524005      4 -rw-------   1 root     root          169 Apr  8 07:35 /var/log/lightdm/lightdm.log.2.gz
   523528      4 -rw-------   1 root     root         1842 Mar 29 00:50 /var/log/lightdm/seat0-greeter.log.5.gz
   522698      4 -rw-------   1 root     root          738 Apr  2 00:58 /var/log/lightdm/x-0.log.6.gz
   523317      4 -rw-------   1 root     root          737 Apr 13 10:07 /var/log/lightdm/x-0.log.1.gz
   523446      4 -rw-------   1 root     root         1231 Apr 14 07:35 /var/log/lightdm/lightdm.log.1.gz
   531103      0 -rw-------   1 root     root            0 Apr 14 07:36 /var/log/lightdm/x-0.log
   523440      4 -rw-------   1 root     root          854 Mar 22 21:57 /var/log/lightdm/x-1.log.1.gz
   522511      4 -rw-------   1 root     root         1801 Mar 28 09:57 /var/log/lightdm/seat0-greeter.log.6.gz
   522497      4 -rw-------   1 root     root          738 Apr  3 09:04 /var/log/lightdm/x-0.log.5.gz
   523402      4 -rw-------   1 root     root           70 Apr  6 00:41 /var/log/lightdm/x-0.log.3.gz
   531094      0 -rw-------   1 root     root            0 Apr 14 07:36 /var/log/lightdm/lightdm.log
   523394      4 -rw-------   1 root     root         1984 Apr  5 10:51 /var/log/lightdm/lightdm.log.4.gz
   523445      4 -rw-------   1 root     root          913 Mar 21 20:45 /var/log/lightdm/x-1.log.2.gz
   522927      4 -rw-------   1 root     root           67 Apr  7 22:08 /var/log/lightdm/x-0.log.2.gz
   523821      4 -rw-------   1 root     root         2017 Mar 26 01:46 /var/log/lightdm/seat0-greeter.log.7.gz
   522883      4 -rw-------   1 root     root         1965 Apr 13 12:49 /var/log/lightdm/seat0-greeter.log.1.gz
   523403      4 -rw-------   1 root     root          800 Mar  6 23:46 /var/log/lightdm/x-1.log.4.gz
   522648      4 -rw-------   1 root     root          771 Apr  5 10:46 /var/log/lightdm/x-0.log.4.gz
   406444    324 -rw-------   1 syslog   adm        331656 Jan 29  2018 /var/log/installer/syslog
   406446      4 -rw-------   1 root     root           19 Jan 29  2018 /var/log/installer/version
   406447      4 -rw-------   1 root     root         1067 Jan 29  2018 /var/log/installer/casper.log
   406448      8 -rw-------   1 root     root         7110 Jan 29  2018 /var/log/installer/debug
   406445    768 -rw-------   1 root     root       785438 Jan 29  2018 /var/log/installer/partman
walt@bat:~(0)$

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X