服務之--samba
1.samba的作用
samba是一款軟體,主要功能是提供cifs服務
2.samba的安裝與啟用
*)在服務端
yum install samba samba-common samba-client -y
systemctl start smb
systemctl stop firewalld
*)samba的基本資訊
埠: 139/tcp 139/udp 445/tcp 445/udp
主配置檔案:/etc/samba/smb.conf
*)基本配置資訊
workgroup = WESTOS ##工作組的設定
server string = hello world ##全域性共享資訊
hosts allow = 172.25.254.223 ##客戶端黑名單
hosts deny = 172.25.254.223 ##客戶端白名單
3.測試
*)在客戶端
yum install samba-client -y
smbclient -L //172.25.254.123
Enter root’s password: ##沒有密碼直接回車
Domain=[GODDEVIN] OS=[Unix] Server=[Samba 4.1.1]
Sharename Type Comment --------- ---- ------- IPC$ IPC IPC Service (hello world)
Anonymous login successful
Domain=[GODDEVIN] OS=[Unix] Server=[Samba 4.1.1]
Server Comment
--------- -------
Workgroup Master
--------- -------
4.本地使用者的建立及訪問
本地使用者建立
*)在服務端
samba擁護必須是本地使用者
useradd westos
useradd lee
smbpasswd -a westos
smbpasswd -a lee
pdbedit -L
pdbedit -x lee
setsebool -P samba_enable_home_dirs on ##開啟允許訪問家目錄服務
測試
*)在客戶端
samba-client -L //172.25.254.123 -U lee
Enter lee’s password:
Domain=[GODDEVIN] OS=[Unix] Server=[Samba 4.1.1]
Sharename Type Comment
--------- ---- -------
IPC$ IPC IPC Service (hello world)
lee Disk Home Directories
Domain=[GODDEVIN] OS=[Unix] Server=[Samba 4.1.1]
Server Comment
--------- -------
Workgroup Master
--------- -------
測試命令
smbclient //172.25.254.123/lee -U lee
mount //172.25.254.123/lee /mnt/ -o username=lee,password=lee
vim /etc/fstab ##實現客戶端永久掛載
//172.25.254.123/lee /mnt cifs defaults,username=lee,password=lee 0 0
5.自定義共享目錄
*)當目錄是使用者建立時
mkdir /sambadir
semanage fcontext -a -t samba_share_t ‘/sambadir(/.*)?’
restorecon -FvvR /sambadir/
vim /etc/samba/smb.conf
321 [DATA]
322 comment = hello world
323 path = /sambadir
*)當目錄是系統目錄時
setsebool -P samba_export_all_ro on
測試
smbclient -L //172.25.254.123 -U lee
smbclient //172.25.254.123/DATA -U lee
*)匿名使用者登陸許可權開放
guest ok = yes ##匿名使用者可以登陸
126 map to guest = bad user ##匿名使用者可以使用guest名稱掛載
6.許可權控制
使用者可寫
chmod 777 /sambadir
setsebool -P samba_export_all_rw on
writable = yes | no ##是否開啟寫權力
write list = lee ##寫權力對lee使用者開放
write list = +|@lee ##寫權力對lee組使用者開放
admin users = westos ##設定westos使用者為當前共享的root
valid users = lee ##設定當前共享的有效使用者
browseable = yes|no ##當前共享是否顯示
7.samba的多使用者掛載
*)在客戶端
yum install cifs-utils -y
vim /root/sambapasswd
username=lee
password=lee
chmod 600/root/sambapasswd
mount -o credentials=/root/sambapasswd,sec=ntlmssp,multiuser //172.25.254.123/DATA /mnt/
credentials=/root/smbpasswd ##掛載時的使用者認證
sec=ultiuser ##支援其他使用者認證
sec=ntlmssp ##其他使用者的認證方式
測試
ls /mnt
su - student
ls /mnt
ls: reading directory :Permission denied
在student下
cifscreds add -u westos 172.25.254.123 ##新增即使錯誤也不警告
cifscreds update -u westos 172.25.254.123 ##新增錯誤了更新
ls /mnt
touch /mnt/file5
可以看到建立file5所用到的使用者身份是samba使用者westos