我正在尝试让我的NFS服务器允许非root用户安装请求.
服务器:Debian Squeeze,内核2.6.32-5-686
我现在拥有的:root(或sudoes)可以挂载NFS文件系统,但普通用户不能.
为什么我认为这是可能的:
I. Debian服务器(10.18.51.1)
已安装的软件包:nfs-kernel-server,nfs-common,portmap
1)/ etc / exports:
/usr/appl/ 10.18.51.0/24(ro,no_subtree_check)
/usr/private/ 10.18.51.11(rw,sync,no_subtree_check)
2)/ var / lib / nfs / etab
/usr/private 10.18.51.11(rw,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534)
/usr/appl 10.18.51.0/24(ro,anongid=65534)
3)导出文件夹的权限:
$ls -lh -d /usr/appl
drwxr-xr-x 3 root root 4.0K Feb 25 17:16 /usr/appl
$ls -lh -d /usr/private
drwxrwxrwx 4 root root 4.0K Feb 27 12:19 /usr/private
II. Ubuntu客户端(10.18.51.11)
已安装的软件包:nfs-common portmap
$mount 10.18.51.1:/usr/appl /mnt/nfs/appl
mount: only root can do that
尽管/ etc / fstab中有用户标记:
10.18.51.1:/usr/appl /mnt/nfs/appl nfs ro,async,nodev,nosuid,user 0 0
10.18.51.1:/usr/private /mnt/nfs/private nfs rw,rsize=8192,hard,intr,nfsvers=3,tcp,noatime,user 0 0
III. FreeBSD客户端(10.18.51.3)
1)
$cat /etc/rc.conf
...
nfs_client_enable="YES"
2)
$mount 10.18.51.1:/usr/appl /mnt/nfs/appl
[tcp] 10.18.51.1:/usr/appl: Permission denied
[tcp] 10.18.51.1:/usr/appl: Permission denied
[tcp] 10.18.51.1:/usr/appl: Permission denied
...
有趣的是,在按Enter后它打印Permission denied,然后等待一段时间,然后尝试连接到10.18.51.1,然后再次打印Permission denied.我知道有关服务器的连接,因为我在服务器上使用了tcpdump(tcpdump host 10.18.51.3):
$sudo tcpdump host 10.18.51.3
[sudo] password for sukharevd:
tcpdump: verbose output suppressed,use -v or -vv for full protocol decode
listening on eth0,link-type EN10MB (Ethernet),capture size 65535 bytes
23:32:28.029560 ARP,Request who-has msiuioo.local tell 10.18.51.3,length 28
23:32:28.029598 ARP,length 28
23:32:28.029661 ARP,Reply msiuioo.local is-at 00:21:85:51:44:02 (oui Unknown),length 28
23:32:28.031075 IP 10.18.51.3.35034 > msiuioo.local.sunrpc: UDP,length 56
23:32:28.031401 IP msiuioo.local.sunrpc > 10.18.51.3.35034: UDP,length 28
23:32:28.033275 IP 10.18.51.3.17157 > msiuioo.local.nfs: Flags [S],seq 4085518488,win 65535,options [mss 1460,nop,wscale 3,sackOK,TS val 405930 ecr 0],length 0
23:32:28.033326 IP msiuioo.local.nfs > 10.18.51.3.17157: Flags [S.],seq 1703965537,ack 4085518489,win 5792,TS val 2186703 ecr 405930,wscale 6],length 0
23:32:28.034717 IP 10.18.51.3.17157 > msiuioo.local.nfs: Flags [.],ack 1,win 8326,options [nop,TS val 405930 ecr 2186703],length 0
23:32:28.034912 IP 10.18.51.3.4026012106 > msiuioo.local.nfs: 40 null
23:32:28.034978 IP msiuioo.local.nfs > 10.18.51.3.17157: Flags [.],ack 45,win 91,TS val 2186704 ecr 405930],length 0
23:32:28.035063 IP msiuioo.local.nfs > 10.18.51.3.4026012106: reply ok 24 null
23:32:28.036892 IP 10.18.51.3.17157 > msiuioo.local.nfs: Flags [F.],seq 45,ack 29,TS val 405930 ecr 2186704],length 0
23:32:28.036986 IP msiuioo.local.nfs > 10.18.51.3.17157: Flags [F.],seq 29,ack 46,length 0
23:32:28.039021 IP 10.18.51.3.17157 > msiuioo.local.nfs: Flags [.],ack 30,win 8325,length 0
23:32:28.039124 IP 10.18.51.3.40381 > msiuioo.local.sunrpc: UDP,length 56
23:32:28.039426 IP msiuioo.local.sunrpc > 10.18.51.3.40381: UDP,length 28
有什么建议?
UPD:解决了一半的问题.我应该用过
mount /mnt/nfs/appl
代替
mount 10.18.51.1:/usr/appl /mnt/nfs/appl
在Linux(Ubuntu)客户端上.
但在FreeBSD中安装仍有问题.