6、測試
1、準(zhǔn)備工作
我系統(tǒng)是Linux發(fā)行版Fedroa 19,內(nèi)核版本是3.14.17-100.fc19.x86_64。
首先使用rmp -qa | grep smb*查看系統(tǒng)是否已經(jīng)安裝了次軟件。

我機(jī)器上已經(jīng)安裝。需要安裝的軟件包主要是
samba -----samba服務(wù)器程序的所有文件
samba-common -----提供了Samba服務(wù)器和客戶機(jī)中都必須使用的公共文件
samba-client -----提供了Samba客戶機(jī)的所有文件
我使用的安裝命令是yum -install samba*然后全部都安裝好了,也可以使用rmp命令安裝。
debian系列的是使用apt -install
再次基礎(chǔ)上,由于samba還要依賴nmb服務(wù)器,所以yum -install nmb。
2、其它準(zhǔn)備
上面準(zhǔn)備了安裝包,并且已經(jīng)安裝,這是我們要查看/etc/services配置中是不是已經(jīng)將137、138、139端口是否已經(jīng)有了,如下:

如果已經(jīng)有了,則接下來的工作是創(chuàng)建samba用戶:
[root@localhost ~]#smbpasswd -a samba (“-a”是創(chuàng)建samba用戶,“-x”是刪除samba用戶,
[root@localhost ~]#smbpasswd -a user2 “-d”是禁用samba用
[root@localhost ~]#smbpasswd -a user3 戶帳號,“-e”是啟用samba用戶帳號)
創(chuàng)建好用戶之后就是修改配置文件/etc/samba/smb.conf

Samba服務(wù)器的安全級別分為5種,分別是user、share、server、domain和ads。在設(shè)置不同的級別時,samba服務(wù)器還會使用口令服務(wù)器和加密口令。
1、user -----客戶端訪問服務(wù)器時需要輸入用戶名和密碼,通過驗(yàn)證后,才能使用服務(wù)器的共享資源。此級別使用加密的方式傳送密碼。
2、share -----客戶端連接服務(wù)器時不需要輸入用戶名和密碼
3、server -----客戶端在訪問時同樣需要輸入用戶名和密碼,但是,密碼驗(yàn)證需要密碼驗(yàn)證服務(wù)器來負(fù)責(zé)。
4、domain -----采用域控制器對用戶進(jìn)行身份驗(yàn)證
5、ads -----若samba服務(wù)器加入到Windows活動目錄中,則使用ads安全級別,ads安全級別也必須指定口令服務(wù)器

[homes] -----samba用戶的宿主目錄
comment = Home Directories -----設(shè)置共享的說明信息
browseable = no -----目錄瀏覽權(quán)限
writable = yes -----用戶對共享目錄可寫
這個共享目錄只有用戶本身可以使用,默認(rèn)情況下,用戶主目錄位于/home目錄下,每個Linux用戶有一個以用戶名命名的子目錄。
以下是共享打印機(jī)的設(shè)置:
[printers] -----共享打印機(jī)
comment = All Printers -----設(shè)置共享的說明信息
path = /var/spool/samba -----指定共享目錄的路徑
browseable = no -----目錄瀏覽權(quán)限
guest ok = no -----允許來賓訪問
writable = no -----用戶對共享目錄可寫
printable = yes -----可以打印
以上是系統(tǒng)默認(rèn)設(shè)置
添加自定義的共享目錄:( user1對/ASUS有所有權(quán),user2擁有只讀權(quán)限,其他用戶不能訪問;public共享目錄允許所有用戶訪問及上傳文件)
[ASUS]
comment = user1 Directories -----設(shè)置共享的說明信息
browseable = yes -----所有samba用戶都可以看到該目錄
writable = yes -----用戶對共享目錄可寫
path = /ASUS -----指定共享目錄的路徑
[public]
comment = all user Directories -----設(shè)置共享的說明信息
browseable = yes -----所有samba用戶都可以看到該目錄
writable = yes -----用戶對共享目錄可寫
path = /public -----指定共享目錄的路徑
guest ok = yes -----允許來賓訪問
全部準(zhǔn)備好之后,就準(zhǔn)備重新加載服務(wù)器,使用service smart restart和service nmb restart,將服務(wù)器重啟。
在對應(yīng)的位置一定要創(chuàng)建好自己的文件夾,我使用的/home/Directory和/home/ShareDirectory。
二、測試
首先測試的是配置文件是否是正確的,使用testparm進(jìn)行;

發(fā)現(xiàn)正確,這時我們繼續(xù)使用smbclient來進(jìn)行測試,smbclient -L127.0.0.1 -U samba進(jìn)行測試。

這時也是可以的,最后我們就使用Windows來進(jìn)行測試。
三、Windows測試

這時我們我們已經(jīng)可以看到我們的文件了,如果沒有發(fā)現(xiàn),則很有可能是你Linux系統(tǒng)的防火墻將服務(wù)器的端口給屏蔽了使用iptables -F查看,但是當(dāng)我們打開其中的asus的時候,問題來了。

這時居然不能打開,這是因?yàn)槲覀兊奈募A的權(quán)限不對,即使是你的設(shè)置的Directory的權(quán)限是777,但是如果你上層文件夾將你的權(quán)限限制之后你同樣不能打開,比如/home的權(quán)限是700,而home文件夾下的Directory是777,這時你還是不能打開,這時我們要用chmod 777 /home才行。

已經(jīng)進(jìn)入,但是如果你這時想創(chuàng)建一個文件,是不行的,這是會告訴你沒有權(quán)限進(jìn)行這項(xiàng)工作。

這時為什么還是不對呢,那時因?yàn)槲覀兿到y(tǒng)的seLinux的設(shè)置不對,這時就是這個設(shè)置給我擋住了去路,所以我們要設(shè)置一下。
setenforce 0 設(shè)置SELinux 成為permissive模式,開始我們系統(tǒng)是setenforce 1 設(shè)置SELinux 成為enforcing模式

這時已經(jīng)可以放東西了。

大功告成,真的是不容易啊!這個也是讓我操作了好久才配置出來的,希望這個對大家有用。
reference:http://yangxuejun.blog.51cto.com/623927/180224
http://blog.csdn.net/jiusifeng/article/details/7413377