Fedora 9 Samba 服務器的構建

 

Fedora 9 Samba 服務器的構建

作爲Windows 網絡功能之一,通常可以在 Windows 客戶機之間通過 Windows Network 固有的功能實現這些要求。然而,通過 Fedora Samba 我們也可以讓一臺 Fedora 主機來兼容 Windows 網絡,實現同樣的功能,進而充分發揮 Fedora 主機的可用性。

本文主要介紹怎樣通過 Fedora Samba 服務器的構建實現 Windows 網絡中的文件共享。
SMB協議是建立在 NetBIOS協議之上的應用協議,是基於TCP138、139兩個端口的服務,NetBIOS出現之後,Microsoft就使用NetBIOS實現了 一個網絡文件/打印服務系統。這個系統基於NetBIOS設定了一套文件共享協議,Microsoft稱之爲SMB(Server Message Block) 協議,這個協議被用於Lan Manager和Windows服務器系統中,實現不同計算機之間共享打印機和文件等。因此,爲了讓Windows和Unix/Linux計算機相集成, 最好的辦法就是在 Unix/Linux計算機中安裝支持SMB協議的軟件。這樣使用Windows的客戶端不需要更改設置, 就能像使用Windows NT或Windows 2000服務器一樣,使用Unix/Linux計算機上的共享資源了。
Fedora Samba使SMB協議運行在NetBIOS協議上,並且使用Windows的NetBEUI協議讓Unix/Linux服務器可以在Windows的網絡鄰居上被訪問到。

安裝Fedora Samba 

首先,通過 yum 來在線安裝Fedora Samba 。
yum -y install samba

配置Fedora Samba 

然後,通過編輯 /etc/samba/smb.conf ,根據需求配置Fedora Samba。在這裏,本文的原則是隻將文件共享應用於內網,並讓將要被共享的目錄擁有充分的讀寫權限屬性。
[root@sample ~]# vi /etc/samba/smb.conf ← 編輯Fedora Samba 的配置文件
workgroup = WORKGROUP //設置工作組
server string = %U's samba %v //描述信息%U代表當前登陸用戶
netbios name = fedora //netbios名字,fedora9 默認沒有啓用
log file = /var/log/samba/log.%m //日誌文件保存路徑%m你的windows主機名
max log size = 50 //日誌最大容量
security = user //安全級別,user需要用戶名和密碼,share級別則不要
[samba] //建立一個共享名爲samba的共享
comment = samba   //描述信息
path = /home/suyang/samba   //共享路徑
public = no //是否允許guest用戶訪問(相當於guest ok = yes/no)
writable = yes //是否可寫
write list = suyang //可以寫入的用戶列表(@代表用戶組)

接下來,創建將要通過Fedora Samba 共享給 Windows 網絡的專用目錄。

[root@sample ~]# mkdir /home/suyang/samba  ← 建立共享文件專用目錄
[root@sample ~]# chown -R nobody. /home/suyang/samba  ← 設置專用目錄歸屬爲 nobody
[root@sample ~]# chmod 777 /home/suyang/samba  ← 將專用目錄屬性設置爲 777 

在進行到服務端的連接之前,需要預先對用於登錄Fedora Samba 的用戶進行設置。這裏我們以 Fedora Samba 標準的 Samba 用戶數據庫管理工具“smbpasswd”爲例,創建用於登錄Fedora Samba 的用戶數據。這裏需要注意的一點:用 smbpasswd 創建用戶的前提是,系統用戶中存在該用戶 -- 在基於系統用戶之上,纔可以創建該用戶在Fedora Samba 用戶數據庫中的信息。

[root@sample ~]# smbpasswd -a suyang  ← 將系統用戶 suyang(例)加入到Fedora Samba 用戶數據庫
New SMB password:  ← 輸入該用戶用於登錄Fedora Samba 的密碼
Retype new SMB password:  ← 再次確認輸入該密碼

啓動Fedora Samba 服務

在啓動Fedora Samba 服務之前,首先將防火牆設置中Fedora Samba 所用到的端口進行開放。
[root@sample ~]# vi /etc/sysconfig/iptables  ← 編輯 iptables 配置文件
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT  ← 找到此行,在下面添加如下行:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 137 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 138 -j ACCEPT
[root@sample ~]# /etc/rc.d/init.d/iptables restart  ← 重新啓動 iptables ,使新的規則生效
Flushing firewall rules:  [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules:  [ OK ]

最後,啓動Fedora Samba 服務(含兩個守護進程:smb,nmb)。

[root@sample ~]# chkconfig smb on  ← 設置Fedora Samba 自啓動
[root@sample ~]# chkconfig --list smb  ← 確認Fedora Samba 啓動標籤,確認 2-5 爲 on 的狀態
smb 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@sample ~]# chkconfig nmb on  ← 設置 nmb 自啓動
[root@sample ~]# chkconfig --list nmb  ← 確認 nmb 啓動標籤,確認 2-5 爲 on 的狀態
nmb 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@sample ~]# /etc/rc.d/init.d/smb start  ← 啓動 Fedora Samba 服務
Starting SMB services: [ OK ]
[root@sample ~]# /etc/rc.d/init.d/nmb start  ← 啓動 nmb 服務
Starting NMB services: [ OK ]

[注意:]
1. smbd   監聽139 TCP端口 設置共享目錄、打印等
2. nmbd   137. 138 UDP端口管理羣組、NetBIOS 等解析工作
這 裏要注意的是fedora9基於安全考慮,把smb和nmb兩個服務給分離了,平時我們在使用Fedora samba服務的時候,在啓動smb服務的同時nmb這個服務也會跟着啓動,fedora9中則不然,這就造成了我們設置好fedora9中共享的時候, 只能使用[url=file://ip/]""ip[/url] 來訪問,而不能使用[url=file://計算機名/]""計算機名[/url] 來訪問,解決的辦法就是同時啓動smb和nmb服務。

原文:http://www.router.net.cn/Article/36807.html
http://www.router.net.cn/Article/36807.html
http://www.router.net.cn/Article/36807.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章