Samba服務(wù)攻略建設(shè)的指南_第1頁
Samba服務(wù)攻略建設(shè)的指南_第2頁
Samba服務(wù)攻略建設(shè)的指南_第3頁
Samba服務(wù)攻略建設(shè)的指南_第4頁
Samba服務(wù)攻略建設(shè)的指南_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、WORDPAGE- 45 - / NUMPAGES45Samba服務(wù)攻略建設(shè)指南1 安裝Samba服務(wù) 1.1 Samba所需軟件 samba-*.rpm:該包為Samba服務(wù)的主程序包。服務(wù)器必須安裝該軟件包,后面的數(shù)字為版本號samba-client-*.rpm:該包為Samba的客戶端工具,是連接服務(wù)器和連接網(wǎng)上鄰居的客戶端工具并包含其測試工具samba-common-*.rpm:該包存放的是通用的工具和庫文件,無論是服務(wù)器還是客戶端都需要安裝該軟件包samba-swat-*.rpm:當(dāng)安裝了這個包以后,就可以通過瀏覽器(比如IE等哈)來對Samba服務(wù)器進(jìn)行圖形化管理1.2 Samba

2、的安裝 建議在安裝Samba服務(wù)之前,使用rpm -qa命令檢測系統(tǒng)是否安裝了Samba相關(guān)性軟件包:rpm -qa |grep samba如果系統(tǒng)還沒有安裝Samba軟件包,我們可以使用rpm命令安裝所需軟件包。安裝Samba主程序包:rpm -ivh samba-*.rpm安裝Samba客戶端工具:rpm -ivh samba-client-*.rpm安裝Samba通用工具和庫文件:rpm -ivh samba-common-*.rpm現(xiàn)在我們再來安裝Samba圖形化管理工具:rpm -ivh samba-swat-*.rpm現(xiàn)在我們看到Samba圖形化管理工具安裝成功了哈所有軟件包安裝完

3、畢之后,我們可以使用rpm命令進(jìn)行查詢:rpm -qa | grep samba2 Samba常規(guī)服務(wù)器配置 在Samba服務(wù)安裝完畢之后,并不是直接可以使用Windows或Linux的客戶端訪問Samba服務(wù)器哈,我們還必須對服務(wù)器進(jìn)行設(shè)置,下面需要做的操作就是說我們要告訴Samba服務(wù)器將哪些目錄共享出來給客戶端進(jìn)行訪問,并根據(jù)需要設(shè)置其他選項(xiàng)哈,比如添加對共享目錄容的簡單描述信息和訪問權(quán)限等具體設(shè)置。作為我們Linux系統(tǒng)工程師了解與熟悉Samba服務(wù)器的搭建流程是至關(guān)重要滴。 基本的Samba服務(wù)器的搭建流程主要分為四個步驟:1、編輯主配置文件smb.conf,指定需要共享的目錄,并為

4、共享目錄設(shè)置共享權(quán)限。2、在smb.conf文件中指定日志文件名稱和存放路徑。3、設(shè)置共享目錄的本地系統(tǒng)權(quán)限。4、重新加載配置文件或重新啟動smb服務(wù),使用配置生效為了更好地理解設(shè)定流程中每一步的作用,下面通過一個圖例進(jìn)行講解Samba工作流程:(1) (2)smb.conf主配置文件客戶端 Samba服務(wù)器 (4) (3)日志文件(1)客戶端請求訪問Samba服務(wù)器上的Share共享目錄。(2) Samba服務(wù)器接收到請求后,會查詢主配置文件smb.conf,看是否共享了Share目錄,如果共享了這個目錄則查看客戶端是否有權(quán)限訪問。(3)Samba服務(wù)器會將本次訪問信息記錄在日志文件之中,日

5、志文件的名稱和路徑都是需要我們設(shè)置。(4)如果客戶端滿足訪問權(quán)限設(shè)置,則允許客戶端進(jìn)行訪問。對于Samba服務(wù)器來說,其主配置文件smb.conf記錄了共享的目錄列表。比如share目錄,temp目錄等。對于每個共享目錄,需要配置相應(yīng)權(quán)限,服務(wù)器會根據(jù)smb.conf文件中的設(shè)置,判斷客戶端是否有權(quán)限訪問,只有擁有權(quán)限才可以訪問服務(wù)器的資源。Samba服務(wù)器同樣會對用戶的行為進(jìn)行記錄,每一次訪問的信息都會記錄在日志文件中,以便我們Linux管理員查詢哪些客戶端訪問過Samba服務(wù)器。2.1 主要配置文件smb.confSamba的配置文件一般就放在/etc/samba目錄中,主配置文件名為sm

6、b.conf。打開文件:vim /etc/samba/smb.conf1、samba配置簡介smb.conf文件的開頭部分為samba配置簡介,告訴我們smb.conf文件的作用與相關(guān)信息。smb.conf中以“#”開頭的為注釋,為用戶提供相關(guān)的配置解釋信息,方便用戶參考,不用修改它哈。smb.conf中還有以“;”開頭滴,這些都是samba配置的格式例,默認(rèn)是不生效滴,可以通過去掉前面的“;”并加以修改來設(shè)置想使用的功能。2、Global SettingsGlobal Settings設(shè)置為全局變量區(qū)域。全局變量就是說我們只要在global時進(jìn)行設(shè)置,那么該設(shè)置項(xiàng)目就是針對所有共享資源生效滴

