Ubuntu Server 14.04でApache2 +userdir
を実行しています。ユーザーは AD に対して認証され、SSH 経由でこのサーバーに正常にログインできます。各ユーザーには、ユーザーが他のユーザーのファイルを変更および読み取ることを禁止する権限があります。$HOME
700
ディレクトリ/home/public_html
は Apache() によって所有されており、各ユーザー (グループのメンバー) が自分のユーザー名の下に自分のサブディレクトリを作成し、自分の にそのサブディレクトリへのシンボリック リンクを作成できるようにするためのwww-data:www-data
アクセス許可を持っています。username を持つサンプル ユーザーの例を次に示します。775
www-data
/home/public_html
$HOME
jdoe43
/home/Domain/jdoe43
$HOME ディレクトリです (権限は 700 です)/home/public_html/jdoe43
シンボリックにリンクされているユーザーのpublic_html
ディレクトリですjdoe43
/home/Domain/jdoe43/public_html
UserDir
ディレクティブは に設定されてい/home/public_html
ます。残りの部分userdir.conf
はデフォルトで Ubuntu にインストールされており、参照用に以下にリストされています。
<IfModule mod_userdir.c>
UserDir /home/public_html
UserDir disabled root
<Directory /home/public_html/*>
AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS>
Require all granted
</Limit>
<LimitExcept GET POST OPTIONS>
Require all denied
</LimitExcept>
</Directory>
</IfModule>
許可する適切なアクセス許可のセットを見つけるのを楽しみにしています
- ファイルにアクセスするための Apache プロセス
/home/public_html/*
- ユーザーは自分の
public_html
ディレクトリを完全に制御できます
そして同時に禁止する
- 別のユーザーの $HOME ディレクトリのコンテンツを表示/変更するユーザー
- にある別のユーザーの
public_html
ディレクトリのコンテンツを表示/変更するユーザー/home/public_html/
さまざまなアクセス許可のセットで試したすべてのことは、Apache でユーザーにアクセスできないpublic_html
か、ユーザーが少なくとも他のユーザー$HOME
またはpublic_html
.
selinuxを使用してファイル システムを構成し、パーミッションを使用して他のユーザーのディレクトリへのアクセスを拒否することを提案するいくつかの投稿を見つけました (私が$HOME
に設定して行ったように700
) 。そのすべてのサブディレクトリとともに。また、最近のバージョンの Ubuntu が に置き換えられたことを示すリソースをいくつか見つけたので、このテクノロジの経験が限られているため、実装に向けた動きを延期することにしました。selinux
/home/public_html
selinux
apparmor
提案/推奨事項は大歓迎です。ありがとうございました。