1. 实验需求:
1) 使用RPM包安装samba服务
2) 实现匿名访问,验证可以读写文件、目录
3) 实现指定用户的访问
4) 实现指定用户的访问,并为用户赋予不同的权限
5) 实现用户的别名访问,并测试权限
6) 实现对特定的访问地址进行限制
7) 实现访问windows系统中的共享资源
2. 实验环境:
Linux服务器系统版本:Red Hat Enterprise Linux 6.5 IP:192.168.10.3
Windows客户机系统版本:Windows 7 Ultimate x64 IP:192.168.10.2
Samba软件版本:samba-3.6.9
3. 实验步骤:
基本安装操作
A. 挂载系统光盘并安装samba
要安装samba服务需要从rpm软件包安装,rpm安装包一般放在系统光盘中的Packages目录中,我们首先用mount命令看一下是否挂载了光盘到系统中
如果没有挂载,将光盘手动挂载到系统的mnt目录下
查看光盘已经被挂载
在Packages目录下找到samba服务的软件包并安装
B. 查看samba配置文件
安装好samba之后我们要想服务器能够按照我们的意愿工作就要去修改配置文件了
可以用rpm -qc来查看一个已经安装软件的文档安装位置
发现并没有显示conf配置文件,但根据经验一般conf配置文件都会放在/etc目录下,查找/etc/samba/目录,找到主配置文件smb.conf
[root@localhost~]# more /etc/samba/smb.conf 查看文件里面的内容,发现内容很长,并且有很多#号的注释
我们为了看起来方便,可以过滤掉所有带#号的行,并把过滤过后的文件内容保存为另外一个文件smb.con:
[root@localhost ~]# grep -v"#" /etc/samba/smb.conf > /etc/samba/smb.con
查看发现已经有了smb.con文件,建议原来以.conf结尾的配置文件也不要删除,可以给它改个名字做个备份,以防将来配置出错还可以把它继续拿来修改
[root@localhost ~]# cd /etc/samba #切换到samba目录
[root@localhost samba]# mv smb.confsmb.conf.back #将conf文件备份
[root@localhost samba]# mv smb.consmb.conf #将smb.con改名为smb.conf
实现匿名访问,验证可以读写文件、目录
[root@localhostsamba]# vi smb.conf #打开主配置文件
[global]
workgroup = MYGROUP
server string = Samba Server Version %v
; netbios name = MYSERVER
; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
; hosts allow = 127. 192.168.12. 192.168.13.
log file = /var/log/samba/log.%m
max log size = 50
security = share
passdb backend = tdbsam
以上为[global]全局模式的配置内容,其他保持默认即可,我们关心的是如果要实现匿名访问,只需要修改 security 使安全级别为share(默认的为user)
下面是对share共享目录进行配置,在配置文件的末尾插入以下行
[share] #指定目录的共享名称
path= /opt/share #指定共享share这个目录
public= yes #public=guest ok,设为yes允许匿名用户访问
browseable= yes #让匿名用户可以看到共享内容
writable= yes #设置可以有写入的权限
createmask = 0644 #设置新建文件的权限,表示属主具有读写权限,其他人都只有只读权限(rw-r--r--)
directory mask = 0755 #设置新建目录的权限,表示属主具有读写执行权限,其他人没有写入权限(rwxr-xr-x)
A. 修改后的脚本:
[root@localhostsamba]# mkdir /opt/share #创建share共享目录
[root@localhostsamba]# chmod 777 /opt/share #修改权限为777
[root@localhostsamba]# service smb start #启动samba服务
[root@localhostsamba]# netstat -ant #查看网络端口状态
139和445两个samba服务的端口正在被监听,samba服务是正常的,下面就可以去客户机上测试了。测试之前,必须把防火墙和selinux关掉
[root@localhost samba]# service iptables stop
iptables:将链设置为政策ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]
[root@localhost samba]# setenforce 0
------------------------------------分割线------------------------------------
如何在Ubuntu 14.04中使用Samba共享文件
VMWare 虚拟机 Ubuntu 双网卡 访问 samba 速度 翻倍
Samba文件共享服务器加入Windows Server 2003域
CentOS 6.2 下Samba 服务的配置
Win7+VMware+Fedora18 Samba服务器的搭建图解
------------------------------------分割线------------------------------------