实验拓扑:
Linux Client
-----RHEL5.9(vmnet1)----------(vmnet1)
Win7 Client
实验一:Samba匿名共享
工作组为Tarena
将目录 /usr/src 共享给所有人
共享名设为 tools
允许所有人访问、无需密码验证
访问权限为只读
1、安装软件包
[[email protected] ~]# rpm -q samba-client samba samba-common //查看安装包
package samba-client is not installed
package samba is not installed
package samba-common is not installed
[[email protected] ~]# cd /etc/yum.repos.d/ //进入yum.repos.d目录下
[[email protected] yum.repos.d]# cp rhel-debuginfo.repo rhel-server.repo //复制yum
库配置文件
[[email protected] yum.repos.d]# cat rhel-server.repo //配置yum库
[rhel-server]
name=Red Hat Enterprise Linux Server
baseurl=file:///misc/cd/Server
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
//放入rhel5.9 iso
[[email protected] yum.repos.d]# yum clean all //清空yum缓存
[[email protected] yum.repos.d]# yum -y install samba samba-client samba-common //
使用yum库安装samba
2、修改主配置文件
[[email protected] ~]# cd /etc/samba/
[[email protected] samba]# cp smb.conf smb.conf.bak //备份samba主配置文件
[[email protected] samba]# vim /etc/samba/smb.conf
...
74 workgroup = Tarena //设置工作组
75 server string = Win File Ser
...
89 log file = /var/log/samba/%m.log //设置日志文件
...
91 max log size = 50 //日志文件最大容量
...
101 security = share //设置安全级别
...
221 load printers = no //屏蔽共享时看到的打印图标
...
289 [tools]
290 comment = Tools Public //描述信息
291 path = /usr/src //共享实际路径
292 public = yes //是否所有人可用
293 read only = yes //权限为只读
3、启动服务
[[email protected] ~]# testparm //检查语法
[[email protected] ~]# service smb restart //重启smb服务
[[email protected] ~]# chkconfig smb on //设置开机自启动
[[email protected] ~]# netstat -anptu | grep mbd //查看监听端口
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 7008/smbd
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 7008/smbd
udp 0 0 192.168.1.10:137 0.0.0.0:* 7011/nmbd
udp 0 0 0.0.0.0:137 0.0.0.0:* 7011/nmbd
udp 0 0 192.168.1.10:138 0.0.0.0:* 7011/nmbd
udp 0 0 0.0.0.0:138 0.0.0.0:* 7011/nmbd
4、客户端测试:
Windown:
UNC路径 \\\\192.168.1.253
Linux客户端:
[[email protected] ~]# yum -y install samba-client //安装samba客户端
[[email protected] ~]# smbclient -L 192.168.1.253 //查看共享信息
[[email protected] ~]# smbclient //192.168.1.253/tools //访问共享文件夹
[[email protected] ~]# mkdir -p /data/smb
[[email protected] ~]# mount -t cifs //192.168.1.253/tools /data/smb///挂载samba
到本地
[[email protected] ~]# grep smb /etc/fstab //设置为开机自动挂载
//192.168.1.253/tools /data/smb cifs defaults 0 0
试验二 Samba用户验证
修改原有的 [tools] 匿名共享设置
不再允许所有人访问
只允许nick读取、tom写入
拒绝其他用户或匿名访问
上传目录的权限为755
上传文件的权限为644
1、新建相应账户与samba密码
[[email protected] ~]# useradd nick //新建用户
[[email protected] ~]# useradd tom
[[email protected] ~]# echo "redhat" | passwd --stdin nick //为用户设置密码
[[email protected] ~]# echo "redhat" | passwd --stdin tom
[[email protected] ~]# pdbedit -a nick //添加用户为共享帐号,并设置密码
[[email protected] ~]# pdbedit -a tom
2、修改主配置文件
[[email protected] ~]# vim /etc/samba/smb.conf //编辑主配置文件
...
101 security = user //设置安全级别
...
289 [tools]
290 comment = Tools Public
291 path = /usr/src
292 public = no //取消默认所有人可用
293 valid users = nick,tom //共享帐号
294 write list = tom //有写入权限用户列表
295 read only = yes //默认只读
296 directory mask = 0755 //上传目录权限
297 create mask = 0644 //上传文件权限
...
[[email protected] ~]# setfacl -m u:tom:rwx /usr/src/ //为用户添加acl权限
3、启动服务
[[email protected] ~]# service smb restart //重启服务
4、客户端测试
[[email protected] ~]# smbclient -U nick //192.168.1.253/tools //使用用户nick访
问共享
[[email protected] ~]# mount -o username=nick //192.168.1.:253/tools /data/smb
试验三 Samba账户别名与访问地址控制
把普通帐户nick设置别名为jim
设置只允许192.168.1.19地址访问
1、修改Samba用户别名文件
[[email protected] ~]# vim /etc/samba/smbusers //编辑别名文件
# Unix_name = SMB_name1 SMB_name2 ...
root = administrator admin
nobody = guest pcguest smbguest
nick = jim //为nick设置别名jim
2、修改主配置文件
[[email protected] ~]# vim /etc/samba/smb.conf //编辑主配置文件
...
76 username map = /etc/samba/smbusers //别名文件路径(注:在全局下golbal)
...
289 [tools]
290 comment = Tools Public
291 path = /usr/src
292 public = no
293 valid users = nick,tom
294 write list = tom
295 read only = yes
296 directory mask = 0755
297 create mask = 0644
298 hosts allow = 192.168.1.19 //设置允许访问的IP
3、客户端测试
4、主要配置文件及位置
/etc/samba/ /etc/samba/smb.conf
配置检查工具testparm
[global]全局设置 [homes]用户目录共享设置 [printers]打印机共享设置
[myshare]自定义的共享目录设置
常见的全局配置选项:
workgroup:工作组名称
server string :服务器描述
security : 默认使用的安全级别
log file :日志文件路径
max log size :日志最大容量(KB)
passwd backend:共享账户的文件类型
常见的共享目录配置项
comment :对此目录的说明文字
path : 共享目录
browseable :是否可见
public :是否所有人可用
writable : 是否可写
初学linux网络服务之samba服务实验,布布扣,bubuko.com