Web サーバーを最初から構成しようとしていますが、すべてを自分で行うのは初めてなので、 にある各サイトにどのような権限を設定する必要があるかわかりません/var/www
。
現時点では、私がホストしている 2 つの Web サイトのレイアウトは次のようになっています。
/var/www/ |-- blog.dev/
|-- public_html/
|-- .htaccess
|-- wp-admin
|-- wp-content
...
|-- web.dev/
|-- public_html/
|-- .htaccess
|-- index.php
現状、私の現在のワークフローは主にssh-サーバーに接続し、時々ファイルをアップロードするsftpそのため、たとえば Wordpress ブログ経由で写真をアップロードするときに、Apache が変更できるように、ユーザー アカウントですべてを変更できるようにする必要があります。
そこで、chmod 775
両方の public_html に を割り当てて に配置しましたchown www-data:www-data
が、これが安全かどうかわかりません。 は/var/www
依然として root によって所有されており、私のユーザー アカウントもwww-data
グループに配置されています。私の質問は、全体的な設定を改善するために何ができるかということです。これは非常に不格好で不器用な感じがします。私が行った方法では正しいとは思えません。潜在的な侵害から身を守るために、権限を適切に構成するための、より確実な方法は何ですか。
答え1
Web アプリの権限をロックダウンするのは良い考えだと思います。必要な場合を除き、書き込みアクセスは制限する必要があります。ファイルとディレクトリを読み取り専用に変更し、その所有権を他のユーザー (おそらく root) に変更します。読み取り専用で www-data に属している場合は、権限を変更することができます。