歡迎您光臨本站 註冊首頁

實戰fedora9 samba共享

←手機掃碼閱讀     火星人 @ 2014-03-25 , reply:0

實驗環境:虛擬機+fedora9
實驗目的:練習fedora9samba共享
教程適用:想在fedora9上面使用共享的菜鳥
一、
samba
簡介

SMB協議是建立在NetBIOS協議之上的應用協議,是基於TCP138139兩個埠的服務,NetBIOS出現之後,Microsoft就使用NetBIOS實現了一個網路文件/列印服務系統。這個系統基於NetBIOS設定了一套文件共享協議,Microsoft稱之為SMBServer Message Block 協議,這個協議被用於Lan ManagerWindows伺服器系統中,實現不同計算機之間共享 印表機和文件等。因此,為了讓WindowsUnix/Linux計算機相集成,最好的辦法就是在 Unix/Linux計算機中安裝支持SMB協議的軟體。這樣使用Windows的客戶端不需要更改設置, 就能像使用Windows NTWindows 2000伺服器一樣,使用Unix/Linux計算機上的共享資源了。

Samba
使SMB協議運行在NetBIOS協議上,並且使用Windows NetBEUI協議讓Unix/Linux伺服器 可以在Windows的網路鄰居上被訪問到。


二、
Samba
的守護進程



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

三、
軟體的安裝

使用rpm ?qa|gerp samba來檢查是否安裝了samba 軟體包,如果沒有安裝的話請自行安裝以下的軟體包
rpm ?ivh samba-3.2.0-1.pre3.9.fc9.i386.rpm
rpm ?ivh samba-winbind-3.2.0-1.pre3.9.fc9.i386.rpm
rpm ?ivh samba-common-3.2.0-1.pre3.9.fc9.i386.rpm
rpm ?ivh samba-client-3.2.0-1.pre3.9.fc9.i386.rpm
rpm ?ivh system-config-samba-1.2.63-1.fc9.noarch.rpm
或者你用yum install samba* -y就可以一次搞定了。


四、
啟動samba服務

service smb start
/etc/init.d/smb start )啟動smb服務

service nmb start /etc/init.d/nmb start )啟動nmb服務

當然你也可以使用chkconfig ?-level smb 35 on 來設置啟動級別,這個不多說了。
我們來檢查一下是是否正常啟動兩個服務,使用命令 pstree | grep mb
顯示為如下如果則為正常啟動:

|-nmbd


|-smbd---2*[smbd]


|-tomboy---2*[{tomboy}]



五、
配置smb.conf文件

知識點,samba 有四種安全級別,它們分別是:

share
:用戶不需要用戶名和就可登陸samba 伺服器

user
:用戶需要輸入用戶名和密碼才可以登陸samba伺服器

server
:請自行查資料,不常用,略

domain
:請自行查資料,不常用,略

對於我們小菜來說,我們使用user級別就可以了,如果偷懶的話你可以用share
我們先備份配置文件smb.conf
cp /etc/samba/smb.conf
/etc/samba/smb.conf.bak


然後查找你的security = user是否為user如果是share的話改為user
vi /etc/samba/smb.conf

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級別則不要

[share]
//
建立一個共享名為share的共享


comment = samba
//
描述信息


path = /tmp/share
//
共享路徑


public = no //
是否允許guest用戶訪問(相當於guest ok = yes/no)


writable = yes //
是否可寫


write list = lovehack //
可以寫入的用戶列表(@代表用戶組



下面建立共享目錄並添加許可權
mkdir /tmp/share
chmod 775 /tmp/share
chown lovehack.lovehack /tmp/share
六、
添加用戶並測試共享

添加訪問samba的用戶,命令smbpasswd ?a 用戶名
smbpasswd ?a lovehack
//lovehack
為事先建立好的用戶
然後輸入兩次密碼就可以了,注意這裡的密碼和你登陸系統的密碼是不一樣的,只是用來訪問共享的密碼。
現在我們就可以來測試一下配置文件是否正確:testparm 一般是沒有什麼問題的。
現在我們可以用[url=file://ip/]\\ip[/url]或者[url=file://計算機名/]\\計算機名[/url] 來訪問共享了。
七、
解決fedora9中selinux拒絕訪問共享的問題

在其它版本的linux中(AS5,AS4Centos)中做如上設置后就可以正常訪問共享了,但是在fedora9中卻不行,我們只能看到共享,但是訪問的時候會出現拒絕訪問的情況,這是為什麼呢?因為selinuxsamba共享做了限制,我們只用把selinux中對samba的限制給解決了就行了,我們做如下設置就OK了,這也是我做此教程的目的:

#setsebool ?P samba_enable_home_dir on
#setsebool ?P samba_export_all_ro on
#setsebool ?P samba_export_all_rw on


我們可以用命令getsebool ?a | grep samba
查看上面三項是否打開,打開的話你的共享應該就正常了。

教程記錄:獨自等待
QQ:59161949
我的博客:http://hi.baidu.com/lovehack2006

[ 本帖最後由 藤真 於 2008-12-29 17:02 編輯 ]

[火星人 ] 實戰fedora9 samba共享已經有568次圍觀

http://coctec.com/docs/linux/show-post-162755.html