Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7589336
  • 博文数量: 368
  • 博客积分: 9600
  • 博客等级: 上校
  • 技术积分: 18875
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-01 00:00
文章分类

全部博文(368)

文章存档

2017年(9)

2016年(19)

2015年(3)

2014年(6)

2013年(8)

2012年(78)

2011年(66)

2010年(135)

2009年(44)

分类: LINUX

2009-11-27 11:02:58

NFS安装与配置

 

1.         NFS安装

系统默认已经安装了NFS软件包,如果手工安装NFS,需要5RPM包。

setup-*:          共享NFS目录在/etc/exports中定义

 initscripts-*       包括引导过程中装载网络目录的基本脚本

 nfs-utils-*:       包括基本的NFS命令与监控程序

 portmap-*:       支持安全NFS RPC服务的连接

 quota-*:       网络上共享的目录配额,包括rpc.rquotad (这个包不是必须的)

可以使用下面命令查看系统是否已经安装了某个软件包。

#rpm –qa |grep setup

2.         配置NFS

编辑/etc/exports,在文件中列出,要共享的目录。书写规则是:(每个共享规则一行)

共享目录 主机(参数)

例如:

/mnt/disk1 10.167.27.207(ro,sync, no_root_squash)  *(ro)

上面的规则代表将/mnt/disk1目录以读写同步方式共享给主机10.167.27.207。如果登陆到NFS主机的用户是root,那么该用户就具有NFS主机的root用户的权限。对于其他IP只允许都权限

下面是一些NFS共享的常用参数:

rw             可读写的权限;

 ro             只读的权限;

 no_root_squash 登入到NFS主机的用户如果是ROOT用户,他就拥有ROOT的权限root_squash   在登入 NFS 主机使用目录的使用者如果是 root 时,那么这个使用者   的权限将被压缩成为匿名使用者,通常他的 UID GID 都会变成 nobody 那个身份;

 all_squash     不管登陆NFS主机的用户是什么都会被重新设定为nobody

 anonuid        将登入NFS主机的用户都设定成指定的user id,ID必须存在于/etc/passwd中。

 anongid         anonuid ,但是变成 group ID 就是了!

   sync           资料同步写入存储器中。

 async          资料会先暂时存放在内存中,不会直接写入硬盘。

 insecure         允许从这台机器过来的非授权访问。

3.         启动NFS

# service portmap start

# service nfs start

检查NFS的运行级别:

# chkconfig --list portmap

 # chkconfig --list nfs

根据需要设置在相应的运行级别自动启动NFS

# chkconfig --level 235 portmap on

 # chkconfig --level 235 nfs on

另外,还需要查看系统的iptables/etc/hosts.allow/etc/hosts.deny是否设置了正确的NFS访问规则。

  查看端口: # netstat -lnp | grep 111

             #netstat -lnp | grep 2049

 

 

4.         客户端配置

客户端运行以下命令MOUNT NFS文件系统

#mount -t nfs 10.167.27.91:/opt /mnt/disk1

 

5.         命令的使用

1)        exportfs命令的使用:

如果我们在启动了NFS之后又修改了/etc/exports,是不是还要重新启动nfs呢?这个时候我们就可以用exportfs命令来使改动立刻生效,该命令格式如下:

exportfs [-aruv]

参数的意义如下:

-a :全部mount或者unmount /etc/exports中的内容

 -r :重新mount /etc/exports中分享出来的目录

 -u umount 目录

 -v :在 export 的时候,将详细的信息输出到屏幕上。

具体例子:

[root @test root]# exportfs rv   <==全部重新 export 一次!

2)        Showmount命令的使用:

# showmount [-ae] hostname

参数说明:

-a 在屏幕上显示目前主机与Client所连上来的使用目录状态

-e 显示hostname这部机器的/etc/exports里面的共享目录。

当要扫瞄某一主机所提供的NFS共享的目录时,就使用showmount -e IP(或主机名hostname)即可。

 

6.         检验目录/var/lib/nfs/xtab

检验所共享的目录内容,查看/var/lib/nfs/xtab这个文件:

# vi /var/lib/nfs/xtab

/home/cao   192.168.0.1(rw,sync,wdelay,hide,secure,root_squash,

no_all_squash,subtree_check,secure_locks, mapping=identity,anonuid=-2, anongid=-2)

这就是/home/cao这个共享出去的目录预设NFS里面的属性。

 

7.         安全性

portmap: 111

NFS: 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 10.0.0.2 --dport 111 -j ACCEPT

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

阅读(2492) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~