我用这个打我的头靠在墙上。 环境是2 x CentOS 6 64位安装。 NFS客户端和服务器都在1小时前完全更新。
我已经在服务器上设置了一个NFS导出:
/opt/nfs 10.1.1.0/24(rw,sync,no_root_squash,no_all_squash)
AFAICT,服务器上所有相关的NFS服务正在运行:
(2) (0 Jobs) [root@lb01-cbr01-au ~]$ service rpcbind status rpcbind (pid 20079) is running... (2) (0 Jobs) [root@lb01-cbr01-au ~]$ service nfslock status rpc.statd (pid 19986) is running... (2) (0 Jobs) [root@lb01-cbr01-au ~]$ service nfs status rpc.svcgssd is stopped rpc.mountd (pid 20034) is running... nfsd (pid 20031 20030 20029 20028 20027 20026 20025 20024) is running... (2) (0 Jobs) [root@lb01-cbr01-au ~]$
在客户端上,rpcbind和nfslock报告为正在运行。
在服务器上,localhost的rpcinfo的输出看起来不错:
[root@lb01-cbr01-au ~]# rpcinfo -p localhost program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100024 1 udp 39893 status 100024 1 tcp 59014 status 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100227 2 tcp 2049 nfs_acl 100227 3 tcp 2049 nfs_acl 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100227 2 udp 2049 nfs_acl 100227 3 udp 2049 nfs_acl 100021 1 udp 44725 nlockmgr 100021 3 udp 44725 nlockmgr 100021 4 udp 44725 nlockmgr 100021 1 tcp 40736 nlockmgr 100021 3 tcp 40736 nlockmgr 100021 4 tcp 40736 nlockmgr 100005 1 udp 55385 mountd 100005 1 tcp 55481 mountd 100005 2 udp 46027 mountd 100005 2 tcp 59968 mountd 100005 3 udp 45069 mountd 100005 3 tcp 33231 mountd [root@lb01-cbr01-au ~]#
同样,客户端上的rpcinfo -p localhost表示状态良好:
program vers proto port service 100000 4 tcp 111 portmapper 100000 3 tcp 111 portmapper 100000 2 tcp 111 portmapper 100000 4 udp 111 portmapper 100000 3 udp 111 portmapper 100000 2 udp 111 portmapper 100024 1 udp 59519 status 100024 1 tcp 39715 status
防火墙在客户端和服务器之间是打开的 – 在每个主机的input和输出链上都有一个允许规则。
从客户端,当我发出showmount -e <server_ip> ,它挂起20秒,直到最终生成导出列表。 发出rpcinfo -p <server_ip>它也挂起20秒,直到最终返回“rpcinfo:无法联系portmapper:RPC:远程系统错误 – 连接超时”。
当我尝试从客户端实际安装导出时,使用:
mount -t nfs 10.1.1.33:/opt/nfs /opt/test/nfs
它挂起3分30秒,返回“mount.nfs:连接超时”。
但是,如果我尝试通过UDP挂载:
mount -o udp -t nfs 10.1.1.33:/opt/nfs /opt/test/nfs
它立即成功,并可以访问安装。
我没有做任何东西hosts.allow或hosts.deny(都是空的,从我读man_access指示访问将被允许)。
我在这里错过了什么?
编辑:SELinux在两个主机上都是宽容的。
事实certificate,我们的PowerConnect交换机上启用了一个“安全性”function,它攻击了源端口<1024(dos-control tcpflag)的NFS SYN数据包。 只需说,禁用该function即可解决问题。
虽然SELinux是宽容的,但请尝试: setsebool -P nfs_export_all_rw 1重新启动rpcbind,nfs和nfslock然后exportfs -a