samba--文件服務器

------------samba--------------

--smb(Server Message Block))--IBM註冊

提供了四種服務

1.用戶驗證和授權

2.文件和打印機共享

3.域名解析

4.瀏覽

*****************************************************************************

配置好之後,如果客戶端訪問不了smb服務器,把防火牆禁用了,就可以了。

*****************************************************************************

--------------------安裝-----------------

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.每個共享文件夾要單獨設置一個回收站文件, 避免同名文件覆蓋,同時也方便管理和查找.


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章