Solaris

Solaris 11:zfs smb 共享僅作為來賓工作

  • January 14, 2021

我在 Solaris 11.4

我創建了一個 zfs fs

zfs create rpool/share

我設置為通過 smb 共享

zfs set share=name=zfssmb1,path=/rpool/share,prot=smb,csc=auto,guestok=false rpool/share

當我嘗試從任何客戶端通過 smbclient 訪問時..

smbclient \\\\solaris11.mydomain.local\zfssmb1 -U myuser%mypass -w mydomain

給我拒絕訪問。在 /var/adm/messages 上說..

SOLARIS11\guest]: (10.3.0.225) zfssmb1 access denied: guest disabled

如果我啟用來賓訪問,我可以通過 smbclient 毫無問題地訪問

zfs set share=name=zfssmb1,path=/rpool/share,prot=smb,csc=auto,guestok=true rpool/share

我嘗試設置 idmap 但沒有任何改變

idmap add winuser:*@mydomain.local unixuser:*
idmap add "wingroup:Domain Users@mydomain.local" unixgroup:users
idmap add "wingroup:Domain Admins@mydomain.local" unixgroup:staff

EDIT1:一點進步

通過 smbadm 啟用我的使用者後

smbadm enable user myuser

並編輯 /etc/pam.d/other

password required       pam_smb_passwd.so.1 nowarn

我可以從 Solaris 客戶端成功掛載共享

mount -o user=myuser -F smbfs //solaris11/zfssmb1 /mnt

但是 Linux 和 Solaris 上的 Linux 客戶端和 smbclient 返回登錄失敗

mount.cifs \\\\solaris11.mydomain.local\\zfssmb1 -o user=myuser,password=*******

smbclient \\\\solaris11.mydomain.local\\zfssmb1 -U myuser%mypass

找到解決方案,完整的解決方案在這裡

a) 創建一個 zfs fs

zfs create rpool/share

b) 設置為通過 smb 共享

zfs set share=name=zfssmb1,path=/rpool/share,prot=smb,csc=auto,guestok=false rpool/share

c) 通過 smbadm 設置使用者

smbadm enable user myuser

d) 添加密鑰

smbadm add-key -u myuser

e) 編輯 /etc/pam.d/other 並將這一行放在文件末尾

password required       pam_smb_passwd.so.1 nowarn

f) 現在最重要的是,更改密碼,此命令同時啟用 unix 和 samba pass

passwd myuser

g) 現在試一下,如果工作,來自 Solaris 客戶端的這個命令必須執行良好

smbclient \\\\solaris11.mydomain.local\\zfssmb1 -U myuser%mypass

h) 以及來自 Linux 客戶端的那些

mount.cifs \\\\solaris11.mydomain.local\\zfssmb1 -o user=myuser,password=yourpass,vers=1.0 /mnt

smbclient \\\\solaris11.mydomain.local\\zfssmb1 -U myuser%mypass

引用自:https://unix.stackexchange.com/questions/629085