################SMB文件共享###############


用internet文件系统(CIFS)也成为服务器是使用于MicrosftWindows服务器和客户端的标准文件和打印机共享系统信息块(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@desktop ~]# yum search samba 

[root@desktop ~]# yum install samba-client.x86_64 samba-common.x86_64 samba.x86_64 -y 安装smb服务

[root@desktop ~]# systemctl start smb   开启服务

[root@desktop ~]# netstat -antlupe | grep smb查看服务端口(两个服务)

[root@desktop ~]# netstat -antlupe | grep nmb

linux-SMB文件共享_linux-SMB

[root@station ~]# smbclient -L //172.25.12.12   查看(匿名)

Enter root's password:  回车
Anonymous login successful  匿名



linux-SMB文件共享_linux-SMB_02


*)创建smb用户#######################


linux-SMB文件共享_linux-SMB_03


创建smb用户,用户必须是系统已有的用户

[root@station ~]# pdbedit -L     查看smb用户

[root@station ~]#

[root@station ~]# smbpasswd -a student   创建smb用户 linux-SMB文件共享_linux-SMB_04


系统没有的用户,不能加入,如下

[root@station ~]# smbpasswd -a westos

linux-SMB文件共享_linux-SMB_05

[root@station ~]# smbclient -L //172.25.12.12 -U student 以用户身份查看

linux-SMB文件共享_linux-SMB_06


[root@station ~]# smbclient //172.25.12.12/student -U student    登录

linux-SMB文件共享_linux-SMB_07



*)实现挂载############################

-12主机---

[root@foundation12 yum.repos.d]# yum install samba-client -y 安装服务

[root@desktop ~]# mount -o username=student,password=123 //172.25.12.12/student /mnt/

linux-SMB文件共享_linux-SMB_08


*)修改名称########################

[root@station ~]# vim /etc/samba/smb.conf   编辑配置文件


linux-SMB文件共享_linux-SMB_09


linux-SMB文件共享_linux-SMB_10


[root@station ~]# systemctl restart smb.service  重启服务


linux-SMB文件共享_linux-SMB_11[root@station

更改成功!如下


linux-SMB文件共享_linux-SMB_12


*)指定谁登录smb#########################

[root@station ~]# vim /etc/samba/smb.conf  修改配置

linux-SMB文件共享_linux-SMB_13


[root@station ~]# systemctl restart smb.service  重启服务


如下10主机登录,250主机不能登录


linux-SMB文件共享_linux-SMB_14




*)共享自己的目录#########################

情况1:

[root@station ~]# getenforce   查看火墙状态

[root@station ~]# mkdir /westos  新建目录

linux-SMB文件共享_linux-SMB_15Disabled

[root@station ~]# vim /etc/samba/smb.conf   修改配置文件
linux-SMB文件共享_linux-SMB_16

[root@station ~]# systemctl restart smb.service 重启服务


如下,登录可看到自己的目录!

linux-SMB文件共享_linux-SMB_17

情况二:

[root@desktop ~]# setenforce 1
[root@desktop ~]# getenforce   
Enforcing

则需要更改安全上下文

[root@desktop ~]# ls -Zd /westos/
drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /westos/
[root@desktop ~]# semanage fcontext -a -t samba_share_t '/westos(/.*)?'
[root@desktop ~]# ls -Zd /westos/
drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /westos/
[root@desktop ~]# restorecon -FvvR /westos/
restorecon reset /westos context unconfined_u:object_r:default_t:s0->system_u:object_r:samba_share_t:s0
restorecon reset /westos/file1 context unconfined_u:object_r:default_t:s0->system_u:object_r:samba_share_t:s0
restorecon reset /westos/file2 context unconfined_u:object_r:default_t:s0->system_u:object_r:samba_share_t:s0
restorecon reset /westos/file3 context unconfined_u:object_r:default_t:s0->system_u:object_r:samba_share_t:s0


挂载


linux-SMB文件共享_linux-SMB_18


