Samba用戶管理
一、Samba介紹
Samba是在Linux和UNIX系統(tǒng)上實(shí)現(xiàn)SMB協(xié)議的一個(gè)免費(fèi)軟件,由服務(wù)器及客戶端程序構(gòu)成。SMB(Server Messages Block,信息服務(wù)塊)是一種在局域網(wǎng)上共享文件和打印機(jī)的一種通信協(xié)議,它為局域網(wǎng)內(nèi)的不同計(jì)算機(jī)之間提供文件及打印機(jī)等資源的共享服務(wù)。SMB協(xié)議是客戶機(jī)/服務(wù)器型協(xié)議,客戶機(jī)通過該協(xié)議可以訪問服務(wù)器上的共享文件系統(tǒng)、打印機(jī)及其他資源。通過設(shè)置”NetBios over TCP/IP”使得Samba不但能與局域網(wǎng)絡(luò)主機(jī)分享資源,還能與全世界的電腦分享資源。
Samba最大的功能就是可以用于Linux與Windows系統(tǒng)直接的文件共享和打印共享,Samba既可以用于Windows與Linux之間的文件共享,也可以用于Linux與Linux之間的資源共享。
Samba由兩個(gè)主要程序組成,它們是smbd和nmbd。這兩個(gè)守護(hù)進(jìn)程在服務(wù)器啟動(dòng)到停止期間持續(xù)運(yùn)行,功能各異。Smbd和nmbd使用的全部配置信息全都保存在smb.conf文件中。Smb.conf向smbd和nmbd兩個(gè)守護(hù)進(jìn)程說明輸出什么以便共享,共享輸出給誰及如何進(jìn)行輸出。
Samba提供了基于CifS的四個(gè)服務(wù):文件和打印服務(wù)、授權(quán)與被授權(quán)、名稱解析、瀏覽服務(wù)。前兩項(xiàng)服務(wù)由smbd提供,后兩項(xiàng)服務(wù)則由nmbd提供。 簡單地說,smbd進(jìn)程的作用是處理到來的SMB軟件包,為使用該軟件包的資源與Linux進(jìn)行協(xié)商,nmbd進(jìn)程使主機(jī)(或工作站)能瀏覽Linux服務(wù)器。
二、Samba用戶管理
注意:samba用戶是基于Linux的系統(tǒng)用戶的,所以在添加samba用戶前需要先創(chuàng)建Linux系統(tǒng)用戶,否則添加samba用戶將失敗。
1、smbpasswd命令屬于samba套件,用戶添加及刪除samba用戶和為用戶修改密碼。
語法格式:
smbpasswd [參數(shù)]
常用參數(shù):
-a 向smbpasswd文件中添加用戶
-c <配置文件> 指定samba的配置文件
-x 從smbpasswd文件中刪除用戶
-d 在smbpasswd文件中禁用指定的用戶
-e 在smbpasswd文件中激活指定的用戶
-n 將指定用戶的密碼置空
2、pdbedit是samba的用戶數(shù)據(jù)庫管理命令
語法格式:
pdbedit [參數(shù)]
常用參數(shù):
pdbedit -a username # 新建Samba賬戶。
pdbedit -r username # 修改Samba賬戶。
pdbedit -x username # 刪除Samba賬戶。
pdbedit -L # 列出Samba用戶列表,讀取passdb.tdb數(shù)據(jù)庫文件。
pdbedit -Lv # 列出Samba用戶列表詳細(xì)信息。
pdbedit -c “[D]” -u username # 暫停該Samba用戶賬號。
pdbedit -c “[]” -u username # 恢復(fù)該Samba用戶賬號。
3、Samba用戶管理操作實(shí)例
1)添加用戶
[root@localhost ~]# useradd -s /sbin/nologin admin
[root@localhost ~]# pdbedit -a admin
new password:
retype new password:
或者
[root@localhost ~]# smbpasswd -a admin
New SMB password:
Retype new SMB password:
Added user admin.
2)刪除用戶
[root@localhost ~]# smbpasswd -x admin
Deleted user admin.
或者
[root@localhost ~]# pdbedit -x admin
3)查看用戶列表
[root@localhost ~]# pdbedit -L
admin:1000:
test:1001:
4)查看用戶列表詳細(xì)信息
[root@localhost ~]# pdbedit -Lv
5)禁用用戶
[root@localhost ~]# smbpasswd -d admin
Disabled user admin.
或者
[root@localhost ~]# pdbedit -c “[D]” -u admin
6)激活用戶
[root@localhost ~]# smbpasswd -e admin
Enabled user admin.
或者
[root@localhost ~]# pdbedit -c “[]” -u admin