ACLが設定されていても、ディレクトリ内のファイルを読み取ることができません。

ACLが設定されていても、ディレクトリ内のファイルを読み取ることができません。

/var/log/httpddbaACLを使用しても、セカンダリグループメンバーシップを持つユーザーのディレクトリコンテンツを一覧表示するのに問題があります。少し前までしか役に立ちませんでした。 (私はあなたが聞いたと確信していますそれこれから。 )

ユーザー:oracle

グループ:

[oracle] > groups
oinstall dba

/var/log/httpdディレクトリの内容またはそのディレクトリ内のファイルを一覧表示しようとすると、次のメッセージが表示されます。

[oracle] > ls -o /var/log/httpd/access.log
ls: cannot access /var/log/httpd/access.log: Permission denied
[oracle] > ls -o /var/log/httpd/
ls: cannot open directory /var/log/httpd/: Permission denied

だから私はgetfaclディレクトリで1つを行い、これを得ました:

[oracle] > getfacl -p /var/log/httpd
# file: /var/log/httpd
# owner: root
# group: root
user::rwx
group::---
group:dba:r-x                   #effective:---
mask::---
other::---

getfaclこのディレクトリのファイルに対して操作を実行すると、次の結果が表示されます。

[oracle] > getfacl -p /var/log/httpd/access.log
getfacl: /var/log/httpd/access.log: Permission denied

私が見たもの:

getfaclディレクトリレベル別のコマンドリスト:

[oracle] > ls -o /var/log/httpd/access.log
ls: cannot access /var/log/httpd/access.log: Permission denied
[oracle] > ls -o /var/log/httpd/
ls: cannot open directory /var/log/httpd/: Permission denied
[oracle] > ls  /var/log/httpd/
ls: cannot open directory /var/log/httpd/: Permission denied
[oracle] > ls  -d /var/log/httpd/
/var/log/httpd/
[oracle] > ls  -ld /var/log/httpd/
drwx------+ 2 root root 4096 Jun 21 03:19 /var/log/httpd/

各親ディレクトリレベルでACLを確認します。

[oracle] > getfacl -p /var/log
# file: /var/log
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

[oracle] > getfacl -p /var
# file: /var
# owner: root
# group: root
user::rwx
group::r-x

Linuxのバージョン情報:

[oracle] > uname -a
Linux plxxxx01 4.14.35-1902.7.3.el7uek.x86_64 #2 SMP Thu Oct 31 10:06:41 PDT 2019 x86_64 x86_64 x86_64 GNU/Linux

ページを読んmanだ後に有効な権限とマスクに関する情報を表示できますが、このグループに有効getfaclな権限が適用される理由はまだわかりません。#effective:---dba

ベストアンサー1

ここmask::---に問題があります。この値は、指定されたユーザーと指定されたグループの権限を制限します。つまり、group:dba:設定が何であれ、グループはどの権限も取得できません。

以下を使用してこの問題を解決できます。setfacl -m m:rwx /var/log/httpd

おすすめ記事