3

CentOS 7 に未変更の Apache を新しくインストールしました。/var/www/html のフォルダーのアクセス許可を見ると、そのコンテンツが apache によって所有されていることに気付きました。ただし、ファイルが作成されると、その所有者とグループは Apache になります。

html は root:root が所有していますが、すべてのコンテンツは apache:apache が所有する必要がありますか? または [ユーザー]:そのユーザーが Apache グループに属している apache? これについてどうすればよいですか?

編集: 別の質問 -これを変更しますか? Linux システムでのファイルの所有権についてよく理解していませんが、この構成では、新しく作成されたファイル (apache:apache) が既に存在するファイル (root:root) に対してアクションを実行できないようです。これにより、PHP ハッキングが既存のファイルを操作できなくなるはずですよね? しかし、これは単なるセキュリティの錯覚ですか?

4

1 に答える 1

6

/etc/httpd/conf/httpd.conf ファイルを確認し、ユーザーとグループを検索します [例: User apache Group apache]。これらはデフォルトで所有者です。あなたの Web サイトでは、user:group に割り当てられたファイルとフォルダーに書き込み権限を追加する必要はありませんが、Web 経由でアクセスできるようにするために、所有者や他のユーザーが読み取り可能に設定できます。

更新された回答: root が所有する DirectoryRoot (/var/www/html) の主な理由はセキュリティです。root をファイルの所有者のままにして、グループを apache に設定できます。セキュリティに関しては、apache グループがファイルへの読み取り専用アクセス権を持っていることを確認してください [-> 最初の措置]。セキュリティは幻想ではありません。ファイルはルートによって所有され、他のユーザーからの読み取りアクセス権はありませんが、外部の攻撃者がファイルへの書き込みアクセス権を取得することは困難です [これがサイトをハイジャックする最も一般的な方法であるため]。

于 2015-03-05T13:32:39.830 に答える