Por que meu “appuser” não tem permissão para ler um log apche2, embora o usuário tenha um grupo adm?

1

Eu já encontrei algumas soluções aqui: AWStats: não pode acessar / var /log/apache2/access.log , mas isso são "métodos-martelo", como alterar a propriedade e assim por diante. Eu não gosto.

Eu quero entender o que está acontecendo (provavelmente eu uso um desses martelos)

Qual é o cenário: eu tenho um usuário "myapp" (no meu caso, o usuário meu aplicativo usa trilhos)

myapp@myapp-pre ~/appdir$ id
uid=1000(myapp) gid=100(users) groups=100(users),4(adm),27(sudo)

Como você pode ver, o usuário tem o grupo "adm". Vamos dar uma olhada no arquivo de log

myapp@myapp-pre ~/appdir$ sudo ls -l /var/log/apache2/error.log
-rw-r----- 1 root adm 17503 Apr 28 17:05 /var/log/apache2/error.log

Aqui vemos que error.log pertence à raiz: adm - root (rw) - adm (r)

Mas não "sodoed":

myapp@myapp-pre ~/appdir$ ls -l /var/log/apache2/error.log
ls: cannot access /var/log/apache2/error.log: Permission denied   

Se eu der uma olhada no diretório pai:

...
-rw-r--r-- 1 root     root          347 May 26  2017 alternatives.log.7.gz
-rw-r--r-- 1 root     root          419 Mar 14  2017 alternatives.log.8.gz
-rw-r--r-- 1 root     root          369 Feb 14  2017 alternatives.log.9.gz
dr-xr--r-T 2 root     adm          4096 Apr 28 06:05 apache2
-rw-r----- 1 root     adm       4013282 Apr 28 17:22 auth.log
-rw-r----- 1 root     adm       4467467 Apr 23 06:05 auth.log.1
-rw-r----- 1 root     adm        269469 Apr 15 06:05 auth.log.2.gz
...

Vejo que muitos arquivos têm a mesma raiz: adm adm e o usuário myapp pode lê-los.

Tente apenas ler o arquivo

myapp@myapp-pre ~/appdir$ cat /var/log/apache2/error.log
cat: /var/log/apache2/error.log: Permission denied

mesmo resultado ...

Então, por que meu usuário "myapp" não tem permissão para ler?

    
por halfbit 28.04.2018 / 16:54

0 respostas