7、,該部分以global開始.smb.conf配置通用格式,對相應(yīng)功能進(jìn)行設(shè)置:字段=設(shè)定值下面我們說下global常用字段與設(shè)置方法:1)設(shè)置工作組或域名稱工作組是網(wǎng)絡(luò)中地位平等的一組計(jì)算機(jī),可以通過設(shè)置workgroup字段來對samba服務(wù)器所在工作組或域名進(jìn)行設(shè)置。我們設(shè)置samba服務(wù)器的工作組為WorkGroup2)服務(wù)器描述服務(wù)器描述實(shí)際上類似于備注信息哈,在一個工作組中,可能存在多臺服務(wù)器,為了方便用戶瀏覽,我們可以在server string配置相應(yīng)描述信息,這樣用戶就可以通過描述信息知道自己要登錄哪臺服務(wù)器了啊我們設(shè)置samba描述信息為“CentOs File Server

8、”。3)設(shè)置samba服務(wù)器安全模式samba服務(wù)器有share、user、server、domain和ads 五種安全模式,用來適應(yīng)不同的企業(yè)服務(wù)器需求。(1)share安全級別模式客戶端登錄samba服務(wù)器,不需要輸入用戶名和密碼就可以瀏覽samba服務(wù)器的資源,適用于公共的共享資源,安全性差,需要配合其他權(quán)限設(shè)置,保證samba服務(wù)器的安全性。(2)user安全級別模式客戶端登錄samba服務(wù)器,需要提交合法和密碼,經(jīng)過服務(wù)器驗(yàn)證才可以訪問共享資源,服務(wù)器默認(rèn)為此級別模式。 (3)server安全級別模式客戶端需要將用戶名和密碼,提交到指定的一臺samba服務(wù)器上進(jìn)行驗(yàn)證,如果驗(yàn)證出現(xiàn)錯

9、誤,客戶端會用user級別訪問。(4)domain安全級別模式如果samba服務(wù)器加入windows域環(huán)境中,驗(yàn)證工作服將由windows域控制器負(fù)責(zé),domain級別的samba服務(wù)器只是成為域的成員客戶端,并不具備服務(wù)器的特性,samba早期的版本就是使用此級別登錄windows域滴。(5)ads安全級別模式當(dāng)samba服務(wù)器使用ads安全級別加入到windows域環(huán)境中,其就具備了domain安全級別模式中所有的功能并可以具備域控制器的功能。3、Share Definitions共享服務(wù)的定義Share Definitions設(shè)置對象為共享目錄和打印機(jī),如果我們想發(fā)布共享資源,需要對Sh

10、are Definitions部分進(jìn)行配置。Share Definitions字段非常豐富,設(shè)置靈活。我們先來講下幾個最常用的字段哈1)設(shè)置共享名共享資源發(fā)布后,必須為每個共享目錄或打印機(jī)設(shè)置不同的共享名,給網(wǎng)絡(luò)用戶訪問時使用,并且共享名可以與原目錄名不同。共享名設(shè)置非常簡單:共享名我們來看個例子,Samba服務(wù)器中有個目錄為/share,需要發(fā)布該目錄成為共享目錄,定義共享名為public2)共享資源描述網(wǎng)絡(luò)中存在各種共享資源,為了方便用戶識別,可以為其添加備注信息,以方便用戶查看時知道共享資源的容是什么。格式:comment = 備注信息舉個例子哈,samba服務(wù)器上有個/sales目錄存

11、放公司銷售部的數(shù)據(jù),為了對公司部門員工進(jìn)行區(qū)分,可以添加備注信息。3)共享路徑共享資源的原始完整路徑,可以使用path字段進(jìn)行發(fā)布,務(wù)必正確指定。格式:path = 絕對地址路徑samba服務(wù)器上/share/tools目錄存放常用工具軟件,需要發(fā)布該目錄為共享,我們可以這樣做。4)設(shè)置匿名訪問共享資源如果對匿名訪問進(jìn)行設(shè)置,可以更改public字段。格式:public = yes #允許匿名訪問public = no #禁止匿名訪問samba服務(wù)器/share共享目錄允許匿名用戶訪問,可以這樣設(shè)置。5)設(shè)置訪問用戶如果共享資源存在重要數(shù)據(jù)的話,需要對訪問用戶審核,我們可以使用valid us

12、ers字段進(jìn)行設(shè)置。格式:valid users = 用戶名valid users = 組名我們來看下面一個例子哈,samba服務(wù)器/share/tech目錄存放了公司技術(shù)部數(shù)據(jù),只允許技術(shù)部員工和經(jīng)理訪問,技術(shù)部組為tech,經(jīng)理為gm6)設(shè)置目錄只讀共享目錄如果限制用戶的讀寫操作,我們可以通過readonly實(shí)現(xiàn)哈格式:readonly = yes #只讀readonly = no #讀寫samba服務(wù)器公共目錄/public存放大量共享數(shù)據(jù),為保證目錄安全我們只允許讀取,禁止寫入7)設(shè)置目錄可寫如果共享目錄允許用戶寫操作,可以使用writable或write list兩個字段進(jìn)行設(shè)置wr

13、itable格式:writable = yes #讀寫writable = no #只讀write list格式:write list = 用戶名write list = 組名注意:homes為特殊共享目錄,表示用戶主目錄。printers表示共享打印機(jī)。2.2 Samba服務(wù)日志文件日志文件對于samba非常滴重要哈,它存儲著客戶端訪問samba服務(wù)器的信息,以與samba服務(wù)的錯誤提示信息等,可以通過分析日志,幫助解決客戶端訪問和服務(wù)器維護(hù)等問題。在/etc/samba/smb.conf文件中,log file為設(shè)置samba日志的字段。samba服務(wù)的日志文件默認(rèn)存放在/var/log/

