前言:
目前各位老铁们对“centos hosts配置”大体比较关怀,大家都想要分析一些“centos hosts配置”的相关内容。那么小编也在网上汇集了一些关于“centos hosts配置””的相关知识,希望咱们能喜欢,小伙伴们快快来学习一下吧!一个IT从业者,分享IT的各种相关内容。点个关注,不迷路,总有能帮到你的分享内容。什么?帮不到。那谢谢你这么俊/这么美,来关注我!1、安装依赖和软件
yum -y install nfs-utils rpcbind2、设置服务自启动,并启动服务
systemctl enable nfs-server rpcbind nfs-lock nfs-idmapsystemctl start nfs-server rpcbind nfs-lock nfs-idmap3、建立挂载目录,并nfs输出
mkdir -p /application/shareecho "/application/share 192.168.0.*(rw,sync,no_root_squash)" >> /etc/exportsexportfs -a #使exports的修改生效showmount -e #检测输出情况
常用选项还有rw,wdelay,no_root_squash,no_subtree_check
允许所有客户端挂载说明
在/etc/exports中加上一句
/mnt/share *(ro,async,no_root_squash,nohide)
然后执行
exportfs -rv
上面括号上中的ro为只读,如果为rw的话,就是读写权限
【refused mount request from unmatched host问题】
原因是服务器未识别到客户端的网络,即服务器配置错误。如配置了如下网络:
/application/share 192.168.0.*(rw,sync,no_root_squash)
正确的配置应该是:
/application/share 192.168.0.0/24(rw,sync,no_root_squash)4、设置防火墙规则
a. 根据服务设置防火墙
firewall-cmd --add-service=nfs --permanent --zone=publicfirewall-cmd --add-service=mountd --permanent --zone=publicfirewall-cmd --add-service=rpc-bind --permanent --zone=publicfirewall-cmd --complete-reload
b. 根据端口限制,并限制可mount源IP
firewall-cmd --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="2049" accept" --permanentfirewall-cmd --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="20048" accept" --permanentfirewall-cmd --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="udp" port="20048" accept" --permanentfirewall-cmd --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="111" accept" --permanentfirewall-cmd --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="udp" port="111" accept" --permanent5、挂载权限说明
rw:read-write,可读写;
ro:read-only,只读;
sync:文件同时写入硬盘和内存;
async:文件暂存于内存,而不是直接写入内存;
no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;
anonuid:匿名用户的UID值,可以在此处自行设定。
anongid:匿名用户的GID值。
6、附录
/etc/exports :这个档案就是 NFS 的主要设定档了!不过,系统并没有预设值,所以这个档案不一定会存在,您可能必须要使用 vi 主动的建立起这个档案。
/usr/sbin/exportfs :这个是维护 NFS 分享资源的指令,我们可以利用这个指令重新分享 /etc/exports 变更的目录资源、将 NFS Server 分享的目录卸载或重新分享等等,重新分享后需要重启nfs服务。
/usr/sbin/showmount :这是另一个重要的 NFS 指令。exportfs 是用在 NFS Server 端,而 showmount 则主要用在 Client 端。这个 showmount 可以用来察看 NFS 分享出来的目录资源。
/var/lib/nfs/*tab :在 NFS 伺服器的登录档都放置到 /var/lib/nfs/ 目录里面,在该目录下有两个比较重要的登录档, 一个是 etab ,主要记录了 NFS 所分享出来的目录的完整权限设定值;另一个 xtab 则记录曾经连结到此 NFS 主机的相关用户端资料。