[Samba] Samba4 Does cifs need a keytab for the multiuser option?
steve
steve at steve-ss.com
Fri Apr 12 01:32:56 MDT 2013
On 12/04/13 08:06, steve wrote:
> On 11/04/13 22:45, steve wrote:
>> On 11/04/13 22:05, Rowland Penny wrote:
>>> On 11/04/13 20:42, steve wrote:
>>>> On 11/04/13 20:39, Rowland Penny wrote:
>>>>> On 11/04/13 17:27, steve wrote:
>>>>>> Hi
>>>>>> samba --version
>>>>>> Version 4.0.6-GIT-4bebda4
>>>>>>
>>>>>> smb.conf:
>>>>>> [users]
>>>>>> path = /home/users
>>>>>> read only = No
>>>>>>
>>>>>> Working on the DC which is also the fileserver
>>>>>> user steve2 can write to his folder at /home/users/steve2
>>>>>>
>>>>>> But if we now mount the share:
>>>>>> sudo mount -t cifs //doloresdc/users /mnt -osec=krb5,multiuser
>>>>>>
>>>>>> he can't write to the mounted share at /mnt/users/steve2 He gets
>>>>>> 'Permission denied'. His id is the same, all that's changed is
>>>>>> that now it's mounted via cifs.
>>>>>>
>>>>>> The mount:
>>>>>>
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: key description:
>>>>>> cifs.spnego;0;0;3f000000;ver=0x2;host=doloresdc;ip4=192.168.1.100;sec=krb5;uid=0x0;creduid=0x0;user=root;pid=0x116b
>>>>>>
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: ver=2
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: host=doloresdc
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: ip=192.168.1.100
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: sec=1
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: uid=0
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: creduid=0
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: user=root
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: pid=4459
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: find_krb5_cc: considering
>>>>>> /tmp/krb5cc_0
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: find_krb5_cc:
>>>>>> FILE:/tmp/krb5cc_0 is valid ccache
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: handle_krb5_mech: getting
>>>>>> service ticket for doloresdc
>>>>>> Apr 11 18:18:16 doloresdc cifs.upcall: handle_krb5_mech: obtained
>>>>>> service ticket
>>>>>>
>>>>>> user steve2, (uid=3000032) goes to his cifs mounted share:
>>>>>>
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: key description:
>>>>>> cifs.spnego;3000032;20513;3f000000;ver=0x2;host=doloresdc;ip4=192.168.1.100;sec=krb5;uid=0x2dc6e0;creduid=0x2dc6e0;pid=0x1193
>>>>>>
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: ver=2
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: host=doloresdc
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: ip=192.168.1.100
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: sec=1
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: uid=3000032
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: creduid=3000032
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: pid=4499
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: find_krb5_cc: considering
>>>>>> /tmp/krb5cc_3000032_NI8WDi
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: find_krb5_cc:
>>>>>> FILE:/tmp/krb5cc_3000032_NI8WDi is valid ccache
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: find_krb5_cc: considering
>>>>>> /tmp/krb5cc_0
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: find_krb5_cc:
>>>>>> /tmp/krb5cc_0 is owned by 0, not 3000032
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: handle_krb5_mech: getting
>>>>>> service ticket for doloresdc
>>>>>> Apr 11 18:19:50 doloresdc cifs.upcall: handle_krb5_mech: obtained
>>>>>> service ticket
>>>>>>
>>>>>> but cannot write to it:(
>>>>>>
>>>>>> This works OK if I drop the multiuser option but that's no good
>>>>>> for us as we're trying to migrate erm, multiple users from nfs to
>>>>>> cifs on our Linux boxes.
>>>>>> Question: Am I missing a keytab? Does cifs need any keys for the
>>>>>> multiuser option?
>>>>>>
>>>>>> Cheers,
>>>>>> Steve
>>>>>>
>>>>> Hi Steve, in a word YES!
>>>>> If you are mounting the users home directory from the S4 server
>>>>> via cifs, I do not think that you need the multiuser option. I
>>>>> think you only need it if you want multiple users to use the the
>>>>> same mount.
>>>>>
>>>>> Rowland
>>>>>
>>>>>
>>>>>
>>>>>
>>>> Hi Rowland, hi everyone
>>>> I think I do need multiuser because I am mounting the users home
>>>> directories and many users will need to access their own folders
>>>> with their own uid:gid. That can't happen if the mount is owned by
>>>> just one user since all files are created by that uid:gid
>>>> combination,no good for hundreds of different users. In fact we
>>>> have just that with nfs at the mement but want to replace it with
>>>> cifs because of locking problems between nfs and windows.
>>>>
>>>> Anyway, I just put the host and machine clients in /etc/krb5.keytab
>>>> ancache d nada. Still the same. Permission denied when a user
>>>> tries to write to his cifs mounted home folder.
>>>>
>>>> I think this has something to do with changes in cifs-utils but. . .
>>>>
>>>> Cheers,
>>>> Steve
>>>>
>>> Hi Steve, each user needs to have their own kerberos cache, I seem
>>> to have this working on my small test network but I am using sssd as
>>> I have come to the conclusion that winbind sucks ;-)
>>>
>>> Rowland
>>>
>>>
>> Hi Rowland
>> Absolutely agree on winbind;) We've always used nss-ldapd. Each user
>> who logs in gets his own cache under /tmp e.g. /tmp/krb5cc_3000032 so
>> I don't think it's the cache that's the problem. If we use kerberised
>> nfs instead of cifs, the user can write to the share fine.
>>
>> It's something about the cifs multiuser I've missed I'm almost certain.
>> Cheers,
>> Steve
> Hi
> Maybe this has something to do with it?
> dmesg
>
> [ 535.106336] FS-Cache: Loaded
> [ 535.121753] FS-Cache: Netfs 'cifs' registered for caching
> [ 535.121790] Key type cifs.spnego registered
> [ 535.121823] Key type cifs.idmap registered
> [ 535.589126] CIFS VFS: Send error in SessSetup = -126
> [ 535.589270] CIFS VFS: cifs_mount failed w/return code = -126
> [ 821.816568] CIFS VFS: Send error in SessSetup = -126
> [ 823.964101] CIFS VFS: Send error in SessSetup = -126
> [ 835.880675] CIFS VFS: Send error in SessSetup = -126
>
> Thanks, Steve
>
>
Hi again
This is driving me crazy!
If I change the permissions on the cifs share to 0777, I can then write
to the cifs share as user steve2 BUT the uid:gid sent by cifs are wrong:
-rw-r--r-- 1 3000032 20513 0 Apr 12 09:25 j2
-rwxrwxr-x+ 1 3000017 users 0 Apr 12 09:25 j3
The file j2 was created on the unmounted share with the correct uid:gid,
3000032:20513
The file j3 was created on the cifs mounted share. The server has sent
3000017:100 :(
Any ideas?
Cheers,
Steve
More information about the samba
mailing list