14、samba/中,其中samba會為每個連接到samba服務(wù)器的計(jì)算機(jī)分別建立日志文件。我們啟動smb服務(wù):/etc/rc.d/init.d/smb start使用ls -a命令可以查看日志的所有文件。其中,當(dāng)samba服務(wù)器剛剛建立好后,只有兩個文件,分別是nmbd.log和smbd.log,它們分別記錄nmbd和smbd進(jìn)程的運(yùn)行日志。nmbd.log記錄nmbd進(jìn)程的解析信息。 smbd.log記錄用戶訪問samba服務(wù)器的問題,以與服務(wù)器本身的錯誤信息,可以通過該文件獲得大部分的samba維護(hù)信息。當(dāng)客戶端通過網(wǎng)絡(luò)訪問samba服務(wù)器后,會自動添加客戶端的相關(guān)日志。2.3 Samba服務(wù)

15、密碼文件 samba服務(wù)器發(fā)布共享資源后,客戶端訪問samba服務(wù)器,需要提交用戶名和密碼進(jìn)行身份驗(yàn)證,驗(yàn)證合格后才可以登錄。samba服務(wù)為了實(shí)現(xiàn)客戶身份驗(yàn)證功能,將用戶名和密碼信息存放在/etc/samba/smbpasswd中,在客戶端訪問時,將用戶提交資料與smbpasswd存放的信息進(jìn)行比對,如果一樣,并且samba服務(wù)器其他安全設(shè)置允許,客戶端與samba服務(wù)器連接才能建立成功那如何建立samba呢?偶在說之前先強(qiáng)調(diào)一點(diǎn)哈,samba并不能直接建立滴,需要先建立Linux同名的系統(tǒng)。比如如果我們要建立一個名為michael的samba,那Linux系統(tǒng)中必須提前存在一個同名的mic

16、hael系統(tǒng)。samba中添加命令為smbpasswd,命令格式:smbpasswd -a 用戶名我們來測試下,在samba服務(wù)器中添加sambaredking,我們建立samba之前必須先添加相對應(yīng)的系統(tǒng),使用useradd命令建立redking,然后執(zhí)行passwd命令為redking設(shè)置密碼哈最后我們添加redking用戶的samba,執(zhí)行smbpasswd添加redking到samba配置文件中。OK,Samba添加完畢哈,如果我們在添加samba時輸入完兩次密碼出錯:Failed to modify password entry for user amy,就像下面這樣這是因?yàn)長inu

17、x本地用戶里沒有amy這個用戶,我們在系統(tǒng)里面添加一下就OK了務(wù)必要注意在建立samba之前,一定要先建立一個與samba同名的系統(tǒng)。我們經(jīng)過上面的設(shè)置,再次訪問samba共享文件時就可以使用redking或amy訪問了。注意:解決/etc/samba目錄下沒有smbpasswd文件原因:samba啟用了tdbsam驗(yàn)證。解決:smb.conf文件中注釋掉passdb backend = tdbsam 一行,加上smb passwd file = /etc/samba/smbpasswd,然后保存退出。這樣再建立用戶就產(chǎn)生了/etc/samba/smbpasswd文件了。 使用cat命令查看s

18、mbpasswd文件滴容哈:cat /etc/samba/smbpasswd2.4 Samba的啟動與停止 1)samba服務(wù)的啟動service smb start 或 /etc/rc.d/init.d/smb start2)samba服務(wù)的停止service smb stop 或 /etc/rc.d/init.d/smb stop3)samba服務(wù)的重啟service smb restart 或 /etc/rc.d/init.d/smb restart4)samba服務(wù)配置重新加載service smb reload 或 /etc/rc.d/init.d/smb reload注意:Linu

19、x服務(wù)中,當(dāng)我們更改配置文件后,一定要記得重啟服務(wù)哈,讓服務(wù)重新加載配置文件,這樣新的配置才可以生效哈5)自動加載samba服務(wù)chkconfig我們可以使用chkconfig命令自動加載smb服務(wù): chkconfig -level 3 smbon #運(yùn)行級別3自動加載chkconfig -level 3 smb off #運(yùn)行級別3不自動加載3 舉例3.1 share服務(wù)器實(shí)例與詳解上面已經(jīng)對samba的相關(guān)性配置文件講了個大概哈,現(xiàn)在我們通過實(shí)例來掌握一下samba具體使用流程來搭建samba服務(wù)器。如果公司現(xiàn)在用一個工作組Workgroup需要添加samba服務(wù)器作為文件服務(wù)器哈,并發(fā)

20、布共享目錄/share,共享名為public,這個共享目錄允許所有公司員工訪問。我們分析下哈,這個案例屬于samba的基本配置,我們可以實(shí)用share安全級別模式,既然允許所有員工訪問,則需要為每個用戶建立一個samba,那么如果公司擁有大量用戶呢?1000個用戶,100000個用戶,一個個設(shè)置會非常滴麻煩哈,我們可以通過配置security = share來讓所有用戶登錄時采用匿名nobody訪問,這樣實(shí)現(xiàn)起來非常簡單1) 修改samba主配置文件smb.confvim /etc/samba/smb.conf(1).設(shè)置samba服務(wù)器工作組名為Workgroup(2).添加samba服務(wù)器

21、注釋信息為File Server(3).設(shè)置samba安全級別為share模式,允許用戶匿名訪問#= Global Settings = global # Netwrok Related Options # # workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH # # server string is the equivalent of the NT De.ion field # # netbios name can be used to specify a server name not tied to the hostna

