6、測試
1、準備工作
我系統是Linux發行版Fedroa 19,內核版本是3.14.17-100.fc19.x86_64。
首先使用rmp -qa | grep smb*查看系統是否已經安裝了次軟件。

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

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

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

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

發現正確,這時我們繼續使用smbclient來進行測試,smbclient -L127.0.0.1 -U samba進行測試。

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

這時我們我們已經可以看到我們的文件了,如果沒有發現,則很有可能是你Linux系統的防火墻將服務器的端口給屏蔽了使用iptables -F查看,但是當我們打開其中的asus的時候,問題來了。

這時居然不能打開,這是因為我們的文件夾的權限不對,即使是你的設置的Directory的權限是777,但是如果你上層文件夾將你的權限限制之后你同樣不能打開,比如/home的權限是700,而home文件夾下的Directory是777,這時你還是不能打開,這時我們要用chmod 777 /home才行。

已經進入,但是如果你這時想創建一個文件,是不行的,這是會告訴你沒有權限進行這項工作。

這時為什么還是不對呢,那時因為我們系統的seLinux的設置不對,這時就是這個設置給我擋住了去路,所以我們要設置一下。
setenforce 0 設置SELinux 成為permissive模式,開始我們系統是setenforce 1 設置SELinux 成為enforcing模式

這時已經可以放東西了。

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