Cenots 6.3 x86_64
samba服务器IP地址: 192.168.1.53
注:本实验iptables防火墙和selinux都是关闭的。
1、安装samba
登录系统检查是否安装了samba软件包,检查命令如下:
[root@data ~]# rpm -qa | grep samba
samba-winbind-clients-3.5.10-125.el6.x86_64
samba-3.5.10-125.el6.x86_64
samba-common-3.5.10-125.el6.x86_64
如果有输出则表示已经安装好了,没输出可以用 yum -y install samba 安装。
samba安装完后悔在,会生成配置文件目录/etc/samba。
2、核心配置文件smb.conf
添加共享目录,内容如下:
[root@data ~]# cd /etc/samba/
[root@data samba]# cp smb.conf smb.conf.bak20121130 //对配置文件进行备份
[root@data samba]# vim smb.conf
[global] //表示以下的内容为全局配置,必须要有
workgroup = WORKGROUP //用来定义工作组,
netbios name = chlinux.net //用来定义windows中显示出来的计算机名
server string = my linux samba server //定义samba服务器的说明信息
log file = /var/log/samba/%m.log //定义samba的日志文件,%m表示客户端主机名,samba服务器会在指定的目录中为每个登录主句建立不同的日志文件
security = share //定义数据共享的方式,常用的有user和share,user表示需要密码验证后才能共享数据,share表示可以直接共享数据,
[sharing] //定义在windows中显示出来的共享目录
path = //data //共享数据的路径
writeable = yes //指定设置是否可写,yes为可写,no为不可写
browseable = yes //定义是否可以再windows下看到共享文件夹,如果要隐藏共享文件夹设置为no就是
guest ok = yes //定义匿名用户是否可写
3、建立共享目录:[root@data samba]# mkdir /data //创建共享目录
[root@data samba]# chown nobody:nobody /data/ //由于要设计匿名用户可以上传和下载,需要给/data木授权为nobody
[root@data samba]# cp /etc/passwd /data/ //拷贝测试文件到共享目录
4、samba服务的组成和使用:
组 成samba运行的有两个服务,一个是SMB,另一个是NMB,SMB是samba的核心,只有启动SMB服务才能实现文件的共享,而NMB服务的负责解 析用的,类似于DNS实现的功能,NMB可以把linux系统共享的工作组名称与其IP对应起来。如果NMB没有启动,就只能通过IP访问共享文件。可以 通过/etc/init.d/smb start/stop/restart 来启动、关闭、重启,方法如下:
[root@data samba]# /etc/init.d/smb start
启动 SMB 服务: [确定]
[root@data samba]# /etc/init.d/nmb start
启动 NMB 服务: [确定]
[root@data samba]#
5、访问samba服务器的共享文件,在运行输入\\192.168.1.53 ,看到下面的界面表示成功了。6、授权登录samba服务器:
1,添加系统级用户
首先添加share1、share2两个系统用户,并分别指定工作目录为/share1 和share2,操作如下:
[root@data samba]# useradd -d /share1 -s /sbin/nologin share1 //创建用户,指定home目录和shell
[root@data samba]# useradd -d /share2 -s /sbin/nologin share2
[root@data samba]# cp /root/install.log* /share1/
[root@data samba]# cd /share1
[root@data share1]# ll
总用量 56
-rw-r--r--. 1 root root 41933 12月 1 07:35 install.log
-rw-r--r--. 1 root root 8206 12月 1 07:35 install.log.syslog
3、配置smb.conf文件[global]
workgroup = WORKGROUP
netbios name = chlinux.net
server string = my linux samba server
log file = /var/log/samba/%m.log
max log size = 50
security = user
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
socket options = 192.168.1.254/24 192.168.2.254/24
os level = 33
[share1]
path = /data
comment = This is share1
valid users = share1
writeable = yes
browseable = yes
[share2]
path = /data
comment = This is share2
valid users = share2
writeable = yes
browseable = yes
create mask = 664
directory mask = 755
writeable = yes
browseable = yes
max log size //定义日志文件的大小,设置为0代表不限制,默认单位是KB上面这段配置与上面那个例子基本相同,只是增加了一些权限控制的东西,新增各个选项的含义如下:
encrypt passwords //设定用户密码是否加密,yes表示加密,no表示不加密
smb passwd file //指定samba用户的密码文件
os level //定义samba server的OS level,OS level的值从0-255 ,windows NT的值为33 ,windows 95/98的值为1,samba server的os level值至少要大于33
comment //共享目录的说明
valid users //定义客户端访问的用户
create mask //定义客户端用户创建文件的默认权限为644,表示可读可写
directory mask //定义客户端用户创建目录的默认权限为755,表示可读可写可执行
4、测试samba服务器
完成所有配置后,重启smb服务。然后在windows客户端进行授权登录,在IE浏览器中输入 \\192.168.1.53,然后回车,即可进入下面所示的界面。
在这里输入要登入samba用户,我们这里登录的是share1,输入密码登录后可以看到如下图所示:
到此为止,samba已经安装完毕