1. 程式人生 > >CIFS文件系統

CIFS文件系統

linux 基礎 學習篇

一、基礎信息

用Internet文件系統(CIFS)也稱為服務器信是適用於MicrosoftWindows服務器和客戶端的標準文件和打印機共享系統息塊(SMB)

Samba服務可用於將Linux文件系統作為CIFS/SMB網絡文件共享進行共享,並將Linux打印機作為CIFS/SMB打印機共享進行共享

軟件包:

Samba-common ? ##Samba 的支持文件

Samba-client ? ? ? ? ##客戶端應用程序

Samba ? ? ? ? ? ? ? ? ? ##服務器應用程序

服務名稱smb、nmb

服務端口:通常使用TCP/445進行所有連接。還使用UDP137、UDP138和TCP/139進行向後兼容

主配置文件:/etc/samba/smb.conf

二、存儲分離

服務端:

[root@route ~]# iptables -F?????##刷空iptables策略

[root@route ~]# iptables -nL????##查看

技術分享圖片

安裝需要的軟件

[root@route ~]# yum install samba-common.x86_84 samba.x86_64 samba-client -y

[root@route ~]# systemctl start smb ? ? ? ? ??##開啟

[root@route ~]# id student ? ? ? ? ? ? ? ? ? ? ? ??##samba用戶必須是系統存在用戶

技術分享圖片

[root@route ~]# smbpasswd -a student ? ? ?##設置samba用戶登陸密碼

[root@route ~]# smbclient -L //172.25.254.124 -U student ??##列出samba共享用戶信息,登陸student

?技術分享圖片

[root@route ~]# smbclient -L //172.25.254.124 ???##登陸匿名用戶,並列出信息

技術分享圖片

這裏匿名用戶的Samba登陸密碼為空,按下回車即可

技術分享圖片

[root@route ~]# getsebool -a | grep samba ? ??##查看狀態

技術分享圖片

