NFS 环境是用于在具有不同计算机体系结构和操作系统的网络中共享文件系统的一种强大而便捷的方式。但是,这些通过 NFS 操作使文件系统共享非常便利的功能同时还会造成一些安全问题。以前,大多数 NFS 实现使用 UNIX(或 AUTH_SYS)验证,但是也可以使用更强大的验证方法(如 AUTH_DH)。使用 UNIX 验证时,NFS 服务器通过验证发出请求的计算机(而不是用户)来验证文件请求。因此,客户机用户可以运行 su 并模仿文件的属主。如果使用 DH 验证,则 NFS 服务器将验证用户,这使这类模仿非常困难。
凭借超级用户权限和对网络编程的了解,任何人都可以将任意数据引入网络,并从网络中提取任何数据。最危险的攻击就是涉及数据引入的那些攻击。例如,通过生成适当的包或通过记录“会话”并稍候重放来模仿用户。这些攻击将影响数据的完整性。涉及被动窃听(仅侦听网络通信流量,而不模仿任何人)的攻击不是很危险,因为不会损害数据完整性。用户可通过对通过网络发送的数据进行加密来保护敏感信息的保密性。
解决网络安全问题的常见方法是针对每个应用程序都单独制定解决方案。更好的方法是在涉及所有应用程序的层上实现标准验证系统。
Solaris 操作系统包括位于远程过程调用 (remote procedure call, RPC) 层上的验证系统(NFS 操作所依赖的机制)。此系统(称为安全 RPC)可以大大提高网络环境的安全性,并能为 NFS 系统等服务提供附加安全性。当 NFS 系统使用由安全 RPC 提供的功能时,该系统称为安全 NFS 系统。