22、me # # Interfaces lets you configure Samba to use multiple interfaces # If you have multiple network interfaces then you can list the .es # you want to listen . (never omit localhost) # # Hosts Allow/Hosts Deny lets you restrict who can connect, and you can # specifiy it as a per share option as wel

23、l # workgroup = Workgroup #設(shè)置samba服務(wù)器工作組名為Workgroup server string = File Server #添加samba服務(wù)器注釋信息為File Server; netbios name = MYSERVER ; interfaces = lo eth0 /24 /24 ; hosts allow = 127. 192.168.12. 192.168.13. # Logging Options # # Log File let you specify where to put logs an

24、d how to split them up. # # Max Log Size let you specify the max size log files should reach # logs split per machine ; log file = /var/log/samba/%m.log # max 50KB per log file, then rotate ; max log size = 50 # Standalone Server Options # # Scurity can be set to user, share(deprecated) or server(de

25、precated) # # Backend to store user information in. New installations should # use either tdbsam or ldapsam. smbpasswd is available for backwards # compatibility. tdbsam requires no further configuration. security = share #設(shè)置samba安全級別為share模式,允許用戶匿名訪問 ; passdb backend = tdbsam smb passwd file = /etc

26、/samba/smbpasswd # Domain Members Options # # Security must be set to domain or ads # # Use the realm option .ly with security = ads # Specifies the Active Directory realm the host is part of # # Backend to store user information in. New installations should # use either tdbsam or ldapsam. smbpasswd

27、 is available for backwards # compatibility. tdbsam requires no further configuration. #(4).設(shè)置共享目錄的共享名為public(5).設(shè)置共享目錄的絕對路徑為/share(6).最后我們設(shè)置允許匿名訪問哈設(shè)置完smb.conf后保存退出哈2)重新加載配置上面我們說過哈,Linux為了使新配置生效,需要重新加載配置,可以使用restart重新啟動服務(wù)或者使用reload重新加載配置哈注意哈: 偶這里強(qiáng)調(diào)一下細(xì)節(jié),重啟samba服務(wù),雖然可以讓配置生效,但是restart是先關(guān)閉samba服務(wù),再開啟服務(wù)哈

28、,這樣如果在公司網(wǎng)絡(luò)運(yùn)營中肯定會對客戶端員工的訪問造成影響,建議使用reload命令重新加載配置文件使其生效,這樣不需要中斷服務(wù)就可以重新加載配置哈samba服務(wù)器通過以上設(shè)置,現(xiàn)在用戶就可以不需要輸入和密碼就可以直接登錄samba服務(wù)器并訪問public共享目錄我們測試下,在/share目錄下建個文件試下:touch /share/test_sharemode_samba.tar我們看下效果3.2 user服務(wù)器實(shí)例與詳解上面的案例我們講了share安全級別模式的samba服務(wù)器哈,可以實(shí)現(xiàn)用戶方便滴通過匿名方式訪問,但是如果在我們samba服務(wù)器上存在重要文件的目錄,為了保證系統(tǒng)安全性與資

29、料性哈,我們就必須對用戶進(jìn)行篩選,允許或禁止相應(yīng)的用戶訪問指定滴目錄哈,這里share安全級別模式就不能滿足我們這樣的實(shí)際要求了。實(shí)現(xiàn)用戶身份驗(yàn)證的方法很多,我們可以將安全級別模式配置為user、server、domain和ads,但是最常用的還是user安全級別模式哈,下面偶就來看下user這個安全級別模式的配置如果公司有多個部門,因工作需要,我們就會分門別類的建立相應(yīng)部門的目錄,并將銷售部的資料存放在samba服務(wù)器的/companydata/sales/目錄下,集中管理,以便銷售人員瀏覽,并且該目錄只允許銷售部員工訪問。我們分析下,在/companydata/sales/目錄中存放有銷售

30、部的重要數(shù)據(jù),為了保證其他部門無法查看其容,我們需要將全局配置中security設(shè)置為user安全級別,這樣就啟用了samba服務(wù)器的身份驗(yàn)證機(jī)制,然后在共享目錄/companydata/sales下設(shè)置valid users字段,配置只允許銷售部員工能夠訪問這個共享目錄。1)添加銷售部用戶和組并添加相應(yīng)samba使用groupadd命令添加sales組,然后執(zhí)行useradd命令和passwd命令添加銷售部員工的與密碼接下來為銷售部成員添加相應(yīng)samba2)修改samba主配置文件smb.conf(1).設(shè)置user安全級別模式(2).設(shè)置銷售部共享目錄為sales(3).指定共享目錄為絕對

31、路徑為/companydata/sales(4).設(shè)置可以訪問的用戶為sales組成員3)重新加載配置上個案例講過了哈,要讓修改后的Linux配置文件生效,我們就要重新加載配置。#service smb reload現(xiàn)在我們測試下輸入銷售部的與密碼進(jìn)行登錄打開sales共享目錄這樣銷售部成員就可以進(jìn)行訪問sales共享目錄下的數(shù)據(jù)了4 Samba高級服務(wù)器配置 上面偶說了下samba滴常規(guī)配置哈,這些已經(jīng)可以使用企業(yè)部滴資料通過網(wǎng)絡(luò)共享并分配適當(dāng)?shù)喂蚕頇?quán)限來管理共享目錄,但這僅僅對于很多大型企業(yè)或安全要求高滴來說還是不能滿足其需求哈,所以偶下面就來講下samba滴高級服務(wù)器配置讓我們搭建滴sa

