一、安装NFS服务
要在Ubuntu上安装NFS,需要在终端中执行以下命令:
sudo apt-get update
sudo apt-get install nfs-kernel-server
nfs-kernel-server是Ubuntu使用的NFS服务器软件包。 安装它后,NFS服务将自动启动。
二、配置NFS共享
NFS共享配置文件为/etc/exports。 使用以下命令打开文件:
sudo nano /etc/exports
示例:
/home/user1/shared *(rw,sync,no_root_squash,no_subtree_check)
/home/user2/shared *(rw,sync,no_root_squash,no_subtree_check)
这个例子开放了两个共享目录,一个是/user1/shared,另一个是/user2/shared。 *代表共享的主机,这里表示共享给所有主机。 rw表示只读/写许可; sync表示客户端请求的文件写入同步返回; no_root_squash表示作为root用户访问NFS共享时,将被映射为root用户; no_subtree_check将导致将整个目录树标记为已检查。
编辑完后,保存更改并退出编辑器。 然后执行以下命令使更改生效:
sudo exportfs -a
sudo systemctl restart nfs-kernel-server
三、在客户端上挂载NFS共享
在客户端上,需要安装nfs-common软件包。 使用以下命令安装它:
sudo apt-get update
sudo apt-get install nfs-common
之后,您需要创建一个本地目录,将NFS共享挂载到该目录:
sudo mkdir /mnt/shared
sudo mount server_ip:/home/user1/shared /mnt/shared
mount命令的语法为: mount server:/shared/directory /local/directory。 在这个例子中,server_ip是NFS服务器的IP地址,/home/user1/shared是共享目录在NFS服务器上的路径,而/mnt/shared目录是在客户端上创建的本地目录。 您可以更改目录和路径来适应自己的需求。
四、自动挂载NFS共享
要在每次启动时自动挂载NFS共享,需要编辑/etc/fstab文件并添加以下行:
server_ip:/home/user1/shared /mnt/shared nfs defaults 0 0
这将使系统在启动时自动将NFS共享挂载到/mnt/shared目录中。 请注意,如果服务器IP地址或共享目录的路径发生变化,则必须更新此文件。
五、NFS安全性
默认情况下,NFS共享是不安全的,因为任何人都可以连接并读取/写入您的文件。 如果担心安全问题,我们建议在NFS服务器和客户端之间建立防火墙,并仅允许特定IP地址的主机连接。 您还可以使用网络文件系统版本4(NFSv4),它提供了更好的安全性和加密支持。
在/etc/nfs.conf文件中,可以设置默认的NFSv4加密级别:
default-security =krb5
还要启用kerberos身份验证,并添加权限控制规则:
/home/user1/shared *(rw,sync,sec=krb5,no_root_squash,no_subtree_check)
/home/user2/shared *(rw,sync,sec=krb5,no_root_squash,no_subtree_check)
这将仅允许经过身份验证的用户访问NFS共享目录以及使用kerberos加密保护NFS传输。
六、总结
这篇文章介绍了在Ubuntu上安装和配置NFS共享的步骤。 具体而言,安装NFS服务器,编辑NFS共享配置文件,挂载NFS共享目录,自动挂载NFS共享,以及NFS的安全性措施。