Samba権限の設定

Samba権限の設定

ファイルを作成できますが、書き込みや移動は不可能にすることが可能かどうか疑問に思います。これにより、すべてのファイルにr--r--r--権限が生成されます。
私の現在のsmb.conf:

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = ubuntu
security = user
map to guest = bad user
dns proxy = no

#=== Share Definitions ===

[Anonymous]
path = /samba/anon
browsable =yes
writable = yes
guest ok = yes
read only = no
force user = nobody
create mask = 0444
force create mode = 0444
directory mask = 0444
force directory mode = 0444

/samba/anon権限をに設定する必要がありますdrw-rw-rw-。を削除すると、wユーザーはファイルを削除できるため、ファイルを作成できなくなります。このジレンマは解決できますか?

ベストアンサー1

次のことを試すことができます(今は機能していることを確認できませんが、機能する必要があります)。

[Anonymous]
path = /samba/anon
browsable =yes
writable = yes
guest ok = yes
read only = no
force user = nobody
create mask = 0644
force create mode = 0644
directory mask = 3775
force directory mode = 3775
inherit owner = yes

次に、共有ホームディレクトリの権限を設定します(ここでsambaadmは他のユーザーとは異なるLinuxユーザーです)。

chown -R sambaadm:nogroup /samba/anon
find /samba/anon -type d | xargs chmod 3775
find /samba/anon -not -type d | xargs chmod 0644

これはディレクトリの固定ビットを利用して、所有者だけがファイルを削除できるようにします。 「継承所有者」を使用すると、ユーザーは常にsambaadm状態になるため、誰も削除できません。書き込みは sambaadm が許可するファイルに対してのみ許可され、誰も nogroup メンバーシップを使用してディレクトリに書き込むことはできません。

おすすめ記事