32、mba服務(wù)器功能更強(qiáng)大,管理更靈活,我們滴數(shù)據(jù)也更安全4.1 用戶賬號映射前面已經(jīng)說過,samba的用戶信息是保存在smbpasswd文件中滴,而且可以訪問samba服務(wù)器的也必須對應(yīng)一個同名的系統(tǒng)?;谶@一點(diǎn),所以哈,對于一些hacker來說,只要知道samba服務(wù)器滴samba,就等于是知道了Linux系統(tǒng),只要crack其samba密碼加以利用就可以攻擊samba服務(wù)器哈。所以我們要使用用戶映射這個功能來解決這個問題用戶映射這個功能需要建立一個映射關(guān)系表,里面記錄了samba和虛擬的對應(yīng)關(guān)系,客戶端訪問samba服務(wù)器時就使用虛擬來登錄。1)編輯主配置文件/etc/samba/smb.c

33、onf在global下添加一行字段username map = /etc/samba/smbusers開啟用戶映射功能。2)編輯/etc/samba/smbuserssmbusers文件保存映射關(guān)系,其有固定滴格式:samba = 虛擬(映射)redking就是我們上面建立的samba(同時也是Linux系統(tǒng)),51cto與51blog就是映射滴名(虛擬),redking在我們訪問共享目錄時只要輸入51cto或51blog就可以成功訪問了,但是實(shí)際上訪問samba服務(wù)器的還是我們滴redking,這樣一來就解決了安全問題哈我們繼續(xù)。3)重啟samba服務(wù):service smb restart

34、4)驗(yàn)證效果輸入我們定義的映射51cto,注意我們沒有輸入redking哈,映射51cto滴密碼和redking一樣哈現(xiàn)在就可以通過映射瀏覽共享目錄了注意:強(qiáng)烈建議不要將samba用戶的密碼與本地系統(tǒng)用戶的密碼設(shè)置成一樣哈,可以避免非法用戶使用samba登錄系統(tǒng)非法破壞哈4.2 客戶端訪問控制對于samba服務(wù)器的安全性,我們已經(jīng)說過可以使用valid users字段去實(shí)現(xiàn)用戶訪問控制,但是如果企業(yè)龐大,存在大量用戶的話,這種方法操作起來就顯得比較麻煩哈比如samba服務(wù)器共享出一個目錄來訪問,但是要禁止某個IP子網(wǎng)或某個域的客戶端訪問此資源,這樣滴情況使用valid users字段就無法實(shí)現(xiàn)

35、客戶端訪問控制。下面我們就講下使用hosts allow和hosts deny兩個字段來實(shí)現(xiàn)該功能。而用好這兩個字段滴關(guān)鍵在于熟悉和清楚它們的使用方法和作用圍哈hosts allow 和 hosts deny 的使用方法1)hosts allow 和 hosts deny 字段的使用hosts allow 字段定義允許訪問的客戶端hosts deny 字段定義禁止訪問的客戶端2)使用IP地址進(jìn)行限制比如公司部samba服務(wù)器上共享了一個目錄sales,這個目錄是存放銷售部的共享目錄,公司規(guī)定/24這個網(wǎng)段的IP地址禁止訪問此sales共享目錄,但是其中192.168.0.

36、24這個IP地址可以訪問。先將安全級別模式由user改為share這里我們添加hosts deny和hosts allow字段hosts deny = 192.168.0. 表示禁止所有來自/24網(wǎng)段的IP地址訪問hosts allow = 4 表示允許4這個IP地址訪問當(dāng)host deny和hosts allow字段同時出現(xiàn)并定義滴容相互沖突時,hosts allow優(yōu)先。現(xiàn)在設(shè)置的意思就是禁止C類地址/24網(wǎng)段主機(jī)訪問,但是允許4主機(jī)訪問。測試下效果,如果是4

37、的客戶端就可以正常訪問如果是其他客戶端滴話就是這樣的效果如果想同時禁止多個網(wǎng)段滴IP地址訪問此服務(wù)器可以這樣設(shè)置hosts deny = 192.168.1. 172.16. 表示拒絕所有網(wǎng)段和網(wǎng)段的IP地址訪問sales這個共享目錄。hosts allow = 10. 表示允許網(wǎng)段的IP地址訪問sales這個共享目錄。注意:當(dāng)需要輸入多個網(wǎng)段IP地址的時候,需要使用“空格”符號隔開。3)使用域名進(jìn)行限制我們來看這樣一個例子哈,公司samba服務(wù)器上共享了一個目錄public,公司規(guī)定.sale 域和.net域的客戶端不能訪問,并且主機(jī)

38、名為free的客戶端也不能訪問。hosts deny = .sale. .net free 表示禁止.sale 域和.net域與主機(jī)名為free的客戶端訪問public這個共享目錄。注意:域名和域名之間或域名和主機(jī)名之間需要使用“空格”符號隔開。4)使用通配符進(jìn)行訪問控制samba服務(wù)器共享了一個目錄security,規(guī)定所有人不允許訪問,只有主機(jī)名為boss的客戶端才可以訪問。對于這樣一個實(shí)例哈,我們就可以通過使用通配符的方式來簡化配置。hosts deny = All 表示所有客戶端,并不是說允許主機(jī)名為ALL的客戶端可以訪問哈常用的通配符還有“*”,“?”,“LOCAL”等。還有一種比較

