1. 了解文件共享服务
FTP,仅能做到传输文件,却不能直接修改对方主机的数据。
NFS(NetworkFile System):能够将多台Linux的远程主机数据挂载到本地目录的服务,属于轻量级的文件共享服务,
不支持Linux与Windows间的文件共享。
Samba是基于smb(Server Message Block)协议的一种实现方式。Samba 最先在Linux和Windows 两个平台之间架起了一座桥梁,正是由于Samba 的出现,我们可以在Linux系统和Windows 系统之间互相通信,SMB(Server Message Block)是协议名,它能被用于Wap连接和客户端与服务器之间的信息沟通。
2. Samba服务
2.1 安装服务程序
yum install samba
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
cat /etc/smb.conf.bak | grep -v "#" | grep -v ";" | grep -v "^$" > /etc/samba/smb.conf
2.2 配置文件详解
[global]
workgroup = MYGROUP //工作组名称
server string = Samba Server Version %v //服务器介绍信息
log file = /var/log/samba/log.%m //定义日志存放路劲
max log size = 50 //定义日志大小,最大50K
security = user //安全的验证方式(共有4种)
passdb backend = tdbsam //定义用户后台类型
load printers = yes //设置Samba服务启动时共享打印机
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
------------------------------------------------------------------------------------
[database]
comment = Do not arbitrarity modify the database file //警告用户不要随意修改数据
path = /mnt/database //定义数据的实际路劲
public = no
writeable=yes
---------------------------------------------------------------------------------
2.3 验证方式及后台类型说明
验证方式:security = **
user: 需由SMB服务验证来访主机提供的口令才可以建立访问,安全。
share:来访主机无需验证口令,方便、安全性差。
server:使用独立的远程主机验证来访主机提供的口令(集中管理)
domain:使用PDC来完成验证。
定义用户后台类型:passdb backend = tdbsam
smbpassword:使用Smb服务的smbpasswd命令给用户设置smb密码。
tdbsamb:创建数据库文件,并使用pdbdit建立smb独立的用户。
ldapsam:基于LDAP服务进行账户验证
3. 安全共享文件
3.1 检查当前是否为user 验证模式
cat /etc/samba/smb.conf
sercurity = user
passdb backend = tdbsmb
3.2 建立共享文件夹
mkdir /mnt/database
3.3 描述共享文件信息 vim /etc/samba/smb.conf
[database] :配置如上
systemctl restart smb
3.4 清空防火墙规则
iptables -F
serviced iptables save
3.5 创建smb服务独立的账号
pdbedit -a -u hadoop
-a:指定建立用户名; -x:删除用户名; -L 用户列表; -Lv:列出详细信息 3.6 关闭selinux :setenforce = 0
4. 使用linux客户主机共享
client:#yum install -y cifs-utils
mkdir /database
vim auth.smb //在root家目录创建认证文件
username=hadoop
password=hadoop
domain=MYGROUP
chmod -Rf 600 auth.smb //设置特定权限,安全
vim /etc/fstab
//192.168.200.102/mnt/database cifs credentials=/root/auth.smb 0 0
mount -a
**********************************************