分享
 
 
 

如何让NFS更安全

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

前言

NFS(network file system)是由SUN公司发展, 并於1985年推出,NFS是架构於的功能在於提供不同机器间的档案分享与共用,由於NFS规格完全公开,因此现在许多的作业系统都提供NFS的服务。传统NFS虽然使用UDP来传递档案资料(NFS Version 3以後支援TCP传送),但由於协定上的设计,大部分的安全问题都获得了解决。然而除了少数被发现存在不同平台的程式错误外,会影响系统安全的往往是管理者错误的设定。本文主要为探讨NFSServer端的设定,以避免系统被入侵或系统资料被窃取。

NFS相关程式

(1)biod:此程式是用来建立NFS Client端的cache,处理在Client上的读写动作。

(2)mountd:此程式是用来回应要求Mount的讯息。

(3)nfsd:此程式是用来处理NFS Client端的要求。

NFS Server设定

(1)限定读写的权限

大部分系统的NFS服务并不会限定你新增的分享资源为唯读,除非你自己设定,否则都是以可读可写的模式分享资料。要设读写限制请参考以下例:

*AIX,FreeBSD,Linux:

於/etc/exports中,使用-ro的参数,如:

/export -ro # 将/export以唯读的模式分享

*Solaris:

於/etc/dfs/dfstab中,使用-o ro的参数,如:

share -F nfs -o ro /export # 将/export以唯读的模式分享

当然,假如你的分享资源是唯读的设备,那是不用考虑这个问题的。

(2)限定分享的机器

让我们看看以下用"showmount -e xxx.xxx.xxx.xxx"得到的结果:

export list for xxx.xxx.xxx.xxx:

/home (everyone)

这表示任何一台机器都可以将/home里的资料挂(mount)在自己的机器上,假如里面的资料具有私密性,那就危险了。所以下面的例子显示如何设定分享的机器:

*AIX

於/etc/exports中,加入-access=[host name]:

/export -ro,access=www # 允许www用唯读的模式分享/export

*FreeBSD:

於/etc/exports中,加入host name:

/export -ro www bbs # 允许www和bbs用唯读的模式分享/export

/u -network 1.2.3 -mask 255.255.255.0 # 允许1.2.3.x读写/u

*Solaris:

於/etc/dfs/dfstab中,加入host name:

share -F nfs -o ro=www /export # 允许www以唯读的模式分享/export

事实上我们发现,有部份的管理者用domain name当做限定NFS Client机器的资料,这样并非不可以,然而却是不安全的做法,因为NFS是透过Client的IP查出Domain Name,故假造Domain Name便会骗过NFS Server。所以我们建议您将欲分享的Client端资料写在/etc/hosts中,并於NFS的设定档中使用登录於/etc/hosts中Client的host name,这是比较安全的做法,如下:

*/etc/hosts内容:

140.117.1.1 cc

*/etc/exports内容:

/export -ro,access=cc #AIX

*/etc/dfs/dfstab内容(Solaris):

share -F nfs -o ro=cc /export

当然,像FreeBSD的/etc/exports内容允许IP限定也是一个不错的做法。

(3)将重要资料档拥有者设为root

早期NFS并没有对root(uid 0)这个帐号做特别处理,因而一些拥有者为root的档案会被删除,後来便改为如果不做任何设定的话,NFS client端的root是没什麽权限的,意即对远端的档案权限可能比一般使用者还低。换句话说NFS Server端的档案若是拥有者为root,将有较高的安全性,如下所示:

-rwxr-xr-x 1 root wheel 5584 11 Oct 23:38 ypwhich

-rwxr-xr-x 1 root wheel 2405 11 Oct 23:38 yyfix

-rwxr-xr-x 4 root wheel 100200 11 Oct 23:34 zcat

-rwxr-xr-x 2 root wheel 2049 11 Oct 23:34 zcmp

若NFS Client端所看到的目录内容如上,即使是可读写的分享,只要你没开放root的权限,对方也无法更改档案内容。所以除非万不得已,否则我们建议您不要开启NFS Client拥有root的权限。

(4)分享的档案系统不要有太多的不同拥有者的档案

这里会提出此建议,主要是考量系统管理上的问题。假如你的分享无法将拥有者都设成root,可能会遇到NFS Server和NFS Client上的使用者uid不一致的状况,而产生使用者间互相修改对方的档案,当然假如你确定两个系统的id和uid都是相同,那就不用担心此问题的。以下举例说明:

*NFS Server

-rw-r--r-- 1 adm other 292 Oct 25 07:25 Makefile

-rwxr--r-- 1 adm other 362 Jul 11 13:21 a.out

-rwsr--r-- 1 root other 17390 Oct 26 09:19 mount

*NFS Client

-rw-r--r-- 1 bin other 292 Oct 25 07:25 Makefile

-rwxr--r-- 1 bin other 362 Jul 11 13:21 a.out

-rwsr--r-- 1 root other 17390 Oct 26 09:19 mount

以上adm与bin为不同的两个人在不同机器上,但uid相同,故使用者bin有可能更动NFS Server上属於使用者adm的档案。

结语

NFS设定注意事项以上共分成四个要点,当然已知的漏洞修正程式您必须自己安装它,不然即使设定无误,仍不能保系统安全,另外本文不代表包含所有NFS的问题,由於各作业系统在NFS的设定上各有异同,如使用secure-RPC或Kerberos来建置NFS以及NFS client注意事项等等,若您有任何疑问,欢迎来信讨论,请寄至以下电子邮件信箱: twcert@cert.org.tw。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有