39、有意思的情況,如果我們規(guī)定所有人不能訪問security目錄,只允許網(wǎng)段的IP地址可以訪問,但是00與8的主機(jī)是要禁止訪問滴。我們可以使用hosts deny禁止所有用戶訪問,再設(shè)置hosts allow允許網(wǎng)段主機(jī),但當(dāng)hosts deny和hosts allow同時出現(xiàn)而且沖突滴時候,hosts allow生效,如果這樣滴話,那么允許網(wǎng)段的IP地址可以訪問,但是00與8的主機(jī)禁止訪問就無法生效了哈我們可以使用EXCEPT進(jìn)行設(shè)置。host

40、s allow = 192.168.0. EXCEPT 00 8 表示允許網(wǎng)段IP地址訪問,但是00和8除外哈hosts allow 和 hosts deny 的作用圍hosts allow和hosts deny設(shè)置在不同的位置上,它們的作用圍是不一樣滴。如果設(shè)置在global里面,表示對samba服務(wù)器全局生效哈,如果設(shè)置在目錄下面,則表只對這個目錄生效。這樣設(shè)置表示只有8才可以訪問samba服務(wù)器,全局生效哈這樣設(shè)置就表示只對單一目錄security生效,只有

41、8才可以訪問security目錄里面的資料。4.3 設(shè)置Samba的權(quán)限 到這里我們已經(jīng)可以對客戶端訪問進(jìn)行有效的控制,但是對于能訪問的客戶端來說,我們還是不能靈活方便滴控制他們訪問共享資源的權(quán)限,比如boss或gm這樣的可以對某個共享目錄具有完全控制權(quán)限,其他只有只讀權(quán)限哈,這樣的情況我們就可以使用write list字段來實(shí)現(xiàn)哈例如公司samba服務(wù)器上有個共享目錄tech,公司規(guī)定只有boss和tech組的可以完全控制,其他人只有只讀權(quán)限。如果只用writable字段則無法滿足這個實(shí)例的要求,因?yàn)楫?dāng)writable = yes時,表示所有人都可以寫入了哈,而當(dāng)wri

42、table = no時表示所有人都不可以寫入。這時我們就需要用到write list字段哈write list = boss,tech 就表示只有boss和tech組成員才可以對tech共享目錄有寫入權(quán)限哈(其中tech就表示tech組)。我們來看下writable和write list之間的區(qū)別:字段值描述writableyes所有都允許寫入writableno所有都禁止寫入write list寫入權(quán)限列表列表中的允許寫入4.4 Samba的隱藏共享 我們還可以使用browseable字段實(shí)現(xiàn)隱藏共享的功能哈比如我們要把samba上的技術(shù)部共享目錄隱藏,我們可以這樣設(shè)置。browseable

43、 = no表示隱藏該目錄現(xiàn)在就看不到tech共享目錄了哈如果我們直接輸入 HYPERLINK file:/.88.tech 88tech就可以訪問了哈在有些特殊的情況下,browseable也無法滿足企業(yè)的需求,比如,samba服務(wù)器上有個security目錄,此目錄只有boss用戶可以瀏覽訪問,其他人都不可以訪問。因?yàn)閟amba的主配置文件只有一個,所有訪問都要遵守該配置文件的規(guī)則,如果隱藏了該目錄,那么所有人就都看不到該目錄了,就像上面演示的一樣,要知道共享目錄名稱后輸入 HYPERLINK file:/.88.tech 1

44、88tech才可以訪問技術(shù)部資料。如果這樣滴目錄一多滴話,不可以叫boss去記那么多目錄名稱哈,那樣還不被boss罵死哈_問題出在samba服務(wù)的主配置文件只有一個,而smb.conf沒有提供字段允許部分人可以瀏覽隱藏目錄的功能。那我們可以換個角度哈,既然單一滴配置文件無法實(shí)現(xiàn)要求,那么我們可以為不同需求的用戶或組分別建立相應(yīng)的配置文件并單獨(dú)配置后實(shí)現(xiàn)其隱藏目錄的功能哈,現(xiàn)在我們?yōu)閎oss建立一個配置文件,并且讓其訪問的時候能夠讀取這個單獨(dú)的配置文件。(1)建立獨(dú)立滴配置文件哈先為boss創(chuàng)建一個單獨(dú)的配置文件,我們可以直接復(fù)制/etc/samba/smb.conf這個文件

45、并改名就可以了,如果為單個用戶建立配置文件,命名時一定要包含用戶名哈。我們使用cp命令復(fù)制主配置文件,為boss建立獨(dú)立的配置文件。(2)編輯smb.conf主配置文件哈在global中加入config file = /etc/samba/smb.conf.%U,表示samba服務(wù)器讀取/etc/samba/smb.conf.%U文件,其中%U代表當(dāng)前登錄用戶。命名規(guī)與獨(dú)立配置文件匹配哈(3)編輯smb.conf.boss獨(dú)立配置文件編輯boss的獨(dú)立配置文件smb.conf.boss,將tech目錄里面的browseable = no刪除,這樣當(dāng)boss訪問samba時,tech共享目錄對b

46、oss訪問就是可見滴,這樣主配置文件smb.conf和boss的獨(dú)立配置文件相搭配就有實(shí)現(xiàn)其他用戶訪問時tech共享目錄是隱藏滴,而boss訪問時就是可見滴。(4)重新啟動samba服務(wù):service smb restart(5)測試效果哈現(xiàn)在我們以普通用戶redking登錄samba服務(wù)器發(fā)現(xiàn)以redking登錄samba看不到tech共享目錄哈證明tech共享目錄對除boss以外的人是隱藏共享滴。現(xiàn)在我們以boss登錄來看看哈我們發(fā)現(xiàn)以boss登錄之后,tech共享目錄自動顯示了哈這樣以獨(dú)立配置文件的方法來實(shí)現(xiàn)隱藏共享對不同的可見性非常方便哈注意:目錄隱藏了并不是說不共享了,只要知道共享

