首页 > 代码库 > 2.1Samba服务
2.1Samba服务
1.1 Samba 概述
Samba 最先在Linux 和Windows 两个平台之间架起了一座桥梁,正是由于Samba 的出现,我们可以在Linux 系统和Windows 系统之间互相通信,比如拷贝文件、实现不同操作系统之间的资源共享等等,我们可以将其架设成一个功能非常强大的文件服务器,也可以将其架设成打印服务器提供本地和远程联机打印。
1.2 Samba 应用环境
文件和打印机共享:文件和打印机共享是Samba 的主要功能,SMB 进程实现资源共享,将文件和打印机发布到网络之中,以供用户可以访问。
身份验证和权限设置:smbd 服务支持user mode 和domain mode 等身份验证和权限设置模式,通过加密方式可以保护共享的文件和打印机。
名称解析:Samba 通过nmbd 服务可以搭建NBNS(NetBIOS Name Service)服务器,提供名称解析,将计算机的NetBIOS 名解析为IP 地址。
浏览服务:局域网中,Samba 服务器可以成为本地主浏览服务器(LMB),保存可用资源列表,当使用客户端访问Windows 网上邻居时,会提供浏览列表,显示共享目录、打印机等资源。
端口号: 139 和 445
在早期,SMB 运行于NBT 协议(NetBIOS over TCP/IP)上,使用UDP 协议的137、138 及TCP 协议的139 端口。
模式: C/S模式
步骤:
先安装Samba包
指定存放密码文件位置
主配置文件里面
Security=user
passdb backend = smbpasswd(密码文件名)
smb passwd file = /etc/samba/smbpasswd
重启服务 service smb restart
开机自动启动:chkconfig --level 3 smb on #运行级别3 自动启动服务
创建用户:useradd –M –s /sbin/nologin jsb
设置密码:smbpasswd -a jsb
若需要账号映射:在主配置文件global下加
开启用户账号映射:username map=/etc/samba/smbusers
添加虚拟用户:vim /etc/samba/smbusers
加jsb=lisi zhangsan wanger (虚拟用户名)
创建共享文件 mkdir /share
主配置文件:
workgroup=指定工作组
server setting=指定描述信息
配置共享资源
[share] #设置共享名
comment = Home Directories #描述
browseable = yes #是否允许查看此共享内容 。如果是否,后期通过绝对路径,可以查看到。
path = /share #共享路径,写绝对路径
valid users = 用户名 设置允许访问用户
valid users = @组名
设置目录可写,如果共享目录允许用户写操作,可以使用writable 或write list 两个字段进行设置
writable = yes #读写
writable = no #只读
write list 格式:
write list = 用户名
write list = @组名
控制访问源
hosts allow 字段定义允许访问的客户端
hosts deny 字段定义禁止访问的客户端
例:如果公司现在要求共享目录xsb只允许192.168.1.0/24网段的主机访问,同时禁止192.168.1.3IP地址的访问
hosts allow = 192.168.1. 0 #允许192.168.1.0/24网段访问
hosts deny = 192.168.1.3 #禁止192.168.1.3主机访问
注:
当hosts allow 和hosts deny 同时设置时,hosts allow 生效,如果这样的话,上面的这两项设置192.168.1.3就是不生效的,针对这种情况,可以使用except进行排除
hosts allow = 192.168.1. EXCEPT 192.168.1.3
如果需要切换用户,需要清空一下Windows系统的共享缓存
使用net use 查看缓存信息
使用net use * /delete 删除缓存信息
linux客户端测试:smbclient -L ip
window测试:win+R 打开输入\\ip
2.1Samba服务