Samba服務不僅可以實現linux和win之間的文件共享,也可以實現linux和linux之間的共享,samba的用戶只限服務端本地用戶使用。
本文的環境是selinux開啟的情況下配置
Samba服務配置:
首選安裝samba軟件包:
創建一個打算共享的目錄:修改目錄的權限
在目錄中創建幾個文件以示區別:
安裝修改目錄安全上下文的軟件包:
修改目錄的安全上下文:
也可以使用chcon –t samba_share_t /hello 穩定性沒永久生效的好
查看下修改后的目錄安全上下文:
配置samba服務端:
參數我們一個一個舉例看:
重啟服務:
匿名用戶測試下:(匿名用戶是不可以使用samba服務的)
但是匿名用戶可以查看到samba服務端共享出的目錄:
添加2個samba用戶:
使用本地用戶登陸:(只要添加了samba用戶,不寫目錄的有效用戶,系統默認都可以登錄)
我們目錄雖然給了寫的權限,發現依舊不可以上傳,目錄權限和samba配置文件權限取交集。
Win客戶端的測試:(只要我們登陸samba服務就必須要用戶名和密碼,杜絕了匿名用戶的訪問;linux客戶端好歹還能看到共享的目錄,win你只要登錄就要密碼,連看都沒權限,更嚴格)
使用samba用戶登陸:(配置文件默認samba用戶家目錄是打開的)
試著打開westos共享目錄:(完全沒問題)
我們創建個文件看看ok不?(提示沒權限)
看看能不能大家lee用戶的家目錄:(也不行,這是因為我們的selinxu布爾值并未打開家目錄,所以只能看不能訪問)
Win系統它的緩存建立的很到位,只要我們訪問過samba服務,在一定的時間內,你再次訪問,不需要用戶名,密碼可以直接進去。使用一下方法斷開連接
我們再次配置samba服務:加public共工的,這個目錄誰都可以看到
客戶端測試:(匿名用戶可以登陸)linux客戶端可以,win不行,你一登陸就提示要用戶名,密碼,不寫不讓登。
普通用戶也試試:
配置samba服務:writeable =yes 所有用戶都具有寫的權限,包括匿名用戶。
匿名用戶:
不僅可以登陸還可以上傳文件
測試下本地用戶:上傳沒問題
Win客戶端測試:
有寫的權限就意味了我們可以刪除,創建目錄,上傳文件:
配置samba服務:write list = 指定某個用戶具有寫的權限,其他人都沒有:
客戶端測試:redhat用戶
使用lee用戶:
不ok,沒權限
配置samba服務:@redhat redhat這個組可以寫,其他人不能寫
把lee用戶添加到redhat這個組:
客戶端測試:lee用戶又可以寫了
配置samba服務:隱藏westos目錄
測試:完全看不到westos目錄
Win客戶端也測試:samba本地用戶也一樣看不到
等于yes是呢?
配置samba服務:對這個目錄的有效用戶
測試:發現不可以訪問
拿win測:發現你進入這個目錄還是要密碼用戶名的、
給samba服務添加個管理員:
管理員以為這什么?這是之前我們上傳的文件,所有者,所屬組,幾乎都為登陸用戶的身份,但是當lee用戶作為管理員之后,他所做的動作都將變為root身份。
還有很多其他的參數:
passWord server = # 其他的NT 服務器,或samba服務器但security=server或domain 的ntbios 名字
hosts allow = 192.168.0. #指定那些主機可以訪問
hosta deny = 192.168.8. #指定那些主機不可以訪問
interfaces = 192.168.0.100/255.255.255.0 #設置samba將對哪些網絡接口進行服務。
log file = /var/log/samba/%m.log #日志文件
max log size = 0 #日志文件的大小
log level = 0 # 日志級別 0 表示沒有,3 一般比較合理
syslog = 2 # syslog的日志級(0,err)(1,warning)(2,notice)(3,ifno)(4或以上,debug)
syslog only = yes #只使用系統日志,關閉samba日志
新聞熱點
疑難解答