------------samba--------------linux
--smb(Server Message Block))--IBM註冊web
提供了四種服務vim
1.用戶驗證和受權windows
2.文件和打印機共享緩存
3.域名解析服務器
4.瀏覽網絡
*****************************************************************************dom
配置好以後,若是客戶端訪問不了smb服務器,把防火牆禁用了,就能夠了。ide
*****************************************************************************測試
--------------------安裝-----------------
yum -y install samba (samba-client和samba-common默認已經安裝)
(查看文件是安裝哪一個包時產生的 rpm -qf /etc/samba/smb.conf)
samba服務器隨着服務器的啓動而自啓動須要下列命令
systemctl enable smb
systemctl start smb
主配置文件 /etc/samba/smb.conf
/etc/samba/lmhosts --名稱解析
首先建立一個共享文件夾 jinni
chmod -R 777 jinni
------------ smb.conf----------------------
注:smb受selinux管制!!!若是上傳的文件看不到,有多是selinux擋住了,關閉便可。
vim /etc/sysconfig/selinux(配置文件修改權限)需重啓系統
1.警告模式 setenforce 0 (permissive) 2.強制模式 setenforce 1 (enforcing) 3.關閉模式 disabled
getenforce selinux 查看selinux狀態
setsebool -P samba_enable_home_dirs=1(若是關掉selinux就不用此命令了)
chcon -t samba_share_t /jinni(修改共享目錄selinux類型屬性)
securetty = user/share
---認證級別--一共五個!
share: 不須要作身份驗證
user: 該服務須要作身份驗證,認證來自於本機
domain/server: 來自於網絡中的另外一臺計算機
ads: 認證來自微軟的活動目錄
-爲smb添加用戶(用戶必須是本地賬戶)
smbpasswd -a 用戶名 #添加一個samba用戶
smbpasswd -d 用戶名 #禁用一個samba用戶
smbpasswd -e 用戶名 #恢復一個samba用戶
smbpasswd -x 用戶名 #刪除一個samba用戶
useradd user1/user2
smbpasswd -a user1
smbpasswd -a user2
修改smb用戶密碼
smbpasswd smbname
查看samba服務器中已擁有哪些用戶
pdbedit -L
user1----smb用戶密碼--
smbclient -L //192.168.1.1 --使用匿名身份瀏覽
smbclient -L //192.168.1.1 -U user1 --(用戶訪問)
smbclient //192.168.1.1/RHCE --訪問
若是想要查詢samba服務器中現有哪些用戶,可使用net命令
net rpc user -S iscas
net rpc user -w workgroup
***************************************************************
配置文件 vim smb.conf
[haha] --共享的名稱
path = /jinni(須要共享的目錄的路徑)
comment = 註釋
browseable = yes --全部用戶均可以瀏覽
browseable = no --全部用戶都不能夠瀏覽
public = no --匿名不容許訪問,smb用戶容許訪問。 用來指定該共享是否容許guest帳戶訪問。
public = yes --匿名和smb用戶都容許訪問
writable = yes --全部用戶均可以寫
writable = no --全部用戶都不能夠寫
write list = user1 --容許寫入該共享的用戶,若是某個用戶同時位於"read list"和"write list"配置中,之後者爲準。
read list = user2
hosts allow = 192.168.1.253/255.255.255.0 (容許某個域訪問)
hosts deny = 192.168.1.0/255.255.255.0 (拒絕某個域訪問)
valid users = harry, user4, user5(容許訪問該共享的用戶,若是此配置爲空,則任何用戶都可訪問samba服務器)
invalid users = user1, user2(禁止訪問該共享的用戶)
admin list = jinguanhua 用來指定該共享的管理員(對該共享具備徹底控制權限)
(writeable與read only 配置變量的意義徹底相反)
read only = no 設定該共享服務是否爲只讀
爲了便於不一樣的windows用戶,以同一用戶身份與權限訪問共享資源時,須要增長「username map」配置變量,定義一個用戶名映射文件。
username map = /etc/samba/smbusers
還須要修改配置變量中定義的/etc/samba/smbusers文件,其中包含必要的用戶名映射關係。
例如:
爲了使windows2000系統中的administrator與windowsXP系統中的admin用戶可以以jinni用戶的身份訪問samba服務器,可在smbusers文件中增長下列映射關係:
jinni = administrator admin
若是一個帳號須要有其餘同級文件夾的權限,除了修改write list,valid users,還須要配置文件夾權限。
設置用戶yunwei有訪問文件夾jinni和jinni下的子目錄的rx權限
setfacl -R -m u:yunwei:rx jinni
掛載
mount -t cifs //IP/RHCE /yinhe -o username=smbuser1%123(把共享文件夾RHCE掛載到本地文件夾yinhe)
開機啓動 vim /etc/fstab
//IP/RHCE /yinhe cifs defaults,username=smbuser1%123 0 0
testparm /etc/samba/smb.cono station1.example.com 192.168.1.1
----測試某一臺計算機是否有權限訪問
*************************************************************
當在命令提示窗口輸入net use命令時,會顯示本機緩存的共享登陸信息,若是你想切換用戶訪問其餘文件夾,則能夠刪除那條緩存的記錄便可。
net use * /delete
net use caiwu /delete
訪問Samba共享的文件很慢很慢的問題
是由於network 和 hosts文件中的主機名不同, 將hosts文件中的主機名改爲和network中的主機名同樣便可。
vim /etc/sysconfig/network vim /etc/hosts
在公司常常有員工誤刪除文件或者文件夾的狀況。如何恢復被刪除的共享文件或者文件夾???
能夠經過smb.conf配置文件,給每一個共享文件夾添加回收站配置!
vim /etc/samba/smb.conf
recycle:repository = /home/caiwu/.deleted
recycle:keeptree = Yes #指定是否按刪除時的目錄結構存放
recycle:versions = Yes #指定是否區覆蓋同名的文件,yes是不覆蓋
recycle:maxsixe = 0 #指定回收站目錄的大小,0是不限制
recycle:exclude = *.tmp|*.mp3 #不放入回收站的文件類型
recycle:noversions = *.doc #指定覆蓋同名文件的文件類型
#####recycle:repository = /home/caiwu/.deleted/%U #指定該共享文件夾的回收站目錄 %U是按登陸的用戶名分開存放#####
#####禁止上傳的文件veto files = /*.mp3/*.mp4/*.rmvb/*.wma/*.exe/*.bat/*.dll/*.avi/*.rar#######
注意事項:
1.回收站文件夾的用戶和用戶組設置, 權限設置要和共享文件夾的設置是同樣的, 若是不一致被刪除的文件是沒法保存到回收站文件夾
2.若是maxsize設置爲0, 那麼回收站的文件須要管理員手工去刪除. 固然, 能夠將刪除文件的任務交給計劃任務去完成,如:
vim /etc/crontab
30 8 * * * root find /samba/deleted/ -mtime +30 -exec rm -rf {} \;
上面的設置就是天天8:30 刪除回收站內大於30天的文件
3.每一個共享文件夾要單獨設置一個回收站文件, 避免同名文件覆蓋,同時也方便管理和查找.