Warum kann ich nicht auf einen Ordner zugreifen, dessen Eigentümer ich bin?

Warum kann ich nicht auf einen Ordner zugreifen, dessen Eigentümer ich bin?

Ich betreibe eine CentOS-VM in EC2. Ich melde mich per SSH als EC2-Benutzer an und möchte einen Protokollordner für meine Anwendung erstellen, die ich bereitstellen möchte:

sudo mkdir /var/log/search-api
sudo chown ec2-user /var/log/search-api

Jetzt führe ich lsden Ordner aus und erhalte Permissions denied:

[ec2-user@box_name ~]$ ls /var/log/search-api
ls: cannot access /var/log/search-api: Permission denied

Dasselbe passiert, wenn ich versuche, eine Datei in diesen Ordner zu schreiben:

[ec2-user@box_name ~]$ echo 'test' > /var/log/search-api/aaa.log
-bash: /var/log/search-api/aaa.log: Permission denied

Warum habe ich keine Berechtigung, einen Ordner aufzulisten, dessen Eigentümer ich bin, oder darin zu schreiben?

Antwort1

Vorausgesetzt, es sind keine ACLs vorhanden, benötigen Sie die Ausführungsberechtigung für alle Verzeichnisse (vom Stammverzeichnis aus), um auf eine bestimmte Datei zuzugreifen (unabhängig davon, ob Sie der Eigentümer sind oder nicht).

Antwort2

In CentOS müssen Sie auch auf SELinux-Labels achten. Sie sind nicht einfach beliebig, aber wenn Sie sich dazu entschließen, nicht standardmäßige Dinge an nicht standardmäßigen Orten mit nicht standardmäßigen Benutzern zu schreiben, kann das zu Problemen führen.

Bitte klären Sie, welche SELinux-Labels verwendet werden ls -Z. Und was in Ihrem Prüfprotokoll in Bezug auf AVCs steht.

verwandte Informationen