天天看點

window和Linux間檔案共享------Samba

在伺服器端大多使用Linux和Unix,桌面還被困在windows的魔咒下。windows 和 linux 之間的檔案傳輸就必然會成為兩者之間的鴻溝。所幸現在市場上so much 的工具可以支援。筆者之前用過 SSH Secure ,沒有安全政策的情況下相當好用,才700多k .更多情況下用的是,Xshell 上的Xftp 。有興趣的朋友可以去了解,但今天咱們介紹一種linuxs上的工具 Samba .配置起來也很簡單。

samba 配置檔案 smb.conf

先檢視一下你系統裡有沒有安裝samba

如果沒有安裝,用yum(筆者很懶)

Samba的配置檔案為/etc/samba/smb.conf

先來了解一下這些配置吧

cat /etc/samba/smb.conf | grep -v "^#"

主要有以上三個部分:[global], [homes], [printers]

[global] 定義全局的配置,workgroup用來定義工作組,相信如果你安裝過windows的系統,你會對這個workgroup不陌生。一般情況下,需要我們把這裡的MYGROUP改成WORKGROUP(windows預設的工作組名字)。

security = user #這裡指定samba的安全等級。關于安全等級有四種:

share:使用者不需要賬戶及密碼即可登入samba伺服器

user:由提供服務的samba伺服器負責檢查賬戶及密碼(預設)

server:檢查賬戶及密碼的工作由另一台windows或samba伺服器負責

domain:指定windows域控制伺服器來驗證使用者的賬戶及密碼。

passdb backend = tdbsam # passdb backend(使用者背景),samba有三種使用者背景:smbpasswd, tdbsam和ldapsam.

smbpasswd:該方式是使用smb工具smbpasswd給系統使用者(真實使用者或者虛拟使用者)設定一個Samba密碼,用戶端就用此密碼通路Samba資源。smbpasswd在/etc/samba中,有時需要手工建立該檔案。

tdbsam:使用資料庫檔案建立使用者資料庫。資料庫檔案叫passdb.tdb,在/etc/samba中。

passdb.tdb使用者資料庫可使用 smbpasswd -a 建立Samba使用者,要建立的Samba使用者必須先是系統使用者。也可使用pdbedit建立Samba賬戶。pdbedit參數很多,列出幾個主要的:

pdbedit -a username:建立Samba賬戶。

pdbedit -x username:删除Samba賬戶。

pdbedit -L:列出Samba使用者清單,讀取passdb.tdb資料庫檔案。

pdbedit -Lv:列出Samba使用者清單詳細資訊。

pdbedit -c “[D]” -u username:暫停該Samba使用者賬号。

pdbedit -c “[]” -u username:恢複該Samba使用者賬号。

ldapsam:基于LDAP賬戶管理方式驗證使用者。首先要建立LDAP服務,設定 “passdb backend = ldapsam:ldap://LDAP Server”

load printers 和 cups options 兩個參數用來設定列印機相關。

除了這些參數外,還有幾個參數需要你了解:

netbios name = MYSERVER # 設定出現在網路上的芳鄰中的主機名

hosts allow = 127. 192.168.12. 192.168.13. # 用來設定允許的主機,如果在前面加 ”;” 則表示允許所有主機

log file = /var/log/samba/%m.log #定義samba的日志,這裡的%m是上面的netbios name

max log size = 50 # 指定日志的最大容量,機關是K

[homes] 該部分内容共享使用者自己的家目錄,也就是說,當使用者登入到samba伺服器上時實際上是進入到了該使用者的家目錄,使用者登陸後,共享名不是homes而是使用者自己的辨別符,對于單純的檔案共享的環境來說,這部分可以注釋掉。

[printers] 該部分内容設定列印機共享。

samba共享

共享一個目錄,任何人都可以通路,即不用輸入密碼即可通路,要求隻讀

打開samba的配置檔案/etc/samba/smb.conf 在[global]部分

把:           MYGROUP

改成:        WORKGROUP

把:          security = user

修改為:   security = share

然後在檔案的最末尾處加入以下内容:

建立測試目錄:

啟動samba服務:

測試:

首先測試你配置的smb.conf是否正确,用下面的指令:

window和Linux間檔案共享------Samba

證明沒有錯誤,則在你的windows機器上的中輸入:

看是否能通路到sharefiles

window和Linux間檔案共享------Samba

2.共享一個目錄,使用使用者名和密碼登入後才可以通路,要求可以讀寫

打開samba的配置檔案/etc/samba/smb.conf

[global] 部分内容如下:

還需要加入以下内容:

然後添加使用者。因為在[globa]中 “passdb backend = tdbsam”, 是以要使用 pdbedit 來增加使用者,注意添加的使用者必須在系統中存在,是以需要先建立系統賬号:

我們可以列出samba所有賬号:

重新開機samba服務:

打開資料總管輸入:

然後輸入使用者名和密碼

window和Linux間檔案共享------Samba

繼續閱讀