linux-Samba服务器配置_第1页
linux-Samba服务器配置_第2页
linux-Samba服务器配置_第3页
linux-Samba服务器配置_第4页
linux-Samba服务器配置_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

今天我们要架设的 samba 服务器 功能主要就是类 unix 机器与 windows 机器的文件共享 也 可以是共享打印机 samba 软件整合了 SMB 协议及 Netbios 协议 使其运行在 TCP IP 上 SMB 协议协议 Server Message Block 服务信息块 可看作是局域网上的共享文夹打印机的一 种协议 SAMBA 服务有两个进程服务有两个进程 smbd SMB 服务器 nmbd netbios 名称服务器 玩过 windows 的应该都知道 netbios 吧 这个我就不多说了 但是一般 linux 上面的这个功能 都没用 因为 netbios 不稳定 还不如直接用 DNS 下面介绍下下面介绍下 SAMBA 服务器的特点服务器的特点 1 在网络上共享目录 就好像一台文件服务器一样 2 在网络上共享打印机 3 决定共享目录的访问权限 可以让一个人 某些人 组和所有人访问 4 决定打印机的访问权限 可以让一个人 某些人 组和所有人使用 可以看出 安装和配置好了 Samba 服务器后 Linux 就可以使用 Windows 网络中的文件和 打印服务器了 smb 用的脚本文件 etc rc d init d smb 所以我们启动 samba 服务器的时候使用 service smb restart nmbd 使用的端口是 137 和 138 smbd 使用的端口是 139 和 445 所以一般禁止 samba 服务我们控制 139 和 445 端口 139 端口也是属于 netbios 但是最好禁止的时候把 139 端口也禁用了 所需的 RPM 包 samba 图形化软件 samba swat samba 是可以通过图形界面配置的 我们今天只讲修改配置文件配置 但是提示大家注意一点 如果使用图形界面配置 从新启动服务器后 配置文件内被注释的行就会被删除 图形界面配 置的软件是这样设计的 配置文件是配置文件是 etc samba smb conf samba 服务的主配置文件 etc samba smb conf 主要由两部分组成 Global Settings 全局参数设置全局参数设置 该设置都是与 Samba 服务整体运行环境有关的选项 它的设置项目是针对所有共享资源的 Share Definitions 共享目录共享目录 该设置针对的是共享目录个别的设置 只对当前的共享资源起作用 samba 服务器与用户的家目录相关 所以设计到服务器与用户的家目录相关 所以设计到 selinux 这个大家要注意 这个大家要注意 下面大家先安装 samba 服务器 大家打开配置文件吧 vim etc samba smb conf 配置文件有 288 行 我把重要的给大家说说 设置 Samba 服务器所属的群组名称或 Windows 的域名 workgroup MYGROUP server string 是服务器的描述 设置可访问 Samba 服务器的主机 子网或域 hosts allow 默认是注释了的 意思是允许所有访问 请大家仔细看这个选项 他的表达方式比较特殊 只需要 写出网络位然后以点结束 主机位省略 127 0 0 0 只写 127 192 168 12 0 写成 192 168 12 切记 还有全局的还有全局的 hosts allow 可以在局部使用可以在局部使用 但是但是 hosts deny 参数只能在全局使用参数只能在全局使用 设置是否允许打印配置文件中的所有打印机开机时自动加载 load printers yes 设置 Samba 服务启动时 将自动加载的打印机配置文件 printcap name etc printcap 设置 guest 账号名 guest account pcguest 指定 Samba 服务器使用的安全等级 security user 我们今天只介绍 share 级别和 user 级别 其他的三个安全级别有兴趣的可以自己去研究下 share 就是不用密码访问 user 级别就是使用用户密码验证 使用加密口令 encrypt password yes no 设置 Linux 用户到 Windows 的用户映射 username map etc samba smbusers 全局常用的设置基本就这些 应该可以满足你企业的通常使用 可以把一个 linux 的 sambaID 映射成一个虚拟机的用户名 在 windows 登陆 samba 服务器 使用虚拟机的用户名 这样就提高了服务器的安全性 这个参数默认是没有的 需要自己添加 但是 smbusers 文件是存在的 下面介绍下共享目录的一些设置 其实这个文件和 windows 的 ini 配置文件写法很象 每一个共享目录都由 目录名目录名 开始 这个目录名字是 client 看到的名字 comment 是共享目录的描述 path 就是真正的共享目录位置了 public 是否可以匿名访问 writable 可以访问的用户是否有写入权限 要与文件权限配合使用 write list 允许写入权限的用户列表 如果 printables yes 那么这个目录就被认为是一个打印机 所以一般我们设置成 printab les no 这样能理解吗 还有一些常用的 但是配置文件没有写入的语句我给大家说说 valid users 允许访问的用户列表 前提是 public 设置成 no 刚才的 write list 要生效的话 writeable 也设置成 no 注意注意 valid users users 有个有个 s 不要忘记了 少一个字符这句就没有意义了不要忘记了 少一个字符这句就没有意义了 invalid users 不允许访问的用户 就算你上面允许他了 但是加入这句 这个用户也会被拒绝 一般用在允 许所有 而禁止某几个用户的时候使用 create mode 640 很有用的参数 用户创建的文件默认权限 directory mode 750 用户常见的目录的默认权限 但是这两个参数只在但是这两个参数只在 client 使用的是图形界面有效果 如果使用的是图形界面有效果 如果 client 使用的命令登陆 那么这使用的命令登陆 那么这 两句就没有效果了 所以测试的时候注意了 用两句就没有效果了 所以测试的时候注意了 用 mount 挂载的测试不出效果挂载的测试不出效果 最后就是 samba 的 ID 设置 创建 samba 用户 主要两步 1 useradd redhat 2 smbpasswd a redhat 1 是在系统建立一个 redhat 用户 一般我们不设置密码 把 shell 改成 sbin nologin 2 是把刚才创建的用户变成 samba 用户 a 是新建的意思 如果修改密码就不用加 a 记住只有安全级别是 user 这里的用户才会生效 下面具体配置下面具体配置 samba 服务器服务器 我们第一个要是实现的功能是共享 public 目录让所有人访问 所有人可以写入文件 但是不可 以删除或修改其他用户的文件 要求看懂了吗 这就是一个公司的交换文件服务器 1 新建 新建 public 目录目录 让所有用户有写入权限 2 让用户不能删除其他用户的文件 所以我们要使用一个冒险位 让用户不能删除其他用户的文件 所以我们要使用一个冒险位 3 设置 设置 selinux 复制 29 行 然后运行 setsebool P samba enable home dirs on 然后复制 39 行后面部分 把 path 修改成我们要改变目录 用来修改上下文 chcon t samba share t public 4 修改配置文件 修改配置文件 修改安全级别为 share 修改共享目录描述 OK 后 重新启动服务器 selinux 要开启哈 使用 setenforce 命令设置 也可以使用 setup 命令 5 测试 测试 smbclient L 192 168 0 188 密码直接回车 这样就能看到我们服务器的相关信息 smbclient 命令还可以这样用 smbclient 192 168 0 188 public 这样链接上去就像一个 ftp 服务器 输入问号 可以查看能使用的命令 和 FTP 的操作差不多 下面我们来挂载 mkdir mnt smb mount t cifs 192 168 0 188 public mnt smb 记住记住 t cifs 这是这是 samba 的文件系统格式的文件系统格式 这样挂载要跟具体的目录哈 表达方式和 windows 下很相似 不带参数也可以哈 t auto 也 可以 这个是自动识别的 但是新手 建议多多了解 net use r 192 168 0 188 Michael 分割线 还有不清楚的可以参考 RHEL5 企业级企业级 Linux 服务攻略服务攻略 第第 2 季季 Samba 服务全攻略服务全攻略 下 次 RHCE 课程讲解 user 级别哈 上季我们介绍了 samba 服务器的安装 常用配置文件 还有匿名登陆的 samba 服务器 今天我们主要学习基于用户名的访问控制 其实 samba 的访问控制参数都不是很多 只要是你灵活运用 把 samba 自带的访问控制 防 火墙 文件权限等等结合使用 就能搭建功能强大的 samba 服务器 上季已经说了 share 级别的安全 今天我们就讲 user 级别了 把我们下面的任务规划一下 1 一个公司要求一个公共的交换文件服务器 都可以访问并写入 但是不可以删除和修改其他一个公司要求一个公共的交换文件服务器 都可以访问并写入 但是不可以删除和修改其他 用户的文件用户的文件 2 技术部需要一个文件服务器 用于存放常用的软件工具 所有人都可以访问 但是只有技 技术部需要一个文件服务器 用于存放常用的软件工具 所有人都可以访问 但是只有技 术部的人可以写入术部的人可以写入 主要就是上面两个功能来开展 我们来分析下 一个 samba 服务器 要实现上面两个功能 用我们以前学过的知识 你们觉得可以有哪些方案 用 samba 服务器实现上面的功能 有两种规划方案 使用域和 user 级别都可以 但是测试域比较麻烦 还要活动目录 所以我们就使用 user 级别 有人可能会问为什么不可以使用 share 级别 如果全局使用 share 局部需要用户登陆的话 登陆框是灰色的 不能输入用户名 这个是不是 samba 服务器设置的一个 bug 我也说不清楚 反 正我们就尽量不这样设计吧 如果使用 user 模式 应该需要两个目录 一个是交换目录 一个是技术部的目录 交换目录都可 以写入 所以权限要 777 但是都可以写入的话 就可以删除别人的文件 所以我们要加个冒险 位 限制只有 root 和文件所有者才能删除 第一个题目完成了 第二个题目就更简单了 所有人可以访问 但是只有技术部的可以写 我们只需要在局部设置 w rite list jishubu 就可以了 如果想要更安全的话 还可以设置目录权限是 775 让目录 属于技术部组 下面我们开始测试吧 建立两个目录 一个是 exchange 一个是 jishubu 都建立在 下吧 然后改 变他们的权限 然后添加用户 test1 和添加 jishubu 组 把 test1 加入到技术部组 最后把 jishubu 的所属 组改成技术部 我们还要建立一个公共的用户 提供所有用户登陆 samba 服务器使用 useradd smbtest 到这里 我们的工作就算完成了 下面我们就开始配置我们的服务器 请大家打开 samba 服务器的主配置文件 vim etc samba smb conf 第一步打开 selinux 如果你没有打开的话 复制 29 行的语句 然后在终端里面执行 我们架设服务器的环境是 selinux 强制 system config selinux 修改 bool 值的 RHEL4 的 selinux 只保护了 40 多个进程 RHEL5 的 selinux 保护达到了 200 个进程吧 具 体数值记不得了 selinux 都是安装了的 setenforce 1 然后 getenforce 查看 如果是 enforcing 处于强制状态就算打开了 selinux 有三种状态 ENFORCING 就是处于保护状态 就是处于保护状态 selinux 会禁止危险的动作并记录日志会禁止危险的动作并记录日志 permissive 是只记录日志是只记录日志 disabled 关闭关闭 用 setup 设置吧 好了 我们继续 然后设置目录的上下文 复制 39 行的内容 修改要共享目录的上下文 只复制冒号后面的部分 chcon t samba share t exchange chcon t samba share t jishubu 改变上下文都使用使用的改变上下文都使用使用的 chcon t 设置设置 selinux 都是都是 setsebool P selinux 的相关知识的相关知识 大家看看吧 RHCE 考试 要求一般 selinux 是处于强制状态的 workgroup 设置工作组 server string 服务器描述 username map 用户名映射 默认没有 等会我们会讲 interfaces 如果服务器有多块网卡 可以设置你想开放的网卡 一般不管 默认都开放 hosts allow 设置可以访问服务器的网段 注释表示不限制 使用 user 安全模式 security user 其他的全局配置都不管了 直接跳到最后 开始定义共享目录 exchange 的定义 exchange 共享目录名字 comment 目录描述 path 共享目录的路径 public 所有用户可以访问 writeable 所有用户可以写入 printable 不是打印机 write list 在这个位置是没有意义的 public 和和 valid users 不能同时使用 这样不能同时使用 这样 public 没效果没效果 如果如果 writables 和和 write list 同时使用 应该是以同时使用 应该是以 writable 起作用 但是最好 避免歧起作用 但是最好 避免歧 义 我们删除义 我们删除 write list 字段哈字段哈 这样第一个目录就 OK 了 下面写第二个目录的定义 在 samba 服务器里表示一个组可以使用 组名 也可以使用 组名 一个简单 samba 服务器配置就算完成了 保存退出配置文件 下面我们建立 samba 用户 建立 samba 用户的前提是 etc passwd 文件里要有这个用户名 我们才可以建立成 samb a 用户 我们刚才建立了 smbtest 和 test1 两个用户 现在我们把他们建立成 samba 用户 建立用户的时候要使用 a 参数 如果改 samba 用户的密码 就不用加 a 参数了 下面我们重新启动服务器 开始测试 开始测试 我们先使用 smbtest 用户 三个目录都可以看见 smbtest 是用户的家目录 这个是自己私有的空间 大家测试下可以进入 jishubu 和 exchange 然后分别往这两个目录写入文件 测试成功 下面换 test1 用户 看能不能在技术部写入文件 删除刚才的用户登陆缓存 然后使用 test1 登陆 jishubu 目录可以写入 然后我们去删除 smbtest 用户的文件试试 测试成功 用户写入的文件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论