1、再谈NFS效劳器平安 电脑资料 NFS效劳器平安这个话题一直以来都为人津津乐道, 再谈NFS效劳器平安 。随着网络的不断变化,平安问题也越来越被大家所重视。那么针对NFS效劳器的一些平安问题,我们从何谈起呢?首先还是了解一下NFS的根本定义吧。NFS是网络文件系统(Network File System)的简称,是分布式计算系统的一个组成局部,可实现在异种网络上共享和装配远程文件系统。NFS由Sun公司开发,目前已经成为文件效劳的一种标准(RFC1904,RFC1813)。其最大的功能就是可让不同操作系统的计算机共享数据,所以也可以将它看做是一个文件效劳器。NFS提供了除SAMBA之外
2、Windows与Linux、Unix与Linux之间通信的方法。 任何网络效劳器都会有平安问题,NFS也不例外。由于设计方面的因素,NFS效劳器不可能绝对平安。一般来说,不应该将NFS效劳器运行在比拟敏感的系统或者只有一般防火墙的机器上,应该尽量将其置于防火墙之后。配置平安的NFS效劳器,可以从限制RCP效劳的访问和控制文件系统的导出权限两方面着手。 NFS面临的平安隐患 因为NFS在网络上明文传输所有信息,按照默认设置,NFS共享把根用户改成用户nfsnobody,它是一个不具备特权的用户账号。这样,所有根用户创立的文件都会被用户nfsnobody所有,从而防止了设
3、置setuid的程序被上传到系统。如果使用了norootsquash,远程用户就能够改变共享文件系统上的任何文件,把设置了特洛伊木马的程序留给其他用户,在无意中执行。 NFS效劳器平安策略 (1)使用TCPWrappers 。 portmap和rpc.nfsd结合起来,使NFS效劳器上的文件即使没有任何权限也能容易得到。可以使用访问控制保障网络平安,在使用NFS时最好结合TCPWrappers来限制使用范围。 (2)注意配置文件语法错误 根据专家观察,这样的理论和现象都是值得各位站长深思的,所以希望大家多做研究学习,争取 总结出更多更好的经验 NFS效劳
4、器通过/etc/exports文件来决定要导出哪些文件系统,以及把这些目录导出到哪些主机上。这个文件的时候要特别小心,不要添加额外的空格。 对真正的成功者来说,不管他的生存条件如何,都不会自我磨灭 例如:/etc/exports文件的以下行会使主机bob.example. 能够共享/tmp/nfs/目录。 /tmp/nfs/bob.example.(rw) 但是 /etc/exports 文件中这一行的情况却不同。它共享同一目录,让主机 bob.example. 拥有只读权限,却给全局以读写权限。这全是由主机后面的一个空格造成的。 /tmp/nfs/ bob.
5、example.(rw) 使用 showmount 命令来校验哪些目录被共享,从而检查NFS共享配置是一个好习惯。showmount格式为: showmount-e (3)使用iptables防火墙 因为nfs在网络上明文传输所有信息,所以让nfs效劳器在防火墙后、在一个分段的平安网络上运行就很重要。无论何时在不平安的网络上传递nfs信息都有被截取的危险。从这个角度讲,谨慎制定网络 方案就有助于防御重要的平安破坏。限制rcp效劳访问的方法一般是使用防火墙,除了tcp-wrapper还有ipchians和iptalbes的防火墙, 电脑资料 《 再谈nfs效劳器
6、平安》( s:// )。在全面使用linux 2.4或更高版本内核的今天,了解iptables这种防火墙方法也就足够了。 缺省的状态下,portmap使用111端口,而nfs使用2049端口,可以通过iptables来限制对该端口的访问: iptables-tfilter-AINPUT-pudp-d127.0.0.1--dport111-jDROP iptables-tfilter-AINPUT-pudp-d127.0.0.1--dport2049-jDROP iptables-tfilter-AINPUT-pudp-strustedclient-dthisserverip--dpor
7、t\2049-j ACCEPTiptables-tfilter-AINPUT-pudp-snottrustedclient-dthisserverip-dport \2049-jDROP (4)把开放目录限制为只读权限 根据专家观察,这样的理论和现象都是值得各位站长深思的,所以希望大家多做研究学习,争取总结出更多更好的经验 可以在/etc/exports文件中设定权限选项ro,通常需要把NFS效劳器对客户开放的任何目录或文件系统设置为只读访问: /appdevpc.nitec.(ro) 这样,devpc.nitec.网络中的客户只能对/app目录进行只读访问。
8、 (5)禁止对某些目录的访问 当开放一个完整的文件系统或者一个目录时,缺省情况下它的子目录会自动开放访问权限。如果希望限制对其子目录的访问可以使用noaess访问选项,例如希望开放/pub目录权限但是禁止访问/pub/staff-only子目录: /pubweblab-??.nitec.(ro) /pub/staff-onlyweblab-??.nitec.(noaess) 注意: “??”代表任意字符。 (6)root squashing访问问题 按照默认设置,root用户的用户ID和组群ID都是0。root权限压缩(Root squashin
9、g)把用户ID0和组群ID0映射为匿名的用户和组群ID,因此客户上的根用户就不会在NFS效劳器上具备根特权。如果这个选项被选,root用户就不会被映射为匿名用户,客户上的root用户就会对导出的目录拥有根特权。选择这个选项会大大降低系统的平安性。除非绝对必要,请不要选择它。为了明确执行该规那么,可以修改文件/etc/exports: /1.nitec.(rw,rootsquash) 这样如果客户端的UID0(root)用户想要访问(读、写、删除)一个NFS文件系统,效劳器端会用UID代替效劳器的nobody账户。这样客户端的root用户不能修改和访问效劳器端root用户才能访问
10、和修改的文件。 。 (7)使用nosuid和noexec选项 根据专家观察,这样的理论和现象都是值得各位站长深思的,所以希望大家多做研究学习,争取总结出更多更好的经验 SUID(Set User ID)或SGID(Set Group ID)程序可以让普通用户以超过自己权限的形式执行。很多SUID/SGID可执行程序是必须的,比方上面提到的passwd。SUID/SGID程序会被一些恶意的本地用户利用,获取本不应有的权限。运行以下命令可以找到所有具有这一属性的程序: #find/\(-perm-4000-o-perm-2000\) 使用者必须查看这一列表,尽量减少那些所有者是root或是在root组中却拥有SUID/SGID属性的文件,删除或对其属性进行更改。使用nosuid选项禁止set-UID程序在 NFS效劳器上运行,可以修改文件/etc/exports参加一行: 模板,内容仅供参考






