网络文件共享服务-NFS服务配置和测试

网络文件服务(NFS)

RHEL的NFS服务雷同于其他BSD和UNIX系统中的版本

  。导出的资源配置在/etc/exports中

  。服务器使用命令exportfs -r 或者service nfs reload 通告资源导出的变更

  。共享目录通告mount 命令访问

  。NFS服务器是一个RPC服务所以也需要portmap

服务配置文件:NFS
。类型:system V管理的服务
。包:nfs-utils
。进程:rpc.nfsd,rpc.locked,rpciod,rpc.mountd,rpc.rquotad,rpc.statd
。脚本:/etc/init.d/nfs,/etc/init.d/nfslock
。端口:2049(nfsd),其他通过portmap(111)赋予
。配置:/etc/exports
。与之相关的:portmap(mandatory),tcp_wrappers
#man exports查看

 具体实现方式:

1.服务器端安装NFS
2.编辑/etc/exports文件
使用主机A(ip:192.168.1.128)部署NFS,主机B(192.168.1.129)作为客户端
#/etc/init.d/nfs start    //启动nfs服务,会启动nfs配额服务,主进程服务,挂载服务
#/etc/init.d/nfs stop    //停止nfs服务
#/etc/init.d/nfs restart    //重启nfs服务
使用主机B
#showmount -e 192.168.1.128    //查看导出资源清单
使用主机A
#exportfs --help    //查看帮助
#exportfs -r    //重新装载资源
#man exports    //查看exports用法
#mkdir /share    //创建共享文件夹
#mkdir /common    //创建共享文件夹common
#vim /etc/exporfs配置文件,添加如下信息
/share      192.168.1.0/24(rw) 192.168.3.124(ro)
/common       192.168.1.0/24(ro)
排错顺序:
网络,配置,权限,selinux
#exportfs -r    //重新导入配置文件
使用主机B
#showmount -e 192.168.1.128    //查看是否共享成功
#mkdir /mnt/share    //主机B创建文件夹,用于挂载共享文件
#mkdir /mnt/common   //主机B创建文件夹,用于挂载共享文件
#mount 192.168.1.128:/share   /mnt/share   //挂载共享文件
#mount 192.168.1.128:/common    /mnt/common
#cd /mnt/share   //查看文件是否可以看到
#umount /mnt/share  //卸载挂载资

 NFS用户映射:

当使用管理员拷贝文件的时候,会显示nfsnobody用户和nfsnobody组
默认nfs对root(uid=0)用户显示为nfsnobody,为了防止黑客进入,咱们使用用户映射来处理这个问题。
可以通过root_squash来做一个转换
#vim /etc/exporfs配置文件,添加如下信息
/share 192.168.1.0/24(rw,no_root_squash)
/common 192.168.1.0/24(ro)
重新reload nfs,然后在B机器挂载,创建文件验证
#man exports  //查看exports手册
默认情况    修改后的情况
root_squash  no_root_squash
all_squash  anonuid/anongid
nfsnobody
默认的/home文件夹下面用户权限是rwx______,开启all_squash,服务A配置如下
vim /etc/exports
/home/student  192.168.1.0/24(rw)
客户端B机器:
#showmount -e 192.168.1.128
#mkidr /mnt/student
#mount 192.168.1.128:/home/student /mnt/student
#cd /mnt/student发现无法进去
解决办法:
在服务器A
#vim /etc/exports
/home/student 192.168.1.0/24(rw,all_squash,anonuid=500,anongid=501)    //开启转换机制。
按照上述操作试试客户端B查看创建文件用户和组

 必须启动portmap服务,才能启动nfs服务。

#/etc/init.d/portmap start

#rpcinfo -p  //查看rpc信息

防火墙端口选项:

。mountd,statd和lockd能够强制使用一个静态端口
。在/etc/sysconfig/nfs中设置MOUNTD_PORT,STATD_PORT,LOCKD_TCPPORT和LOCKD_UDPPORT变量
    MOUNTD_PORT="4002"
    STATD_PORT="4003"
    LOCKD_TCPPORT="4004"
    LOCKD_UDPPORT="4004"
 
原文地址:https://www.cnblogs.com/hongjinping/p/13062630.html