47、名,并且有相應(yīng)權(quán)限,還是可以訪問滴,就像上面演示的一樣,可以輸入“IP地址共享名”的方法就可以訪問隱藏共享了。5 Samba客戶端配置 5.1 Linux客戶端訪問Samba共享linux客戶端訪問服務(wù)器主要有兩種方法1)使用smbclient命令在Linux中,samba客戶端使用smbclint這個程序來訪問samba服務(wù)器時,先要確??蛻舳艘呀?jīng)安裝了samba-client這個rpm包。smbclient可以列出目標(biāo)主機(jī)共享目錄列表smbclient命令格式:smbclient -L 目標(biāo)IP地址或主機(jī)名 -U 登錄用戶名%密碼當(dāng)我們查看rhel5(88)主機(jī)的共享

48、目錄列表時,提示輸入密碼,這時候可以不輸入密碼哈,我們直接按回車,這樣表示匿名登錄,然后就會顯示匿名用戶可以看到的共享目錄列表了哈smbclient -L rhel5或者smbclient -L 88如果想使用samba相看samba服務(wù)器端共享了什么目錄,我們可以加上-U參數(shù)哈,后面跟上用戶名%密碼。smbclient -L 88 -U boss%boss這樣就顯示了只有boss才顯示的tech技術(shù)部共享目錄。注意:不同用戶使用smblient瀏覽的結(jié)果可能是不一樣滴,這要根據(jù)服務(wù)器設(shè)置的訪問控制權(quán)限而定哈我們還可以在使用smbclient命令行共

49、享訪問模式瀏覽共享的資料哈smbclient命令行共享訪問模式命令格式:smbclient /目標(biāo)IP地址或主機(jī)名/共享目錄 -U 用戶名%密碼上面已經(jīng)顯示了服務(wù)器上有一個tech共享目錄,我們來查看一下里面的容哈另外smbclient登錄samba服務(wù)器后,我們可以使用help查詢所支持的命令。2)使用mount命令掛載共享目錄mount命令掛載共享目錄格式:mount -t cifs /目標(biāo)IP地址或主機(jī)名/共享目錄名稱 掛載點(diǎn) -o username=用戶名rootclient # mount -t cifs /88/tech /mnt/sambadata/ -o

50、username=boss%boss這表示掛載88主機(jī)上的共享目錄tech到/mnt/sambadata目錄下,cifs就是samba所使用的文件系統(tǒng)哈5.2 Windows客戶端訪問Samba共享 這個就比較簡單了哈,我們也一直用這個訪問微軟的共享目錄哈,上面其他也已經(jīng)講過了哈,方法就是在開始運(yùn)行里面使用UNC路徑直接進(jìn)行訪問哈也可以到網(wǎng)上鄰居里面找,但是偶不太喜歡用這個方法,因?yàn)樗俣忍?。還是覺得在開始-運(yùn)行或是直接在資源管理器或IE的地址欄里面輸入UNC路徑比較快哈1)在開始-運(yùn)行里面使用UNC路徑直接進(jìn)行訪問2)映射網(wǎng)絡(luò)驅(qū)動器訪問samba服務(wù)器共享目錄輸入te

51、ch共享目錄的地址輸入可以訪問tech共享目錄的samba和密碼這時在我的電腦的網(wǎng)絡(luò)驅(qū)動器中就可以看到映射的Z盤了哈打開Z盤就可以訪問tech共享目錄里面的資源。6 Samba的打印共享默認(rèn)情況下,samba的打印服務(wù)是開放滴所以我們只要把打印機(jī)安裝好后客戶端的用戶就可以使用打印機(jī)了。1)設(shè)置global配置項(xiàng)修改smb.conf全局配置,開啟打印共享功能2)設(shè)置printers配置項(xiàng)使用默認(rèn)設(shè)置就可以讓客戶端正常使用權(quán)打印機(jī)了哈,需要注意的就是printable一定要設(shè)置成yes哈,如果不設(shè)置成yes那還打什么哈path字段定義打印機(jī)隊(duì)列,可以根據(jù)需要自己定制哈,另外共享打印和共享目錄不一樣

52、哈,安裝完打印機(jī)后必須重新啟動samba服務(wù),否則客戶端可能無法看到共享的打印機(jī)。如果設(shè)置只允許部分員工使用打印機(jī),我們可以使用valid users、hosts allow或hosts deny字段來實(shí)現(xiàn)哈,這些在講共享目錄時已經(jīng)說過了,不清楚可以再翻翻看哈下面進(jìn)入samba企業(yè)實(shí)戰(zhàn)與應(yīng)用。7 Samba企業(yè)實(shí)戰(zhàn)與應(yīng)用 7.1 企業(yè)環(huán)境與需求 samba服務(wù)器目錄:企業(yè)數(shù)據(jù)目錄:/companydata公共目錄:/companydata/share銷售部目錄:/companydata/sales技術(shù)部:/companydata/tech企業(yè)員工情況:總經(jīng)理:gm銷售部:銷售部經(jīng)理 redki

53、ng、員工 sky、員工 jane技術(shù)部:技術(shù)部經(jīng)理 michael、員工 bill、員工 joy搭建samba文件服務(wù)器,建立公共共享目錄,允許所有人訪問,權(quán)限為只讀,為銷售部和技術(shù)部分別建立單獨(dú)的目錄,只可以總經(jīng)理和相應(yīng)部門員工訪問,并且公司員工禁止訪問非本部門的共享目錄。這是個典型的企業(yè)文件服務(wù)器案例哈??偨?jīng)理 | 銷售部交換機(jī)samba服務(wù)器 | 技術(shù)部7.2 需求分析對于建立公共目錄public字段就可以實(shí)現(xiàn)匿名訪問,員工只能訪問本部門的共享目錄,禁止訪問非本部門的共享目錄,我們可以通過設(shè)置目錄共享字段“browseable = no”與字段“valid users”來實(shí)現(xiàn)其隱藏功能

