我有几个 Ubuntu Server 16.04 虚拟机。其中之一是我的文件服务器,有一个 ZFS 镜像。我想将镜像中的文件系统挂载到各种不同的客户端虚拟机。当防火墙(ufw)被禁用时,我可以使用如下命令成功地做到这一点:
mount -t nfs4 server:/tank/filesystem /filesystem
以及将它们配置为在启动时安装/etc/fstab
,但当我ufw enable
并允许流量到达我的本地子网时
ufw allow from 192.168.1.0/24 to any port 2049
连接被服务器拒绝。
根据我的搜索,NFS v4 应该只需要这个端口并且只需要通过 TCP。我看过各种指南/帖子为旧版本的 NFS 启用各种端口,但在我看来这是不必要的。我还看到了一些关于通过修改设置 nfs 服务器的指南/etc/exports
,但我的印象是,当 ZFS 处理 nfs 共享时,不需要服务器级别的 nfs 配置。
所以我想我的问题是: 如果我的目标是在本地子网客户端虚拟机上使用 nfs 挂载 ZFS 文件系统,那么配置防火墙和/或 nfs 服务器以实现此目的的最佳方法是什么?
答案1
看来/etc/exports
实际上需要导出:
/tank/filesystem1 192.168.1.XXX(rw,sync,no_subtree_check)
重新启动 nfs-kernel-server 后,使用上述命令挂载共享。现在要弄清楚权限...