永久打開samba_enable_home_dirs(-P表示永久

[root@route ~]# setsebool-Psamba_enable_home_dirs?on

[root@route ~]# smbclient //172.25.254.124/student -U student ??##查看共享信息

技術分享圖片



三、修改workgroup的名稱

技術分享圖片

[root@route ~]# vim /etc/samba/smb.conf????##如下,已經改為Linux

技術分享圖片

[root@route ~]# systemctl restart smb ? ? ? ? ??##重啟服務

如下,修改成功!!!

技術分享圖片


四、創建一個共享目錄並修改相關信息

強制性狀態

技術分享圖片

[root@route ~]# vim /etc/samba/smb.conf

技術分享圖片

共享名稱為DATA、共享描述為qq data,共享路徑為/westos

[root@route ~]# systemctl restart smb

[root@route ~]# smbclient -L //172.25.254.124

效果如下:

技術分享圖片

創建/westos目錄

[root@route ~]# mkdir /westos/

技術分享圖片

修改安全上下文

[root@route ~]# semanage fcontext -a -t samba_share_t ‘/westos(/.*)?‘

[root@route ~]# restorecon -FvvR /westos/

[root@route ~]# smbclient //172.25.254.124/DATA -U student

效果如下:

技術分享圖片

?

在服務器主機上的/westos新建文件

[root@route ~]# touch /westos/file{1..3}

可以看到成功共享 ?

技術分享圖片


五、允許匿名登陸

思想:把匿名用戶映射為guset,以此讓匿名用戶可以登陸

[root@route ~]# vim /etc/samba/smb.conf ? ? ? ? ? ##添加匿名用戶身份guest

技術分享圖片

[root@route ~]# systemctl restart smb

客戶端測試:

註意,匿名用戶的密碼為空

[root@node86-12 ~]# smbclient //172.25.254.124/DATA username=guest,password=""

技術分享圖片

開機自動掛載:

[root@node86-12 ~]# vim /etc/fstab

//172.25.254.124/DATA ????????????????????/mnt ??????????????????cifs ????defaults,username=guest,password="" 0 ?0

[root@node86-12 ~]# mount -a

技術分享圖片

?

六、對DATA可進行操作

可掛載前提下的操作

(1)任何smb用戶都可以新建刪除

服務端:

[root@route ~]# vim /etc/samba/smb.conf

技術分享圖片

[root@route ~]# systemctl restart smb

客戶端:

[root@node86-12 ~]# mount -o username=student,password=123 //172.25.254.124/DATA /mnt/

技術分享圖片

此時,是文件系統拒絕被寫,則需要修改服務器的目標目錄/westos權限

[root@route ~]# setfacl -m u:student:rwx /westos/

技術分享圖片

客戶端再次訪問時,對其可寫了

?技術分享圖片

(2)只允許student用戶新建刪除

服務端:

[root@route ~]# vim /etc/samba/smb.conf

技術分享圖片

[root@route ~]# systemctl restart smb

新建系統用戶以及samba用戶xixi

[root@route ~]# useradd xixi

[root@route ~]# smbpasswd -a xixi

New SMB password:

Retype new SMB password:

Added user xixi.

客戶端:

可以看到xixi用戶不可寫,只有student用戶可以寫

技術分享圖片

(3)只允許student用戶組下的用戶新建刪除

服務端:

[root@route ~]# vim /etc/samba/smb.conf

技術分享圖片

註:+或@表示組的含義

[root@route ~]# systemctl restart smb

把/westos的組改為student

[root@route ~]# setfacl -m g:student:rwx /westos/

把用戶xixi歸屬於student

[root@route ~]# usermod -G student xixi

客戶端:

技術分享圖片

(4)賦予用戶admin,使其對文件系統/westos/具有超級用戶admin身份,進行新建刪除

[root@route ~]# vim /etc/samba/smb.conf

技術分享圖片

[root@route ~]# systemctl restart smb

添加系統用戶以及samba用戶

[root@route ~]# useradd admin

[root@route ~]# smbpasswd -a admin

查看用戶

技術分享圖片

客戶端:

技術分享圖片


七、掛載問題

1、no表示隱藏DATA,但是仍然可以掛載

服務端:

[root@route ~]# vim /etc/samba/smb.conf

技術分享圖片

[root@route ~]# systemctl restart smb

客戶端:

可以看到DATA已經隱藏,但是仍然可以掛載

技術分享圖片

2、DATA隱藏後,只有student用戶可以掛載

服務端:

[root@route ~]# vim /etc/samba/smb.conf

技術分享圖片

[root@route ~]# systemctl restart smb

客戶端:達到預期效果

技術分享圖片

3、DATA隱藏後,只有student用戶組可以掛載

服務端:+@表示組的意思

[root@route ~]# vim /etc/samba/smb.conf

技術分享圖片

[root@route ~]# systemctl restart smb

客戶端:admin用戶不是student組,故不能掛載

技術分享圖片


八、安全性

多用戶管理,多用戶掛載,並且該用戶是通過安全認證的

客戶端:

[root@fundation86 ~]# ?yum install cifs-utils -y

在root下新建smbfile以保存用戶信息

[root@fundation86 ~]# vim /root/smbfile?

技術分享圖片

[root@fundation86 ~]# chmod 600 /root/smbfile ?? ##改其權限

掛載的同時,以student身份通過認證

[root@fundation86 ~]# ?mount -o credentials=/root/smbfile,multiuser,sec=ntlmssp //172.25.254.124/DATA /mnt/

[root@fundation86 ~]# exit ? ? ? ?##切換到kiosk用戶此時kiosk未認證,即沒有權限

技術分享圖片

以服務器主機smb用戶xixi的身份通過認證

[kiosk@fundation86 ~]$ cifscreds add -u xixi 172.25.254.124

加以驗證:

技術分享圖片

此時kiosk新建三個目錄

[kiosk@fundation86 ~]$ mkdir ?/mnt/kiosk{1..3}

服務端:很清楚

技術分享圖片



?

0?0





CIFS文件系統