debian配置samba
讀音['sæmb?]
Samba協(xié)議基礎(chǔ)
在Windows NT服務(wù)器系統(tǒng)中,實現(xiàn)不同計算機之間共享打印機和文在NetBIOS出現(xiàn)之后,Microsoft就使用NetBIOS實現(xiàn)了一個網(wǎng)絡(luò)文件/打印服務(wù)系統(tǒng),這個系統(tǒng)基于NetBIOS設(shè)定了一套文件共享協(xié)議,Microsoft稱之為SMB(Server Message Block)協(xié)議。這個協(xié)議被Microsoft用于他們Lan Manager件。
Samba是用來實現(xiàn)SMB的一種軟件,它的工作原理是,讓NETBIOS(Windows95網(wǎng)絡(luò)鄰居的通訊協(xié)議)和SMB(Server Message Block)這兩個協(xié)議運行于TCP/IP通信協(xié)議之上,并且使用Windows的NETBEUI協(xié)議讓Unix計算機可以在網(wǎng)絡(luò)鄰居上被Windows計算機看到。
它的功能有:
共享Linux磁盤給Windowns
共享Windowns磁盤給Linux機器
共享Linux打印機給Windowns
共享Windowns打印機給Linux機器。
Samba的核心是兩個守護進程smbd和nmbd程序,在服務(wù)器啟動到停止期間持續(xù)運行。smbd和nmbd使用的全部配置信息全都保存在smb.conf文件中。smb.conf向smbd和nmbd兩個守護進程說明輸出什么以便共享,共享輸出給誰及如何進行輸出。smbd進程的作用是處理到來的SMB軟件包,為使用該軟件包的資源與Linux進行協(xié)商,nmbd進程使其它主機(或工作站)能瀏覽Linux服務(wù)器。
Samba的主配置文件位置在/etc/samba目錄中,文件名為smb.conf。
首先是安裝samba:
apt-get install samba
跟著修改配置文件:
vim /etc/samba/smb.conf
[可選]加入如下配置
#display charset = UTF-8
#unix charset = UTF-8
#dos charset = cp936
useradd
smbpasswd -a meaglith
/etc/init.d/samba restart
檢查當前配置
#testparm
附.設(shè)置目錄共享及權(quán)限
[share]
comment = a comment #目錄的注解說明
path = /data/temp #要共享目錄的絕對位置
browseable = no #目錄是否可見,預(yù)設(shè)為可見
writable = yes #目錄是否為可寫
read only = no #目錄是否為只讀
guest ok = yes #來賓是否可以訪問,與"public = yes" 作用相同
write list =user,@group #可寫用戶列表,@后表示某個群組
valid users = validusername #允許訪問的使用者清單
read list = readusename #只可讀的使用者清單
invalid users = invalidusername #禁止訪問的使用者清單
admin users = adminuser #有管理權(quán)限使用者清單
create mask = 0755 #使用者建立檔案的權(quán)限,預(yù)設(shè)為0744
printable = no
[global] #全局配置
workgroup = LinuxSir #定義該Samba服務(wù)器所在的工作組或者域(如果下面的security=domain的話)
netbios name = LinuxSir05 #在Windows中顯示出來的計算機名
server string = Linux Samba Server TestServer #設(shè)定機器的描述,當我們通過網(wǎng)絡(luò)鄰居訪問的時候可以在備注里面看見這個內(nèi)容。
security = security_level #定義Samba的安全級別
說明:
定義Samba的安全級別,按從低到高分為四級:share,user,server,domain。它們對應(yīng)的驗證方式如下:
share:沒有安全性的級別,任何用戶都可以不要用戶名和口令訪問服務(wù)器上的資源。
User:samba的默認配置,要求用戶在訪問共享資源之前資源必須先提供用戶名和密碼進行驗證。
Server:和user安全級別類似,但用戶名和密碼是遞交到另外一個服務(wù)器去驗證,比如遞交給一臺NT服務(wù)器。如果遞交失敗,就退到user安全級。
Domain:這個安全級別要求網(wǎng)絡(luò)上存在一臺Windows的主域控制器,samba把用戶名和密碼遞交給它去驗證。
后面三種安全級都要求用戶在本Linux機器上也要系統(tǒng)帳戶。否則是不能訪問的。
hosts allow = 網(wǎng)絡(luò)或者主機
說明:
這里可以設(shè)置允許訪問的網(wǎng)絡(luò)和主機IP.
比如允許整個192.168.1.0這個網(wǎng)段(192.168.1.0/24)和192.168.2.1這臺主機(192.168.2.1/32)訪問,就用host allow = 192.168.1. 192.168.2.1 127.0.0.1(網(wǎng)絡(luò)注意后面加”.”號,各個項目間用空格隔開,記得把本機也加進去)
samba命令使用:
假定:
windows下IP為192.168.0.7
debian下的IP 為:192.168.0.8
debian~#smbclient -L 192.168.0.7 -U sunday
在windows下輸入:\\192.168.0.8 訪問debian
最簡samba配置
一、通過用戶訪問
1.apt-get install samba
2.修改/etc/samba/smb.conf文件
security = user #設(shè)置安全級別為user
3.添加用戶并設(shè)置samba訪問密碼
smbpasswd -a username
二、不需要用戶都可以直接訪問
1.修改/etc/samba/smb.conf文件
設(shè)置security = share
4.重啟一下samba服務(wù):
/etc/init.d/smb restart
/etc/init.d/samba restart
注:suse 下重啟samba
rcsmb restart