实验环境: Red Hat Enterprise Linux Server 5.4
Samba文件共享服务器IP 192.168.0.1
客户端IP 192.168.0.2
一、 安装5个软件包(至少安装前三个软件包)
Samba-3.0.33-3.14.el5.i386.rpm
Samba-client-3.0.33-3.14.el5.i386.rpm
Samba-common-3.0.33-3.14.el5.i386.rpm
Ststem-config-samba-1.2.41-5.el5.noarch.rpm
Samba-swat-3.0.33-3.14.el5.i386.rpm
二、 Smb.conf文件常见配置项及含义说明
配置项 |
说明 |
workgroup |
设置服务器所在工作组 如 WORKGROUP |
server string |
设置服务器的说明文字,用于描述samba服务 |
security |
设置服务器安全级别 share 匿名访问,user验证用户名密码,server由别一台服务器验证用户名密码,domain由windows域控制器验证用户名密码 |
log file |
设置服务器日志文件 默认 /var/log/samba/%m.log |
max log size |
设置日志文件容量,默认为50KB |
comment |
设置对应目录的注释说明 |
path |
设置对应共享目录在服务器的文件夹路径 |
browseable |
设置该共享目录是否在网上邻居可见 |
guest ok |
设置是否所有人都可以访问共享目录,与public作用相同 |
writable |
设置共享目录是否可写,与read only 作用相反 |
valid users |
设置允许访问的用户或组 如:tom @tom(组用@表示) |
write list |
设置允许用户写入权限 |
directory mask=0744 |
建立文件夹默认权限 |
create mask=0600 |
建立文件默认权限 |
username map |
指定用户名映射文件map=/etc/samba/smbusers |
hosts allow |
允许访问的地址 |
hosts deny |
拒绝访问的地址 |
三、 建立可匿名访问的共享目录
1. 配置Smb.conf 发布共享文件夹/var/public/movies 共享名为movie
#mkdir -p /var/public/movies //建立共享目录
#vim /etc/samba/smb.conf
[global]
workgroup = WORKGROUP //与windows主机同一默认工作组
server string = Samba Server
security = share //设置服务器安全级别为匿名访问
passdb backend = tdbsam
load printers = yes
cups options = raw
[homes]
………..
[printers]
…………
[movie]
comment=Public share with movie files
path=/var/public/movies
public=yes
read only=yes
2. #service smb restart 重启服务
3. #chkconfig smb on
四、 建立带验证的文件共享
1. 建立samba用户数据库
#useradd vina
#smbpasswd –a vina (添加用户vina为smb用户)
#chmod 777 /var/public/movies (设置文件夹读写执行权限)
2. 更改smb.conf配置文件 添加用户授权设置
[global]
workgroup = WORKGROUP
server string = Samba Server
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw
…………
[movie]
comment=Public share with movie files
path=/var/public/movies
public=yes
writable=no //拒绝所有人可写
valid users=vina, @root //设置合法访问者
write list=root //设置允许用户写入权限
directory mask=0744 //建立文件夹默认权限
create mask=0600 //建立文件默认权限
3. #service smb restart 重启服务
4. 为Samba 用户vina设置到名称为player的映射
#vim /etc/samba/smbusers
vina=player
5. 添加客户端地址授权设置
#vim /etc/sambs/smb.conf 在全局配置中添加
username map=/etc/samba/smbusers //指定映射文件
hosts allow=192.168.0. //指定访问服务器网段
hosts deny=172.16.0. //拒绝访问服务器网段