當 samba server security 選 user 安全等級時是用本身這台 samba server 做身份驗證.因為需要身分所以第一步就是要先新增使用者.不像之前的版本是將資料儲存在 /etc/samba/smbpasswd,RHEL5 將預設的使用者資料庫放在 passdb.tdb .
[root@benjr ~]# cat /etc/samba/smb.conf # ----------------------- Standalone Server Options ------------------------ # # Security can be set to user, share(deprecated) or server(deprecated) # # Backend to store user information in. New installations should # use either tdbsam or ldapsam. smbpasswd is available for backwards # compatibility. tdbsam requires no further configuration. security = user |
不過當我們在建立使用者帳號密碼時這個使用者必須儲存在 Linux 本機上,這跟當地硬碟權限有關.新增兩位使用者 "Bob" 和 "John"
[root@benjr ~]# adduser bob [root@benjr ~]# adduser john [root@benjr ~]# passwd bob Changing password for user bob. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. [root@benjr ~]# passwd john Changing password for user john. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. |
此時你可以透過 system-config-samba 新增使用者,在開啟 #system-config-samba 後,選擇 Preferences / Samba Users 增加使用者 "Add User"
因為我們只能選擇已經存在的 Linux User 所以在 Unix Username:選擇剛剛新增的 bob 和 john.Windows Username 就設的跟 Unix Username 一樣即可.
或是透過 #pdbedit -au 來新增使用者.
[root@benjr ~]# pdbedit -au bob new password: retype new password: Unix username: bob NT username: Account Flags: [U ] User SID: S-1-5-21-1634407166-380897321-584037179-1001 Primary Group SID: S-1-5-21-1634407166-380897321-584037179-513 Full Name: Home Directory: \\benjr\bob HomeDir Drive: Logon Script: Profile Path: \\benjr\bob\profile Domain: BENJR Account desc: Workstations: Munged dial: Logon time: 0 Logoff time: never Kickoff time: never Password last set: Fri, 17 Apr 2009 03:38:39 CST Password can change: Fri, 17 Apr 2009 03:38:39 CST Password must change: never Last bad password : 0 Bad password count : 0 Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF [root@benjr ~]# pdbedit -au john new password: retype new password: Unix username: john NT username: Account Flags: [U ] User SID: S-1-5-21-1634407166-380897321-584037179-1002 Primary Group SID: S-1-5-21-1634407166-380897321-584037179-513 Full Name: Home Directory: \\benjr\john HomeDir Drive: Logon Script: Profile Path: \\benjr\john\profile Domain: BENJR Account desc: Workstations: Munged dial: Logon time: 0 Logoff time: never Kickoff time: never Password last set: Fri, 17 Apr 2009 03:38:51 CST Password can change: Fri, 17 Apr 2009 03:38:51 CST Password must change: never Last bad password : 0 Bad password count : 0 Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF |
#pdbedit 透過參數 -L 可以查詢所有儲存在 samba 的使用者.
[root@benjr ~]# pdbedit -L john:501: bob:500: |
note:
不是我愛嫌棄 RedHat 很多圖形介面的東西要做也不做好,像是我在使用 system-config-samba 新增使用者的時候,挖勒!!新增好就看不到了.再新增一次又被告知使用者已經存在(An account for this user already exists. Please try again).
恩!!!!這是怎麼一回事!!不過透過指令方式 #pdbedit -L 使用者真的已經加入,上網查了一下,果然是 system-config-samba 固定使用 /etc/samba/smbpasswd 當作他的使用者資料庫,但是我記得 RHEL5 不是已經將預設的使用者資料庫放在 passdb.tdb ,而且這一錯到 RHEL5.2 以前都沒修正,一直到 RHEL5.3 才修正.不過使用 RHEL5.2 之前版本也不用急著更新找到 system-config-samba-1.2.40 的版本就修正了,更新就可以使用了.
https://bugzilla.redhat.com/show_bug.cgi?id=236557
完整版內容請看 : http://benjr.tw/?q=node/444
Images 0 | ||
---|---|---|
No images to display in the gallery. |