web-dev-qa-db-ja.com

Samba 4でグループ書き込み許可を取得する方法は?

Ubuntuを実行しているSamba共有サーバーがあります。 14.04にアップグレードした後、Sambaを3から4にアップグレードしました。それ以降、新しく作成したディレクトリまたはファイルに対するグループ書き込み許可を取得できません。

以前Samba3で機能していたのは、これらの設定を使用していたことです。

security mask = 000
force security mode = 660
directory security mask = 000
force directory security mode = 770
force user = nobody
force group = Domain Users

これらの設定はSamba 4で削除されました( https://wiki.samba.org/index.php/Samba_4.0_Features_added/changed#smb.conf_changes を参照)。

しかし、現在、私のディレクトリは「drwxr-x --- 2 nobody Domain Users」、私の新しいファイルは「-rwxr-x --- 1 nobody Domain Users」として作成されています。

では、Samba 4でユーザーが新しいディレクトリとファイルを作成して書き込み権限で共有できるようにする方法は何ですか?

これが私の完全なsamba設定です:

[global]
    workgroup = WORKGROUP
    server string = %h server (Samba, Ubuntu)
    interfaces = 127.0.0.0/8, eth0
    map to guest = Bad User
    obey pam restrictions = Yes
    passdb backend = ldapsam:ldap://ldap
    pam password change = Yes
    passwd program = /usr/bin/passwd %u
    passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
    syslog = 0
    log file = /var/log/samba/log.%m
    max log size = 1000
    load printers = No
    domain master = Yes
    dns proxy = No
    ldap admin dn = cn=root,dc=example,dc=com
    ldap group suffix = ou=Groups
    ldap idmap suffix = ou=Idmap
    ldap machine suffix = ou=Computers
    ldap passwd sync = yes
    ldap suffix = dc=example,dc=com
    ldap ssl = no
    ldap user suffix = ou=People
    usershare allow guests = Yes
    panic action = /usr/share/samba/panic-action %d
    idmap config * : backend = tdb

[CommonShare]
    comment = Common share
    path = /srv/samba/common
    valid users = @myusers
    read only = No
    create mask = 0660
    force create mode = 0770
    directory mask = 0770
    force directory mode = 0770
    inherit permissions = Yes
    inherit owner = Yes
2
alci

問題を修正するには、共有のforce userのリストにvalid userssernameを追加します。

あなたの場合:

[Myshare]
...
valid users = @bureau
...

する必要があります:

[Myshare]
...
valid users = nobody @bureau
...
2
Matg

私はこれが古いスレッドであることを知っていますが、これは誰かを助けるかもしれません。 setgidビットを(0ではなく)2に設定することでこれを解決しました。そのため、ディレクトリ/ファイルはグループ書き込み権限で作成されます。

force create mode = 2777 force directory mode = 2777

から: https://linuxconfig.org/how-to-use-special-permissions-the-setuid-setgid-and-sticky-bits#h7-the-setgid-bit

1
ededed

この同じ問題が私に起こりました。

デフォルトのグループ権限ですべてのディレクトリのアクセス制御リストを更新する必要がありました。

Sudo setfacl -R -m d:g:family:rwx /mnt/backup

-R = recursive
-m = modify
d: = defaults
g: = group name ("family" in my case) or gid number
rwx = default permissions read write execute for all in group

/mnt/backupは、変更するディレクトリ(およびサブディレクトリ)です。

1
Scott Lentz

最後の2つではなく、最初の4つのパラメーターが削除されました(参照: https://www.samba.org/samba/docs/man/manpages/smb.conf.5.html#FORCEUSER ) 。

ですから、それらを設定ファイルに戻すだけで問題は解決します。特定のグループのユーザーに書き込み権限が必要な場合は、write listパラメーターを追加します。特定のユーザーまたはグループに書き込み権限を付与する機能を提供します。

特定のグループに属するすべてのユーザー(およびこれらのユーザーのみ)にファイルの作成/変更を許可するために使用する構成の例を次に示します。

[Myshare] writeable = yes path = /shares/office force directory mode = 770 force create mode = 770 force group = bureau valid users = @bureau write list = @bureau

0