永久挂载

[root@desktop ~]# vim /etc/fstab

linux-SMB文件共享_linux-SMB_19


mount -a 使策略生效


*)匿名用户登陆#######################

[root@station ~]# vim /etc/samba/smb.conf   修改配置文件


linux-SMB文件共享_linux-SMB_20


[root@station ~]# systemctl restart smb.service  重启服务

挂载:

[root@desktop ~]# mount //172.25.12.12/DATA /mnt/ -o username=guest,password="" 

   出现错误,由于版本不一样

如下挂载:

[root@desktop ~]# mount //172.25.12.12/DATA /mnt/ -o username=guest  挂载


[root@desktop ~]# smbclient -L /172.25.12.12  匿名登录上


linux-SMB文件共享_linux-SMB_21

永久挂载

linux-SMB文件共享_linux-SMB_22

*)用户可写########################


linux-SMB文件共享_linux-SMB_23


如上不可写!


[root@station ~]# vim /etc/samba/smb.conf
[root@station ~]# systemctl restart smb.service 


linux-SMB文件共享_linux-SMB_24

[root@station ~]# ls -ld /westos/
drwxr-xr-x 2 root root 42 Dec  4 16:18 /westos/   查看权限
[root@station ~]# setfacl -m u:student:rwx /westos/  给用户赋予读写执行权限

linux-SMB文件共享_linux-SMB_25

如下,用户可写了

linux-SMB文件共享_linux-SMB_26

[root@station ~]# useradd westos  新建用户
[root@station ~]# smbpasswd -a westos  建立smb用户


linux-SMB文件共享_linux-SMB_27

[root@station ~]# usermod -G student westos  将用户机入S组
[root@station ~]# setfacl -m g:student:rwx /westos/  赋予组权限


linux-SMB文件共享_linux-SMB_28

326         write list = @student   @ / + 为该组


linux-SMB文件共享_linux-SMB_29

[root@station ~]# useradd admin  新建用户名字为管理员 可不是真正的管理员 没有管理员的权力

linux-SMB文件共享_linux-SMB_30


如下赋予他超户身份


linux-SMB文件共享_linux-SMB_31

如下admin可写了!


linux-SMB文件共享_linux-SMB_32

*)隐藏共享目录######################


linux-SMB文件共享_linux-SMB_33

 browseable = no    默认为yes 隐藏此共享目录(看不到,能用)


linux-SMB文件共享_linux-SMB_34


*)指定使用smb用户#########################



linux-SMB文件共享_linux-SMB_35

                   vaild users = +student  只有student 组用smb
 

                   vaild users = student   只有student用户用smb


[root@desktop  ~]# mount //172.25.12.12/DATA /mnt/ -o username=admin,password=123
mount error(13): Permission denied                              adimin不能实现挂载了
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)


--smb用户改密码------

[root@station ~]# smbpasswd student  
New SMB password:                 输入新密码
Retype new SMB password:      确认新密码


*)认证##################################


linux-SMB文件共享_linux-SMB_36


[root@desktop mnt]# su - kiosk   非smb用户
[kiosk@desktop ~]$ cd /mnt
[kiosk@desktop mnt]$ ls          可看到不安全
file  file1  file2  file3


SMB多用户挂载

(客户机)


linux-SMB文件共享_linux-SMB_37

[root@desktop ~]# yum install cifs-utils -y  安装服务

[root@desktop ~]# vim /root/smbfile   编辑文件

linux-SMB文件共享_linux-SMB_38


SMB多用户认证

[root@desktop ~]# mount -o credentials=/root/smbfile,multiuser,sec=ntlmssp //172.25.12.12/DATA /mnt


[kiosk@desktop mnt]$ cifscreds add -u westos 172.25.12.12   以smb用户身份查看

Password:
[kiosk@desktop mnt]$ ls
file  file1  file2  file3  liu
[kiosk@desktop mnt]$ mkdir huan  建立目录


linux-SMB文件共享_linux-SMB_39