用途:它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务,不同系统,不同操作平台,通用。
协议支持:SMB
Server Message Block,服务消息块(提供服务支持)
CIFS
Conmmon Internet File System,通用互联网文件系统(数据传输)
Samba软件包构成
Samba-common-\t (命令)
Samba-client-\t (客户端)
Samba4-lib-\t (库)
Samba-winbind-clients-\t (wind客户端)
Samba-windbind-\t (windDNS)
Samba-3\t (服务端)
Samba服务器的主要程序
Smbd:提供对服务器中文件,打印资源的共享访问
Nmbd:提供基于NETBIOS主机名称的解析
Samba的服务脚本
/etc/init.d/smb
Samba的配置目录及文件
/etc/samba/
/etc/samba/smb.conf
配置文件检查工具:testparm
Samba主配置文件构成:
[global]:全局设置
[homes]:用户目录共享设置
[printers]:打印机共享设置
[myshare]:自定义名称的共享目录设置
Samba全局配置项的含义:
Server string :服务器描述信息
Security :安全级别
share user server domain
Passwd backend :设置共享账户文件的类型
常见共享目录配置项的含义
Comment :对共享目录的注释,说明信息
Path :共享目录在服务器中对应的实际路径
Browseable :该共享目录在“网上邻居”中是否可见
Guest ok :是否允许所有人访问,等效于“public”
Writable :是否可写,与“read only”相反
Ⅰ设置匿名访问的共享
⑴挂载安装Samba软件服务端
mount /dev/cdrom /media
rpm -i /media/Packages/samba-3\t
⑵编辑Samba 配置文件
vi /etc/samba/smb.conf
将安全级别改为share(匿名共享)
security = share
编辑自定义共享设置
[项目资料]
common = 项目组共享资料
path = /aa
public = yes
read only = yes
⑶启动Samba服务
service smb start
⑷客户端远程查看验证
资源管理器中输入
\\192.168.1.5
Ⅱ设置需要用户验证的共享
⑴挂载安装Samba软件服务端
mount /dev/cdrom /media
rpm -i /media/Packages/samba-3\t
⑵编辑Samba 配置文件
vi /etc/samba/smb.conf
安全级别可用share 或 user
security = share ……混合模式(匿名与验证共存)
或
security = user ……须验证方能共享
编辑自定义共享设置
[项目资料]
common = 项目组共享资料
path = /aa
public = no
read only = yes
valid user = hau,chum
write list = hua
⑶建立Samba用户数据库文件
默认数据库文件位于
/var/lib/samba/private/passdb.tdb
Useradd hua 增加用户
Pdbedit -a -u hua 设定用户Samba密码
-a :添加用户 -v :详细信息 -L : 所有用户 -u :指定用户
[root@localhost~]# Pdbedit -L
Hua:500
[root@localhost~]# pdbedit -vL hua 查看hua的详细信息
⑷启动Samba服务
service smb start
⑸确定用户访问权限
设置共享目录权限
Chmod 777 /aa
⑹客户端远程查看验证
注:可改变共享目录属主为write list 允许的用户
chown -R hua /aa
设置上传文件和目录的默认权限
Vi /etc/samba/smb.conf
[绝密]
directory mask = 0755
create mask = 0644
- 访问地址限制
- 一般用在全局配置 [global] 部分
- hosts allow 配置项:仅允许特定的客户机
- hosts deny 配置项:仅拒绝特定的客户机
-
客户机地址表示形式:
- 以空格分隔多个地址
- 主机名或 IP 地址,例如: 192.168.168.11 或者 prtsvr
- 网络地址,例如:173.17. 或者 173.17.0.0/255.255.0.0
- [root@localhost ~]# vi /etc/samba/smb.conf
- [global]
- hosts allow = 192.168.4. 173.17.
- ……
- [root@localhost ~]# service smb reload
- 重新载入 smb.conf 文件: [确定]