Samba是在Linux和UNIX系統上實現SMB協議的一個免費軟件。
## 服務器端設置
查詢Samba
```
yum info samba
```
安裝和配置Samba服務
```
yum install samba -y
systemctl start smb
systemctl enable smb
systemctl status smb
```
創建組
```
groupadd sales-rw
groupadd sales-r
```
創建用于共享的文件夾
```
mkdir /share
chown sales-rw:sales-rw /share
chmod 775 /share
ls -l / | grep share
```
創建演示用戶
```
useradd user01 -g sales-rw -c "user01 in sales-rw group"
useradd user02 -g sales-r -c "user02 in sales-r group"
```
設置Samba用戶密碼
```
smbpasswd -a user01
smbpasswd -a user02
```
修改配置文件vi /etc/samba/smb.conf (添加下面內容)
```
# Users in group sales-rw have read/write permission
# Users in group sales-r have read permission
# Others have no permission
[Sales department]
comment = Sales department
shared folder
path = /share
guest ok = no
writable = yes
valid users = @sales-rw,@sales-r
write list = sales-rw
create mask = 0664
directory mask = 0775
```
重啟Samba服務
```
systemctl restart smb
```
查詢socket statistics狀態
```
ss -antp | grep smb
```
設置防火墻例外
```
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload
firewall-cmd --list-services
```
設置SELINUX
```
setsebool -P samba_export_all_ro=1 samba_export_all_rw=1
getsebool -a | grep samba_export
```
## 客戶端設置
圖形界面(Other Locations -> Connect to Server)
```
smb://192.168.10.71/Sales department
```
命令行
```
mkdir /smb
mount -t cifs -o username="user01",password="******" "//192.168.10.71/Sales department" /smb
```