您的位置:首页 > 运维架构 > Linux

CentOS---NFS安装、配置、使用

2017-10-20 18:52 696 查看
一、安装

1、是否安装了NFS和portmap RPM包

[root@butbueatiful /]# rpm -qa | grep nfs

nfs-utils-1.0.9-44.el5

nfs-utils-lib-1.0.8-7.6.el5

[root@butbueatiful /]# rpm -qa | grep portmap

portmap-4.0-65.2.2.1

2、若没有安装则用以下命令安装

[root@butbueatiful /]# yum  install  nfs-utils  portmap

二、配置

NFS Server:192.168.1.100

NFS Client:192.168.1.200

NFS Server:

共享目录:/nfspool

NFS 运行用户(RPM包自动生成):nfsnobody

[root@butbueatiful /]# mkdir /nfspool

[root@butbueatiful /]# chown nfsnobody:nfsnobody /nfspool

[root@butbueatiful /]# id nfsnobody

uid=65534(nfsnobody) gid=65534(nfsnobody) groups=65534(nfsnobody) context=root:system_r:unconfined_t:SystemLow-SystemHigh

[root@butbueatiful /]# chown -R nfsnobody:nfsnobody /nfspool/.

[root@butbueatiful /]# vi /etc/exports

/nfspool 192.168.1.200(rw,async,anonuid=65534,anongid=65534)

启动服务:

[root@butbueatiful /]# service portmap start

启动 portmap:                                             [确定]

[root@butbueatiful /]# service nfslock start

[root@butbueatiful /]# service nfs start

启动 NFS 服务:                                            [确定]

关掉 NFS 配额:                                            [确定]

启动 NFS 守护进程:                                      [确定]

启动 NFS mountd:                                      [确定]

NFS Client:

远程NFS目录在客户端的挂载点:/nfs

[root@test1 /]# mkdir /nfs

[root@test1 /]# service portmap start

启动 portmap:                                             [确定]

[root@test1 /]# chown nfsnobody:nfsnobody /nfs

[root@test1 /]# chmod 777 /nfs

[root@test1 /]# mount -t nfs -o soft,intr,bg,timeo=50 192.168.1.100:/nfspool /nfs

测试:

[root@test1 /]# ls -all /nfs

总计 20

drwxr-xr-x  2 nfsnobody nfsnobody 4096 04-02 13:53 .

drwxr-xr-x 24 root      root      4096 04-02 13:49 ..

-rw-r--r--  1 root      root         0 04-02 13:53 test.t   

Client启动后的自动mount:

[root@test1 /]# vi /etc/fstab

192.168.1.100:/nfspool /nfs nfs soft,intr,bg,timeo=50 0 0

三、服务起停顺序

启动:

service portmap start

service nfslock  start

service nfs  start

停止:

service nfslock stop

service nfs stop

service portmap stop

四、安全性

portmap PORT: 111

NFS PORT: 2049

防止使用IP欺骗和RPC重定向技术通过lo回环进行攻击以及限定授权主机:

iptables -A INPUT -p udp -d 127.0.0.1 --dport 111 -j DROP

iptables -A INPUT -p udp -d 127.0.0.1 --dport 2049 -j DROP

iptables -A INPUT -p udp -s 192.168.100.2 --dport 111 -j ACCEPT

iptables -A INPUT -p udp -s 192.168.100.2 --dport 2049 -j ACCEPT


附注:

1、exports参数说明

ro          只读访问 

rw          读写访问 

sync        所有数据在请求时写入共享 

async       NFS在写入数据前可以相应请求 

secure      NFS通过1024以下的安全TCP/IP端口发送 

insecure    NFS通过1024以上的端口发送 

wdelay      如果多个用户要写入NFS目录,则归组写入(默认) 

no_wdelay   如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。 

hide        在NFS共享目录中不共享其子目录 

no_hide     共享NFS目录的子目录 

subtree_check           如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认) 

no_subtree_check        和上面相对,不检查父目录权限 

all_squash  共享文件的UID和GID映射匿名用户anonymous,适合公用目录。 

no_all_squash           保留共享文件的UID和GID(默认) 

root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认) 

no_root_squash          root用户具有根目录的完全管理访问权限 

anonuid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的UID 

anongid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的GID

2、NFS 管理命令

showmount -e     在NFS Server上执行此命令显示NFS Server上所有的共享卷;

showmount -e 192.168.1.100    在NFS Client上执行此命令显示NFS Server上所有共享卷;

exportfs -av     根据/etc/exports导出所有卷;

exportfs -rv     重新导出所有卷,增加/etc/exports中的新项目、删除不存在的项目、更新改变的项目;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nfs