目录
samba
1. samba服务简介
作用:实现共享分离,即企业的存储分离机制:Linux cifs
smb = Server Message Block Sum公司,cifs = Common Internet File System Miscrosof公司
windows系统共享文件时用到的协议smb,smb是由miscrosoft公司和Sum公司研发推广
企业的存储分离机制:Linux cifs
2.samba基本信息
服务启动脚本 | smb.service |
主配置目录 | /etc/samba |
主配置文件: | /etc/smb.conf |
安全上下文: | samba_share_t |
端口: | 139 445 |
安装包: | samba samba-common |
3.samba的安装与启用
dnf install samba samba-common samba-client -y :samba的安装
systemctl enable --now smb :samba服务启动
firewall-cmd --permanent --add-service=samba :火墙设定
firewall-cmd --reload
测试:
smbclient -L //172.25.254.112 注:输入root密码时请直接回车
4.samba用户的建立
samba用户的建立
smbpasswd -a lee :添加用户lee
pdbedit -L :查看用户列表
pdbedit -x lee :删除用户lee
注:samba用户必须是被地存在的用户
5.samba用户访问家目录
当selinux开启时,
setsebool -P samba_enable_home_dirs on 开启
getsebool -a | grep samba 监测
在linux下:
smbclient //172.25.254.112/westos -U westos
6.samba服务共享目录
建立素材:
mkdir /tree
touch /tree/treefile{1..3}
安全上下文:
semanage fcontext -a -t samba_share_t '/tree(/.*)?'
restorecon -RvvF /tree/
编辑配置文件:
vim /etc/samba/smb.conf
[TREE] :共享名称
comment = tree :共享说明
path = /tree :共享路径
重启服务:
systemctl restart smb
测试:
smbclient //172.25.254.112/tree -U westos
7.samba的访问控制
编辑配置文件:
vim /etc/samba/smb.conf
hosts allow 172.25.254.112 :白名单 :当写到单独共享时之对此共享生效
hosts deny 172.25.254.112 :黑名单 :当写到【GLOBAL】时对samba整体生效
8.samba的常用配置参数
注:以下命令均在:/etc/samba/smbconf中编辑
writable = yes 可写
write list = westos 指定用户可写
write list = +westos | @westos 指定组可写
valid users = lee 指定访问用户
valid users = +lee|@lee 指定访问组
browseable = yes|no 是否隐藏共享
map to guest = bad user 写到全局设定中
guest ok = yes 允许匿名用户访问
admin users = westos 指定此共享的超级用户身份
可写
访问
隐藏共享
yes
no
匿名用户访问
admin
9.samba的多用户挂载
解决在客户端没有用过用户验证的人也可以访问samba服务(普通的挂载方式)
安装cifs-utils:
- dnf install cifs-utils -y
建立smbauth :
- mkdir /root/smbauth
编辑:vim /root/smbauth:将账号和密码写在一个文件内
- username=lee
- password=lee
修改权限:
- chmod 600 /root/smbauth :(其余人不能看,只有用户可看)
挂载并读取认证:
- mount -o credentials=/root/smbauth,sec=ntlmssp,multiuser //172.25.254.112/TREE /mnt
注:credentials=/root/smbauth :指定认证文件
sec=ntlmssp :指定认证类型
multiuser :支持多用户测试(主机client):
su westos :
ls: cannot access '/mnt': Permission denied :客户端主机的wetos用户没有通过认证
su root :
cifscreds add -u lee 172.25.254.112 :添加认证
ls /mnt/ :通过认证可以显示
若出现:Key search failed: Key has expired :报错信息
可使用:
- cifscreds add -u lee -d 172.25.254.112
- cifscreds clearall
NFS(Net File System)
1.nfs基本信息
nfs-utils | 安装包 |
nfs-server | 服务脚本 |
/etc/exports | 共享配置文件 |
2.nfs的启用
主机server:
安装dnf:
dnf install nfs-utils -y
开启服务:
systemctl enable --now nfs-server
火墙设置:
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-service=nfs
firewall-cmd --reload :加载生效
主机client:
showmount -e 172.25.254.112
3.nfs配置
- mkdir /westos_storage :建立共享目录
- chmod 777 /westos_storage
- 编辑共享配置文件:
vim /etc/exports :
共享目录 共享对象(共享参数)
/westos_storage *(ro)
- 生效配置文件:
exportfs -rv
- 测试(主机client):
mount 172.25.254.112://westos_storage /mnt/
4.nfs配置参数
- anonuid=1000,anongid=1000 :指定用户身份
- sync :更改生成后同步数据到服务器
- async :时时同步数据到服务器
- rw :读写
- ro :读
- no_root_squash :root用户挂载不转换身份
5.nfs+autofs
- autofs:在客户端实现自动挂载卸载的软件
安装autofs软件:
dnf install autofs -y
启动autofs服务:
temctl enable --now autofs.service
编辑主配置文件:
vim /etc/autofs.conf
timeout = 3:默认等待时长
编辑文自动策略件:
vim /etc/auto.master
/mnt ( 最终挂载点的上层目录) /etc/auto.nfs(自动以子策略文件)
编辑自动以子策略文件:
vim /etc/auto.nfs
/sunshine(最终挂载点) 172.25.254.112:/westos_storage挂载资源
重启服务:
systemctl restart autofs
测试:
cd /mnt/sunshine
df
注:主配置文件:
子配置文件:
6.autofs+samba
- 在客户端实现自动挂载卸载samba
安装autofs软件: dnf install autofs -y 启动autofs服务: temctl enable --now autofs.service 编辑主配置文件: vim /etc/autofs.conf timeout = 3:默认等待时长 编辑文自动策略件: vim /etc/auto.master /mnt ( 最终挂载点的上层目录) /etc/auto.nfs(自动以子策略文件) 编辑自动以子策略文件: vim /etc/auto.samba /sunshine(最终挂载点) fstype=cifs,username=lee,password=lee ://172.25.254.112:/westos_storage挂载资源 重启服务: systemctl restart autofs 测试: cd /mnt/sunshine df
注:主配置文件:
子配置文件:
iscsi
iscsi
主机server与client的安装:
主机server:
1.添加一块20G的硬盘,并划分设备分区 :
主要命令:fdisk -l ,fdisk /dev/vdb
2.下载共享软件,并开启服务:
- dnf install targetcli -y
- systemctl enable --now target.service
3.进入target设定,建立共享分区,建立共享,关联共享与设备,设定密码,:
具体命令见截图
4.火墙设定:
firewall-cmd --permanent --add-port=3260/tcp
firewall-cmd --reload
主机client:
1.软件安装:
- dnf install iscsi-initiator-utils.x86_64 -y
2.编辑key,并重启服务:
- vim /etc/iscsi/initiatorname.iscsi :
InitiatorName=iqn.2021-05.org.westos:westoskey1
- systemctl restart iscsid
3.查看共享设备:
- iscsiadm -m discory -t st -p 172.25.254.112
4.认证共享设备:
- iscsiadm -m node -T iqn.2021-05.org.westos:strage1 -p 172.25.254.112 -l
5.查看设备,建立分区并挂载:
- fdisk -l
- fdisk /dev/sda/
- mkfs.xfs /dev/sda1 :设备格式化
- mount /dev/sda1/mnt
- 永久挂载:vim /etc/fstab :/dev/sda1 /mnt xfs defaults,_netdev 0 0
主机server与client的卸载:
主机server:
主机client: