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

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

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

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

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

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

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

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

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

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

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

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