歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 詳解Fedora Samba配置安裝

詳解Fedora Samba配置安裝

日期:2017/2/28 16:19:33   编辑:Linux教程

經過長時間學習Samba,於是和大家分享一下,你可能會遇到Fedora Samba問題,看完本文你肯定有不少收獲,這裡將介紹Fedora Samba問題的解決方法,希望本文能教會你更多東西。在我們使用 Windows 作為客戶機的時候,通常有文件、打印共享的需求。

作為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 Fedora Samba

配置 Fedora Samba

然後,通過編輯 /etc/Fedora Samba/smb.conf ,根據需求配置 Fedora Samba。在這裡,本文的原則是只將文件共享應用於內網,並讓將要被共享的目錄擁有充分的讀寫權限屬性。

[[email protected] ~]# 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級別則不要
[Fedora Samba] //建立一個共享名為Fedora Samba的共享
comment = Samba//描述信息
path = /home/suyang/Fedora Samba//共享路徑
public = no //是否允許guest用戶訪問(相當於guest ok = yes/no)
writable = yes //是否可寫
write list = suyang //可以寫入的用戶列表(@代表用戶組)

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

[[email protected] ~]# mkdir /home/suyang/Samba  ← 建立共享文件專用目錄
[[email protected] ~]# chown -R nobody. /home/suyang/Samba  ← 設置專用目錄歸屬為 nobody
[[email protected] ~]# chmod 777 /home/suyang/Samba ← 將專用目錄屬性設置為 777

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

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

啟動 Fedora Samba 服務

在啟動 Fedora Samba 服務之前,首先將防火牆設置中 Fedora Samba 所用到的端口進行開放。 [[email protected] ~]# 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
[[email protected] ~]# /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)。

[[email protected] ~]# chkconfig smb on  ← 設置 Fedora Samba 自啟動
[[email protected] ~]# chkconfig --list smb  ← 確認 Fedora Samba 啟動標簽,確認 2-5 為 on 的狀態

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

Copyright © Linux教程網 All Rights Reserved