54、和相應(yīng)的訪問權(quán)限。這樣設(shè)置不能很好得解決同一目錄多種需求的權(quán)限設(shè)置,所以我們需要建立獨(dú)立配置文件,為每個部門建立一個組后并為每個組建立配置文件來實(shí)現(xiàn)隔離用戶權(quán)限會比較靈活哈7.3 解決方案1)建立各部門專用共享目錄使用mkdir建立需求的共享目錄以便分門別類的存儲相應(yīng)資料。同時設(shè)置/companydata共享目錄的用戶權(quán)限2)添加samba服務(wù)器描述與設(shè)置smbpasswd文件默認(rèn)/etc/samba/目錄下沒有smbpasswd文件,我們要先關(guān)閉samba的tdbsam驗(yàn)證。解決方法:在smb.conf文件中注釋掉passdb backend = tdbsam 一行,為了指定samba用戶的

55、驗(yàn)證我們加上這一條smb passwd file = /etc/samba/smbpasswd,然后保存退出。 HYPERLINK :/img1.51cto /attachment/200812/27/27212_12303663350v.png 3)添加用戶和組先建立銷售部組sales,技術(shù)部組tech,然后使用useradd命令添加總經(jīng)理gm與各個員工的并加入相應(yīng)的用戶組。 接著使用smbpasswd命令添加samba用戶呃不好意思哈gm的samba用戶忘記添加了,現(xiàn)在補(bǔ)上哈4)配置smb.conf文件(1)建立單獨(dú)配置文件用戶配置文件使用用戶名命令哈,組配置文件使用組名命令。(2)設(shè)置主

56、配置文件smb.conf這里我們配置smb.conf主配置文件,在global中添加相應(yīng)字段哈,確保samba服務(wù)器的主配置文件可以調(diào)用獨(dú)立的用戶配置文件和組配置文件。include = /etc/samba/%U.smb.conf表示使samba服務(wù)器加載/etc/samba目錄下格式為“用戶名.smb.conf”的配置文件。include = /etc/samba/%G.smb.conf表示使samba服務(wù)器加載/etc/samba目錄下格式為“組名.smb.conf”的配置文件。設(shè)置共享目錄/companydata/share(5)設(shè)置總經(jīng)理gm配置文件vim /etc/samba/gm

57、.smb.conf(6)設(shè)置銷售部組sales配置文件vim /etc/samba/sales.smb.conf(7)設(shè)置技術(shù)部組tech配置文件vim /etc/samba/tech.smb.conf(8)開啟samba服務(wù)service smb start(9)測試我們先用gm登錄測試可以全部看到共享目錄。/companydata/share目錄只讀注意:最好禁用RHEL5中的selinux功能,否則會出現(xiàn)些莫名其妙滴問題,比如下面的gm明明對共享目錄sales和tech是777的權(quán)限,但就是只能創(chuàng)建文件卻不能創(chuàng)建文件夾哈關(guān)閉selinux,打開selinux配置文件/etc/selinu

58、x/config設(shè)置selinux = disabled后保存退出并重啟系統(tǒng)。 查看selinux當(dāng)前狀態(tài)sestatus -v現(xiàn)在我們就可以創(chuàng)建文件夾了現(xiàn)在我們以其他測試,就用技術(shù)部joy吧在這里技術(shù)部的員工就看不到銷售部的共享目錄。同時對public目錄只讀權(quán)限,對tech目錄有讀寫權(quán)限。因?yàn)榻箤蚕砟夸泂ales訪問,就算知道了 HYPERLINK file:/.rhel5.sales rhel5sales路徑也是不能訪問滴8 Samba排錯 1)Linux服務(wù)一般滴排錯方法(1)錯誤信息一般仔細(xì)看下顯示的錯誤信息,根據(jù)錯誤提示一般滴問題就可以判斷問題出在什么地方了。(2)配置文件第2

59、個我們可以查配置文件,有時可能誤操作導(dǎo)致配置失誤,服務(wù)無常運(yùn)行,我們可以通過檢查配置文件來確認(rèn)問題?,F(xiàn)在很多服務(wù)的軟件包有自帶配置文件檢查工具,我們可以通過這些工具對配置文件進(jìn)行檢查哈(3)日志文件如果服務(wù)出現(xiàn)問題,我們還可以使用tail命令來動態(tài)監(jiān)控日志文件(在CLI狀態(tài)下可以使用Ctrl+Alt+F1F6切換到另一個CLI文字終端下查看)。tail -F /var/log/messages2)samba服務(wù)故障排錯(1)使用testparm命令檢查上面偶提到軟件包有自帶的配置文件檢查工具,我們可以使用testparm命令檢測smb.conf文件的語法,如果報錯,說明smb.conf文件設(shè)置

60、有錯誤哈,這樣我們可以根據(jù)提示信息來修改主配置文件和獨(dú)立配置文件。testparm /etc/samba/smb.confrootrhel5 # testparm /etc/samba/smb.conf Load smb config files from /etc/samba/smb.conf Cant find include file /etc/samba/.smb.conf Cant find include file /etc/samba/%G.smb.conf Processing section homes Processing section printers Processi

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論