1.7.3. POSIX ACL を使用する Samba 共有での拡張 ACL の設定
共有ディレクトリーが保存されているファイルシステムが拡張 ACL に対応している場合は、それを使用して複雑な権限を設定できます。拡張 ACL には、複数のユーザーおよびグループの権限を指定できます。
拡張 POSIX ACL を使用すると、複数のユーザーおよびグループで複雑な ACL を設定できます。ただし、設定できるのは以下の権限のみです。
- アクセスなし
- 読み取りアクセス
- 書き込みアクセス
- 完全な制御
フォルダーの作成やデータの追加 など、詳細な Windows 権限が必要な場合は、Windows ACL を使用するように共有を設定します。Windows ACL を使用する共有の設定 を参照してください。
以下の手順では、共有で拡張 ACL を有効にする方法を説明します。また、拡張 ACL の設定例も含まれています。
前提条件
- ACL を設定する Samba 共有がある。
手順
/etc/samba/smb.confファイルの共有セクションで以下のパラメーターを有効にして、拡張 ACL の ACL 継承を有効にします。inherit acls = yes詳細は、man ページの
smb.conf(5)のパラメーターの説明を参照してください。smbサービスを再起動します。# systemctl restart smb- ディレクトリーの ACL を設定します。以下に例を示します。
例1.2 拡張 ACL の設定
以下の手順は、/srv/samba/example/ ディレクトリーに対して、Domain Admins グループに読み取り、書き込み、および実行の権限、Domain Users グループに対する読み取りおよび実行の権限を設定し、その他の全員のアクセスを拒否します。
ユーザーアカウントのプライマリーグループへの自動許可権限を無効にします。
# setfacl -m group::--- /srv/samba/example/# setfacl -m default:group::--- /srv/samba/example/ディレクトリーのプライマリーグループは、さらに動的な
CREATOR GROUPプリンシパルにマッピングされます。Samba 共有で拡張 POSIX ACL を使用すると、このプリンシパルは自動的に追加され、削除できません。ディレクトリーに権限を設定します。
Domain Adminsグループに読み取り、書き込み、および実行の権限を付与します。# setfacl -m group:"DOMAIN\Domain Admins":rwx /srv/samba/example/Domain Usersグループに読み取りおよび実行の権限を付与します。# setfacl -m group:"DOMAIN\Domain Users":r-x /srv/samba/example/その他の ACL エントリーに権限を設定し、その他の ACL エントリーに一致しないユーザーへのアクセスを拒否します。# setfacl -R -m other::--- /srv/samba/example/
この設定は、このディレクトリーにのみ適用されます。Windows では、これらの ACL は
このフォルダーのみのモードにマッピングされます。前の手順で設定した権限を、このディレクトリーに作成した新規ファイルシステムのオブジェクトから継承できるようにするには、以下のコマンドを実行します。
# setfacl -m default:group:"DOMAIN\Domain Admins":rwx /srv/samba/example/# setfacl -m default:group:"DOMAIN\Domain Users":r-x /srv/samba/example/# setfacl -m default:other::--- /srv/samba/example/この設定では、プリンシパルの
このフォルダーのみモードが、このフォルダー、サブフォルダー、およびファイルに設定されます。
Samba は、手順に設定されている権限を、以下の Windows ACL にマッピングします。
| プリンシパル | アクセス | 適用先 |
|---|---|---|
| Domain\Domain Admins | 完全な制御 | このフォルダー、サブフォルダー、およびファイル |
| Domain\Domain Users | 読み取りおよび実行 | このフォルダー、サブフォルダー、およびファイル |
|
| なし | このフォルダー、サブフォルダー、およびファイル |
| owner (Unix User\owner) [b] | 完全な制御 | このフォルダーのみ |
| primary_group (Unix User\primary_group) [c] | なし | このフォルダーのみ |
| 完全な制御 | サブフォルダーおよびファイルのみ | |
| なし | サブフォルダーおよびファイルのみ | |
[a]
Samba は、このプリンシパルの権限を その他 の ACL エントリーからマッピングします。
[b]
Samba は、ディレクトリーの所有者をこのエントリーにマッピングします。
[c]
Samba は、ディレクトリーのプライマリーグループをこのエントリーにマッピングします。
[d]
新規ファイルシステムオブジェクトでは、作成者はこのプリンシパルの権限を自動的に継承します。
[e]
POSIX ACL を使用する共有では、このプリンシパルの設定または削除には対応していません。
[f]
新規ファイルシステムオブジェクトの場合、作成者のプライマリーグループは、自動的にこのプリンシパルの権限を継承します。
| ||