Samba是一个实现不同操作系统(Windows、Linux)之间文件共享和打印机共享的一种SMB协议的免费软件。SMB协议是客户机/服务器协议,客户机通过该协议可以访问服务器上的共享文件及打印机共享资源。它主要应用于局域网上,也可以通过设置“NetBIOS over TCP/IP”同互联网中的电脑分享资源。
SMB协议:TCP 139端口 CIFS协议:TCP 445端口
-
Samba的安装
systemctl stop firewalld systemctl disable firewalld setenforce 0 yum -y install samba
-
创建相应目录并授权,添加用户组及用户
#创建相应目录,并将所有文件存放到/home/smb目录下 mkdir /home/smb cd /home/smb mkdir share publish admin1 admin2 user1 user2
#配置相关目录的权限和归属
chmod -R 777 /home/smb
#创建用户及用户组 将普通用户添加至group_user组,管理员添加至group_admin组。 groupadd group_admin groupadd group_user useradd -g group_admin1 -d /home/smb/admin1 -s /sbin/nologin admin1 useradd -g group_user -d /home/smb/user2 -s /sbin/nologin user2 以上是将admin1,user2分别添加group_admin,group_user管理员组,普通用户组。以此类推······ #注:-g 添加用户的所属组 –G 指定一个或多个扩展用户组 -d 指定家目录位置 -s 所用的SHELL,/sbin/nologin,禁止该用户登陆到系统
-
添加Samba用户,并设置密码
smbpasswd -a admin1
New SMB password:在这里添加admin1的密码
Retype new SMB password:重复秘密
以此类推添加其他用户密码
-
编辑配置文件smb.conf
[global] workgroup = SAMBA security = user passdb backend = tdbsam printing = cups printcap name = cups load printers = yes cups options = raw [homes] comment = Home Directories valid users = %S, %D%w%S browseable = No read only = No inherit acls = Yes [printers] comment = All Printers path = /var/tmp printable = Yes create mask = 0600 browseable = No [print$] comment = Printer Drivers path = /var/lib/samba/drivers write list = @printadmin root force group = @printadmin create mask = 0664 directory mask = 0775 [share] comment=Share path=/home/smb/share readonly=yes write list = @group_user,@group_admin create mask = 0775 directory mask = 0775 [publish] comment=Publish path=/home/smb/publish readonly=yes write list =@group_admin create mask = 0775 directory mask = 0775 [admin1] comment=admin1 path=/home/smb/admin1 read only=no write list = admin1 valid users = admin1 public = no create mask = 0775 directory mask = 0775 [user1] comment=user1 path=/home/smb/user1 read only=no write list = user1 valid users = user1 public = no create mask = 0775 directory mask = 0775
-
启动Samba服务
systemctl start smb
netstat -lntp|grep smb
-
登录
注:测试中用Windows系统登陆Samba服务器,下次在登陆时仍保持上一次的用户名,可使用net use * /del /y 清除用户登陆信息