对于普通用户是不压榨身份的,例如,客户端在nfs共享目录创建一个文件,在nfs服务器是以和客户端用户的uid,gid相同的用户显示其所属人,所属组,如果nfs服务器没有该用户的话,就会显示uid和gid。
通过设置IP地址来控制访问
实验:实现NFS伪根
(1)配置nfs服务器
mkdir /data/123
mount -b /data/123 /app/nfsdir2 将/data/123挂载到/app/nfsdir2上
可以考虑将之写到/etc/fstab中,实现开机自动挂载
vim /etc/fstab
/data/123 /app/nfsdir3 none bind 0 0
vim /etc/exports
/app *(r0,fsid=0)
/app/nfsdir1 *(rw)
/app/nfsdir2 *(rw)(将来客户端将该共享目录挂载到本地目录上,实际上挂载的是/data/123目录)
exportfs -v 查看共享的目录
(2)配置nfs客户端
showmount -e 192.168.10.187
实现自动挂载
mkdir /app/nfsdir1
mkdir /app/nfsdir2
vim /etc/auto.master (使用直接匹配)
vim /etc/auto.txt
然后重启autofs服务
cd /app/nfsdir1
cd /app/nfsdir2
就实现了自动挂载
NFS相关SELinux设置
CentOS7默认SELinux 的布尔值nfs_export_all_ro和nfs_export_all_rw都启用. 这允许NFS服务可以读写任意文件,基于安全考虑可关闭.
对于只读的NFS目录SELinux安全上下文件应设为public_content_t或nfs_t.
对于读写的NFS目录SELinux安全上下文件应设为public_content_rw_t或nfs_tcontext,并且布尔值nfsd_anon_writeBoolean 必须启用,以允许写操作.
帮助参考nfsd_selinux(8)(selinux-policy-devel包)nfs(5),mount(8),mount.nfs(8),exportfs(8),exports(5), nfsd_selinux(8)
SAMBA SAMBA服务简介
windos的计算机名是具有网络意义的,能够ping通这就需要计算机名是不能够冲突的,而linux中的主机名是不具有网路意义的
SMB:Server Message Block服务器消息块,IBM发布,最早是DOS网络文件共享协议
Cifs:common internet file system,微软基于SMB发布
SAMBA:1991年Andrew Tridgell,实现windows和UNIX相通
SAMBA的功能:
•共享文件和打印,实现在线编辑
•实现登录SAMBA用户的身份认证
•可以进行NetBIOS名称解析
•外围设备共享
计算机网络管理模式:
•工作组WORKGROUP:计算机对等关系,帐号信息各自管理
•域DOMAIN:C/S结构,帐号信息集中管理,DC,AD
相关包:
Samba 提供smb服务
Samba-client 客户端软件
samba-common 通用软件
cifs-utilssmb客户端工具
samba-winbind和AD相关
相关服务进程:
smbd提供smb(cifs)服务TCP:139,445
nmbdNetBIOS名称解析UDP:137,138
主配置文件:/etc/samba/smb.conf
帮助参看:man smb.conf
语法检查:testparm[-v] [/etc/samba/smb.conf]
客户端工具:smbclient,mount.cifs
SAMBA服务器配置
smb.conf继承了.ini文件的格式,用[ ] 分成不同的部分
全局设置:
[global] 服务器通用或全局设置的部分
特定共享设置:
[homes] 用户的家目录共享
[printers] 定义打印机资源和服务
[sharename] 自定义的共享目录配置
其中:#和;开头的语句为注释,大小写不敏感
宏定义:
%m 客户端主机的NetBIOS名 %M 客户端主机的FQDN
%H 当前用户家目录路径 %U 当前用户用户名
%g 当前用户所属组 %h samba服务器的主机名
%L samba服务器的NetBIOS名 %I 客户端主机的IP
%T 当前日期和时间 %S 可登录的用户名
samba服务有两个服务,一个smb(samba的核心服务),一个是nmb(用来实现名字解析的,将NetBIOS名解析成IP地址)
systemctl start smb 开启两个端口,都是tcp协议