Samba服务与配置

目录

samba

Samba使用NetBIOS通讯协议,就像NFS是架构在RPC Server上面一样,Samba是架构在NetBIOS(Network Basic Input/Output System)这个通讯协议上面所开发出来的,

其在Linux/unix系统中实现了微软的SMB/CIFS网络协议,从而使得跨平台的文件共享变得更加容易。在部署windows、Linux/unix混合平台的企业环境时,选用Samba可以很好的解决不同系统之间的文件互访问题。

工作模式

Samba使用nmbd、smbd这两个服务来控制定位主机和权限分配:

  • nmbd

用来管理工作组、NetBIOS name等的解析。主要利用UDP协议开启137,138端口来负责名称解析的任务。
对应进程:nmdb

  • smbd

主要用来管理Samba主机分享的目录,档案与打印机。主要利用TCP协议传输数据,开放端口为139,445
对应进程:smdb

共享方式

SAMBA 服务器四种共享方式 : share、user、server、domain

默认安全级别为user,要求提供用户验证。对于匿名共享服务,一般将安全级别设为share

配置文件

  • samba服务的配置文件是 /etc/samba/smb.conf

smb.conf文件中包括4种结构:

  • [Global]

Globa用于定义全局参数和缺省值

  • [Homes]

Homes用于用户的home目录共享

  • [printers]

printers用于定义打印机共享

  • [Userdefined_shareName]

Userdefined_ShareName用于自定义共享(可有多个)。

搭载User模式的samba服务

[root@localhost ~]# useradd -M test1   服务端新建用户test1

[root@localhost ~]# smbpasswd -a test1 为test1设置密码
New SMB password:
Retype new SMB password:
Added user test1

[root@localhost ~]# echo 'test1 = hide ' > /etc/samba/smbusers   为隐藏账号test1,为test1做账号映射

[root@localhost ~]# cd /media
[root@localhost media]# ls
[root@localhost media]# mkdir share

[root@localhost media]# chown test1.test1 share/ 为文件修改所属人及组


[root@localhost media]# vim /etc/samba/smb.conf
......

[global]
        workgroup = SAMBA
        security = user
        username map = /etc/samba/smbusers 添加内容,指定解析名字的文件位置
......        
[test1]
        path = /media/share      共享文件路径
        write list = hide        可以执行写权限的用户
        read only = No           可写可读
        browseable = yes         可查看共享文件
        guest ok = yes           所有人均可访问共享目录
        public = yes             允许匿名用户访问

[root@localhost media]# systemctl enable --now smb nmb 启动服务

[root@localhost ~]# smbclient -L 192.168.197.131 -U hide
Enter SAMBA\hide's password: 

	Sharename       Type      Comment
	---------       ----      -------
	print$          Disk      Printer Drivers
	test1           Disk      
	IPC$            IPC       IPC Service (Samba 4.11.2)
SMB1 disabled -- no workgroup available



[root@localhost ~]# vim /etc/fstab  编辑挂载文件,实现自动挂载
//192.168.197.131/media/share   /media  cifs    defaults,username=hide,password=123456  0 0


linux效果


windows效果
Samba服务与配置

搭载share模式的samba服务

[root@localhost share]# mkdir /media/nobody
[root@localhost share]# chmod 777 /media/nobody/   创建共享目录


[root@localhost share]# vim /etc/samba/smb.conf 配置文件编写

[global]
        workgroup = SAMBA
        security = user
       # username map = /etc/samba/smbusers
        map to guest = Bad User       确定模式为share
        passdb backend = tdbsam

[test2]
        path = /media/nobody          指定目录
        browseable = yes
        guest ok = yes
        writable = yes
        public = yes

[root@localhost share]# systemctl restart smb nmb  重启服务

查看共享文档
[root@localhost ~]# smbclient -L 192.168.197.128 -U 'Bad User'
Enter SAMBA\Bad User's password: 

	Sharename       Type      Comment
	---------       ----      -------
	print$          Disk      Printer Drivers
	test1           Disk      
	test2           Disk      
	IPC$            IPC       IPC Service (Samba 4.11.2)
SMB1 disabled -- no workgroup available



挂载
[root@localhost ~]# mount -t cifs //192.168.197.128/media/nobody /opt -o username='Bad User'

linux效果


windows效果
Samba服务与配置

上一篇:迅为-iMX6ULL开发板-Samba服务搭建


下一篇:Samba的搭建实录