标签:samba
搭建samba服务器实现共享
samba介绍:
SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
一、准备环境(RHEL 5.9)
svr1,eth0(VMnet1仅主机):
静态IP 192.168.4.5/24
不要设默认网关、不要设DNS地址
pc205,eth0(VMnet1仅主机)
静态IP 192.168.4.205/24
不要设默认网关、不要设DNS地址
前提条件:配置Yum库
// 选虚拟机svr1做samba服务器,安装samba软件包。建议服务器将samba软件包和samba-client都安装
[root@svr1 ~]# yum -y install samba //服务端软件包
[root@svr1 ~]# yum -y install samba-client //客户端软件包
[root@svr1 ~]# cd /etc/samba/
[root@svr1 samba]# cp smb.conf smb.conf.bak //配置文件做一个备份
//搭建一个匿名共享,共享目录为/usr/src
[root@svr1 ~]# vim /etc/samba/smb.conf
[root@svr1 ~]# cat /etc/samba/smb.conf | grep -ivE "^#|$^|^;"
[global]
workgroup = TARENA //工作组名
server string = Samba Server Version %v
security = share //允许匿名访问共享
passdb backend = tdbsam
load printers = yes
cups options = raw
#obtain list of printers automatically on SystemV
[tools] //共享名
comment = test share direstory //共享目录的描述
path = /usr/src //指定共享路径
public = yes //所有人都可访问
read only = yes //默认的权限为只读
browseable = no //启用此行则为隐藏共享
[root@svr1 ~]# service smb restart
在客户机测试匿名共享
1, 在window中测试:
2, 在linux测试:需要安装一个samba-client客户端软件包。直接访问共享
[root@pc205 ~]# yum -y install samba-client
//在服务器上查看共享
//访问共享目录
[root@pc205 ~]# smbclient //192.168.4.5/tools
3, 挂载后访问共享
[root@pc205 ~]# mkdir /mnt/smbdir1
[root@pc205 ~]# mount //192.168.4.5/tools /mnt/smbdir1/
Password: //匿名访问无需输入密码直接回车
用户认证的共享设置
//在工作中匿名共享用的很少所以设置一个需要用户认证的共享
服务端准备工作
[root@svr1 ~]# useradd nick //添加测试用户
[root@svr1 ~]# useradd hunter
[root@svr1 ~]# pdbedit -a nick //设置密码(只是访问共享的密码与登录无关)
[root@svr1 ~]# pdbedit -a hunter
[root@svr1 ~]# smbpasswd nick //重设密码
//修改tools共享设置
[root@svr5 ~]# vim /etc/samba/smb.conf
[global]
security = user //启用用户认证
[tools]
path = /usr/src //指定共享路径
public = no //不对所有人开放
read only = yes //默认的权限为只读
valid users = nick, hunter //指定合法用户
write list = hunter //用户hunter可读可写
[root@svr1 ~]# service smb restart
//将用户添加为可读可写,还不能真正对共享的目录更改,还得更改共享目录本身的权限
[root@svr1 ~]# setfacl -m user:hunter:rwx /usr/src/ //添加了一条acl策略
Linux客户端测试
[root@pc205 ~]# smbclient -U hunter //192.168.4.5/tools //用户hunter登录
Password:
Domain=[SVR1] OS=[Unix] Server=[Samba 3.0.33-3.39.el5_8]
smb: \> put pwd.txt //由客户端上传pwd.txt到共享中
putting file pwd.txt as \pwd.txt (89.2 kb/s) (average 89.2 kb/s)
服务端查看:
[root@svr1 ~]# ls /usr/src/
debug kernels pwd.txt vmware-tools-distrib
//由此证明只有服务器中设置的hunter用户可以对共享目录有读写的权限,nick只有只读的权限
共享账号别名
服务端
//出于安全的考虑将共享的账号取个别名
[root@svr1 ~]# vim /etc/samba/smbusers //设置别名
[root@svr1 ~]# tail -1 /etc/samba/smbusers
nick = hijack
[root@svr1 ~]# vim /etc/samba/smb.conf //启用别名映射
username map = /etc/samba/smbusers //在全局配置中输入
[root@svr1 ~]# service smb restart
客户端测试
[root@pc205 ~]# smbclient -U hijack //192.168.4.5/tools
Password:
Domain=[SVR1] OS=[Unix] Server=[Samba 3.0.33-3.39.el5_8]
smb: \>
标签:samba
原文地址:http://9051442.blog.51cto.com/9041442/1440365