由于计算机很少作为一个独立的系统工作,作为一个系统管理员或工程师,就应该知道如何在有多种类型的服务器之间搭设和维护网络。
在本篇以及该系列后面的文章中,我们会介绍用 Windows/Linux 配置 Samba 和 NFS 服务器以及 Linux 客户端。
RHCE 系列第六部分 - 设置 Samba 文件共享
如果有人让你设置文件服务器用于协作或者配置很可能有多种不同类型操作系统和设备的企业环境,这篇文章就能派上用场。
由于你可以在网上找到很多关于 Samba 和 NFS 背景和技术方面的介绍,在这篇文章以及后续文章中我们就省略了这些部分直接进入到我们的主题。
步骤一: 安装 Samba 服务器我们当前的测试环境包括两台 RHEL 7 和一台 Windows 8:
1.Samba/ NFS 服务器[box1 (RHEL 7):192.168.0.18],
2.Samba客户端#1[box2 (RHEL 7):192.168.0.20]
3.Samba客户端#2[Windows8 machine:192.168.0.106]
测试安装 Samba
在 box1 中安装以下软件包:
#yum update &&yum install samba samba-client samba-common
在 box2:
#yum update &&yum install samba samba-client samba-common cifs-utils
安装完成后,就可以配置我们的共享了。
步骤二: 设置通过 Samba 进行文件共享Samba 这么重要的原因之一是它为 SMB/CIFS 客户端(LCTT 译注:SMB 是微软和英特尔制定的一种通信协议,CIFS 是其中一个版本,更详细的介绍可以参考 Wiki)提供了文件和打印设备,这使得服务器在客户端看起来就是一个 Windows 系统(我必须承认写这篇文章的时候我有一点激动,因为这是我多年前作为一个新手 Linux 系统管理员的第一次设置)。
添加系统用户并设置权限和属性
为了允许组协作,我们会在 box1 中用 useradd 命令创建一个有两个用户(user1 和 user2)的组 finance 和目录 /finance。
我们同时会把这个目录的组所有者更改为 finance 并把权限设置为 0777(所有者和组属主可读可写可执行):
#groupadd finance
#useradd user1
#useradd user2
#usermod-a -G finance user1
#usermod-a -G finance user2
#mkdir/finance
#chmod0770/finance
#chgrp finance /finance
步骤三: 配置 SELinux 和 Firewalld在配置 /finance 作为 Samba 共享目录之前,我们需要像下面那样停用 SELinux 或设置恰当的布尔值和安全选项(否则,SELinux 会阻止客户端访问共享目录):
# setsebool -P samba_export_all_ro=1 samba_export_all_rw=1
# getsebool –a |grep samba_export
# semanage fcontext –at samba_share_t"/finance(/.*)?"
# restorecon /finance
另外我们必须确保 firewalld 允许 Samba 流量通过。