Linux NFS 服务器配置与使用全解析
1. NFS 服务器安全问题
NFS(网络文件系统)在创建时,加密和其他安全措施并未常规地集成到网络服务中,因此 NFS(甚至到版本 3)存在一些明显的安全问题,这些问题使其不适用于公共网络,甚至在组织内部安全使用也有困难。具体问题如下:
- 远程 root 用户问题 :即使默认开启 root_squash(防止 root 用户对远程共享拥有 root 访问权限),共享 NFS 目录的任何机器上的 root 用户仍可访问其他用户账户。例如,若以读写权限共享主目录,共享目标机器上的 root 用户可完全访问这些主目录内容。
- 未加密通信 :NFS 流量未加密,网络嗅探者可看到传输的数据。
- 用户映射 :NFS 共享的默认权限按用户 ID 映射。例如,NFS 客户端上 UID 为 1000 的用户可访问 NFS 服务器上 UID 为 1000 的用户拥有的文件,与用户名无关。
- 文件系统结构暴露 :直到 NFSv3,若通过 NFS 共享目录,会暴露该目录在服务器文件系统中的位置。
不过,NFSv4 解决了大部分这些问题,但需要额外配置。通过集成 Kerberos 支持,NFSv4 可根据用户获得的 Kerberos 票据配置用户访问权限,用户需额外配置 Kerberos 服务器。对于暴露 NFS 共享位置问题,NFSv4 可将共享目录绑定到 /exports 目录,共享时不暴露目录的准确位置。