LinuCレベル3 セキュリティスペシャリスト アクセスおよび権限制御の強化 問26
アクセスおよび権限制御の強化/Linux Access Control Lists によるアクセス制御Debian 12のSambaでファイル共有を提供している。Windowsクライアントから拒否エントリや「削除」などの細かなNTFS形式のアクセス許可を設定すると、POSIX ACLに対応付けられない部分が失われてしまう。Windowsで設定したACLをそのまま保持させたい。smb.conf の共有の設定として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル3 セキュリティスペシャリストの出題範囲「アクセスおよび権限制御の強化」に対応。実際の試験問題ではありません)
- Astore dos attributes = yes を指定し、ACLをDOS属性と一緒に拡張属性へ保存させる
- Bnt acl support = no を指定し、Windowsから受け取ったACLを変換せずにそのまま扱わせる
- Cvfs objects = acl_xattr を指定し、Windows形式のACLを拡張属性 security.NTACL に保存させる
- Dinherit permissions = yes を指定し、親ディレクトリのパーミッションを新しいファイルへ引き継がせる
正解:C
解説
Sambaは既定では、Windowsから設定されたACLをPOSIX ACLへ対応付けて保存するため、拒否エントリや細かな権限のようにPOSIX ACLで表現できない部分は失われます。VFSモジュールの acl_xattr を有効にすると、WindowsのACL(NT ACL)全体を拡張属性 security.NTACL に保存し、Windowsクライアントにはその内容を返すようになります。あわせてファイルシステム側のPOSIX ACLにも近い形の設定が行われます。security 名前空間の拡張属性なので、root権限で getfattr -n security.NTACL を実行すると値の有無を確認できます。
選択肢ごとの解説
- A誤り。store dos attributes は読み取り専用・隠しなどのDOS属性を拡張属性(user.DOSATTRIB)に保存する設定で、ACLを保存するものではありません。
- B誤り。nt acl support = no は、UNIXのパーミッションやACLをWindowsのACLとして見せる対応付けを無効にする設定で、WindowsのACLを保持する機能ではありません。
- C正しい。acl_xattr モジュールは、WindowsのACLを拡張属性 security.NTACL にそのまま保存するため、POSIX ACLに対応付けられない部分も失われません。
- D誤り。inherit permissions は、新しいファイルやディレクトリの権限を create mask 等ではなく親ディレクトリから引き継がせる設定で、WindowsのACLの保持とは関係ありません。