《[精选]03_Linux网络服务-Samba文件共享服务-v10》由会员分享,可在线阅读,更多相关《[精选]03_Linux网络服务-Samba文件共享服务-v10(33页珍藏版)》请在金锄头文库上搜索。
1、RHEL6_Linux网络服务,轻舞飞扬,第二章 Samba文件共享服务,理论部分,如何查看Linux主机的网卡配置信息? 有哪些方式可以修改网卡的IP地址? 如何为Linux主机设置默认网关地址? 配置DHCP服务器时,如何设置保留地址,课程回顾,学会构建文件共享服务器 学会访问共享文件夹,技能展示,本章结构,Samba文件共享服务,可匿名访问的共享,需用户验证的共享,Samba软件的组成,主配置文件smb.conf,使用smbclient访问共享,使用mount挂载共享,Samba服务基础,构建文件共享服务器,访问共享文件夹,用户映射及访问地址限制,Samba服务基础3-1,Samba软件
2、包构成 samba-3.0.33-3.28.el5 samba-common-3.0.33-3.28.el5 samba-client-3.0.33-3.28.el5 samba-swat-3.0.33-3.28.el5.i386.rpm,Samba服务基础3-2,Samba服务器的主要程序 smbd:提供对服务器中文件、打印资源的共享访问 nmbd:提供基于NetBIOS主机名称的解析 Samba的服务脚本 /etc/init.d/smb Samba的配置目录及文件 /etc/samba/ /etc/samba/smb.conf 配置文件检查工具:testparm,Samba服务基础3-3,
3、smb.conf文件的配置内容 global:全局设置 homes:用户目录共享设置 printers:打印机共享设置 myshare:自定义名称的共享目录设置 辅助配置内容 注释行:以 # 号开头的行 配置样例行:以 ; 号开头的行 结合grep命令可以提取有效配置行 grep -v # smb.conf | grep -v ; | grep -v ,主配置文件smb.conf3-1,global workgroup = MYGROUP server string = Samba Server Version %v security = user passdb backend = tdbsa
4、m load printers = yes cups options = raw homes comment = Home Directories browseable = no writable = yes printers comment = All Printers path = /var/spool/samba browseable = no guest ok = no writable = no printable = yes,常见全局配置项的含义 workgroup:所在工作组名称 server string:服务器描述信息 security:安全级别,可用值如下: share、u
5、ser、server、domain log file:日志文件位置,“%m”变量表示客户机地址 max log size:日志文件的最大容量,单位为KB passdb backend:设置共享账户文件的类型 max connections = 0 同时允许访问的客户端数量,主配置文件smb.conf,passdb backend即用户后台,有三种后台:smbpasswd、tdbsam和ldapsam。 1. smbpasswd:该方式是使用smb工具smbpasswd给系统用户(真实用户或者虚拟用户)设置一个Samba 密码,客户端就用此密码访问Samba资源。smbpasswd在/etc/s
6、amba中,有时需要手工创建该文件。 2. tdbsam:使用数据库文件创建用户数据库。数据库文件叫passdb.tdb,在/etc/samba中。passdb.tdb用户数据库可使用smbpasswd a创建Samba用户,要创建的Samba用户必须先是系统用户。也可使用pdbedit创建Samba账户。pdbedit参数很多,列出几个主要的: pdbedit a username:新建Samba账户。 pdbedit x username:删除Samba账户。 pdbedit L:列出Samba用户列表,读取passdb.tdb数据库文件。 pdbedit Lv:列出Samba用户列表详细
7、信息。 pdbedit c “D” u username:暂停该Samba用户账号。 pdbedit c “” u username:恢复该Samba用户账号。 3. ldapsam:基于LDAP账户管理方式验证用户。首先要建立LDAP服务,设置“passdb backend = ldapsam:ldap:/LDAP Server,常见共享目录配置项的含义 comment:对共享目录的注释、说明信息 path:共享目录在服务器中对应的实际路径 browseable:该共享目录在“网上邻居”中是否可见 guest ok:是否允许所有人访问,等效于“public” writable:是否可写,与r
8、ead only的作用相反,主配置文件smb.conf3-3,Samba服务设置的读取、写入权限,优先级要低于文件系统中设置的权限,请思考: Samba服务包括哪2个主程序,各自的作用是什么? Samba服务使用到了哪些协议、端口? Samba服务的安全级别包括哪些,默认级别是什么,小结,1.修改smb.conf配置文件 security = share public = yes 2.检查配置的正确性 testparm命令工具 3.启动smb服务 service smb start,可匿名访问的共享,rootlocalhost # mount /dev/cdrom /media/cdrom/
9、mount: block device /dev/cdrom is write-protected, mounting read-only rootlocalhost # vi /etc/samba/smb.conf global workgroup = WORKGROUP security = share rhel5 comment = RHEL 5.5 DVD directory. path = /media/cdrom public = yes read only = yes rootlocalhost # service smb start 启动 SMB 服务: 确定 启动 NMB 服
10、务: 确定,使用默认工作组,允许匿名访问,建立可匿名访问的文件共享,rootfilesvr # service smb start 启动 SMB 服务: 确定 启动 NMB 服务: 确定 rootfilesvr # netstat -anptu | grep mbd tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 8866/smbd tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 8866/smbd udp 0 0 192.168.168.1:137 0.0.0.0:* 8870/nmbd udp 0 0 0.0.0.0:137 0.0.0.
11、0:* 8870/nmbd udp 0 0 192.168.168.1:138 0.0.0.0:* 8870/nmbd udp 0 0 0.0.0.0:138 0.0.0.0:* 8870/nmbd,SMB协议,CIFS协议,NetBIOS名称解析,NetBIOS数据报,1.建立Samba用户数据库文件 默认数据库文件位于:/etc/samba/passdb.tdb,需用户验证的共享3-1,rootlocalhost # useradd vina rootlocalhost # pdbedit -a -u vina new password: retype new password: Unix
12、 username: vina NT username: Account Flags: U User SID: S-1-5-21-1335442607-132733983-2423133945-1000 Primary Group SID: S-1-5-21-1335442607-132733983-2423133945-513,添加系统用户vina,添加共享用户vina,rootlocalhost # pdbedit -L vina:501: rootlocalhost # pdbedit -vL vina Unix username: vina NT username: Account F
13、lags: U User SID: S-1-5-21-1335442607-132733983-2423133945-1000 Primary Group SID: S-1-5-21-1335442607-132733983-2423133945-513,列出所有Samba用户,显示vina用户的详细信息,2.设置用户访问授权 新建测试目录 修改smb.conf配置文件,添加名为tools的共享目录 重新加载smb.conf文件,或重启smb服务,需用户验证的共享3-2,rootlocalhost # mkdir /opt/mytools,rootlocalhost # vi /etc/sam
14、ba/smb.conf global security = user tools comment = You can get software tools from here. path = /opt/mytools public = no read only = no valid users = vanko, hunter write list = hunter,rootlocalhost # service smb reload 重新载入 smb.conf 文件: 确定,3.确定用户访问权限 设置目录权限, 设置上传文件和目录的默认权限,需用户验证的共享3-3,rootlocalhost
15、# chmod 777 /opt/mytools,rootlocalhost # vi /etc/samba/smb.conf tools directory mask = 0755 create mask = 0644 rootlocalhost # service smb reload 重新载入 smb.conf 文件: 确定,1.共享账号映射(别名) 2.启用映射账号,用户映射及访问地址限制2-1,rootlocalhost # cat /etc/samba/smbusers # Unix_name = SMB_name1 SMB_name2 . root = administrator
16、 admin nobody = guest pcguest smbguest,rootlocalhost # vi /etc/samba/smb.conf global username map = /etc/samba/smbusers rootlocalhost # service smb reload 重新载入 smb.conf 文件: 确定,访问地址限制 一般用在全局配置global部分 hosts allow配置项:仅允许特定的客户机 hosts deny配置项:仅拒绝特定的客户机 客户机地址表示形式: 以空格分隔多个地址 主机名或IP地址,例如: 192.168.168.11 或者 prtsvr 网络地址,例如:173.17. 或者 173.17.0.0/255.255.0.0,用户映射及访问地址限制2-2,rootlocalhost # vi /etc/samba/smb.conf global hosts allow = 192.168.4. 173.17. rootlocalhost # service smb reload 重新载入 smb.conf 文件: 确定