私は現在PHPサーバーエクスプローラを開発しており、ディレクトリが空であるか、権限が不足して読み取れないことを確認する必要があります。
私のWebアプリケーションがユーザーとして実行されており、apache
私のアプリケーションがディレクトリパターンに基づいて読み取れないフォルダにアクセスできることがわかります。
権限は次のとおりです。
ls -al
drwxr-x--- 8 laura jpGrp 4096 Aug 10 09:40 dir1
以下はjpGrpの内容です。
cat /etc/group | grep "jpGrp"
jpGrp:x:501:laura,lola,gerard
Apacheユーザーのための内容は次のとおりです。
grep apache /etc/passwd
apache:x:48:48:Apache:/var/www:/sbin/nologin
Apacheがルートグループにありません。
cat /etc/group | grep "root"
root:x:0:root
shell_exec("whoami") PHP 関数の var_dump:
string 'apache' (length=7)
友達はACLを見てほしいと言いましたが、標準のUnixモードよりも優先するものはありません。
それでは、Apacheがこのディレクトリ(dir1)を開くことができるのはなぜですか? (これは私の問題です)
答え1
>それでは、なぜApacheはこのディレクトリ(dir1)を開くことができますか?
私はそれに対する答えを持っておらず、一般的にそうではありません。
>グループ内にグループを作成できますか?
いいえ、Linuxでは、すべてのグループメンバーがユーザーである必要があります。
>またはグループをディレクトリの所有者として作成しますか?
はい、コマンドを使用してユーザーとグループにディレクトリの所有権を割り当てることができますchmod myuser:mygroup mydir
。ディレクトリに対する「グループ」権限は、グループのメンバーであるすべてのユーザーに適用されます。