NFS共享概述:
Network File System:网络文件系统
	    --用途:为客户机提供共享使用的文件夹
		--协议:NFS(TCP/UDP 2049)、RPC(TCP/UDP 111)
	所需软件包:nfs-utils
	系统服务:nfs-server
	配置NFS共享目录的记录格式:
	文件夹绝对路径   客户机地址(ro或rw等控制参数)
	
普通NFS共享的实现:
要求:
   在虚拟机server0上配置NFS服务,完成以下任务:
	1,只读方式共享目录/public,只能被example.com域内系统访问
	2,可读写共享目录/protected,能被 example.com 域中的系统访问
	在虚拟机 desktop0 上访问NFS共享目录
	1,将 server0 的 /public 挂到本地 /mnt/nfsmount
    2,这些文件系统在系统启动时自动挂载
方案:
	对于普通NFS共享来说:
       服务端需要运行系统服务 nfs-server.service
       客户端不需要运行特定的系统服务
步骤:
	在server0上发布NFS共享目录
	1,准备需要共享的文件夹
 	[root@server0 ~]# mkdir  /public
     [root@server0 ~]# mkdir  /protected
	2,建立NFS共享配置
	  [root@server0 ~]# vim  /etc/exports
        /public         172.25.0.0/24(ro)
        /protected      172.25.0.0/24(rw)
  3,启动系统服务nfs-server,并设置开机自启
	  [root@server0 ~]# systemctl  restart  nfs-server
       [root@server0 ~]# systemctl  enable  nfs-server
      在desktop0上挂载NFS共享目录/public
	 1,创建挂载点
	  [root@desktop0 ~]# mkdir  /mnt/nfsmount
	 2,列出server0上提供的NFS共享资源
      [root@desktop0 ~]# showmount  -e  server0.example.com
      Export list for server0.example.com:
       /protected 172.25.0.0/24
       /public    172.25.0.0/24
	 3,配置开机挂载server0的NFS共享目录/public
	   [root@desktop0 ~]# vim  /etc/fstab
	   server0.example.com:/public /mnt/nfsmount nfs _netdev 0 0
	4,测试挂载配置
	   [root@desktop0 ~]# mount  -a
       [root@desktop0 ~]# df  -hT  /mnt/nfsmount/
       Filesystem    Type  Size  Used Avail Use% Mounted on
       server0.example.com:/public nfs4   10G  3.2G  6.8G 32%
		/mnt/nfsmount
			 
安全NFS共享的实现
要求:
	  在虚拟机 server0 上配置安全NFS服务,完成以下任务:
	  1,访问 /protected 需 kerberos 加密,密钥地址:
		      http://classroom/pub/keytabs/server0.keytab
	  2,目录 /protected 下包含名为 project 的子目录
	  在虚拟机 desktop0 上访问NFS共享目录
	  1,挂载 /mnt/nfssecure 需 kerberos加密,密钥地址:
				 http://classroom/pub/keytabs/desktop0.keytab
	  2,用户 ldapuser0 能够在 /mnt/nfssecure/project 
			   目录下创建文件,其密码为 kerberos
方案:
     对于安全NFS共享来说:
	 1,服务端需要运行系统服务 
			   nfs-server.service、nfs-secure-server.service
	 2,客户端需要运行系统服务 nfs-secure.service
知识点:
	 1,kerberos认证/加密:一次认证(获取通行证),多次免密码登录。
	 2,客户机密钥部署位置:/etc/krb5.keytab
	 3,参与kerberos认证/加密的客户机需要加入同一个kerberos领域,
			   在此我们通过执行lab nfskrb5 setup操作来实现
步骤:
	将server0、desktop0加入kerberos认证领域
	1,初始化server0
	 [root@server0 ~]# lab  nfskrb5  setup
	2,初始化desktop0
	 [root@desktop0 ~]# lab  nfskrb5  setup
	3,验证初始化结果
	可以使用网络账号ldapuser0登入到server0或desktop0,其密码是kerberos
	 [root@server0 ~]# ssh  ldapuser0@desktop0.example.com
	 [ldapuser0@desktop0 ~]$                         //成功登入
	 [ldapuser0@desktop0 ~]$ exit                  //返回原环境
为server0、desktop0部署kerberos密钥
 1,为server0下载及部署密钥
	 [root@server0 ~]# wget  
	 http://classroom/pub/keytabs/server0.keytab  -O /etc/krb5.keytab
	 [root@server0 ~]# file  /etc/krb5.keytab      //检查部署结果
2,为desktop0下载及部署密钥
	 [root@desktop0 ~]# wget 
	 http://classroom/pub/keytabs/desktop0.keytab  -O /etc/krb5.keytab
	 [root@desktop0 ~]# file  /etc/krb5.keytab     //检查部署结果
  在server0上调整/protected共享配置
1,创建指定的子目录
   [root@server0 ~]# mkdir  /protected/project
   [root@server0 ~]# chown  ldapuser0  /protected/project  //赋予可写权限
2,调整共享目录的安全控制类型
   [root@server0 ~]# vim  /etc/exports
	/public        172.25.0.0/24(ro)
    /protected    172.25.0.0/24(rw,sec=krb5p)      //指定安全类型
 3,重启系统服务nfs-server、nfs-secure-server,设置开机自启
   [root@server0 ~]# systemctl  restart  nfs-server  nfs-secure-server
   [root@server0 ~]# systemctl  enable  nfs-server  nfs-secure-server
在desktop0上挂载安全NFS共享/protected
 1,创建挂载点
	[root@desktop0 ~]# mkdir  /mnt/nfssecure
 2,启动系统服务nfs-secure,并配置开机自启
	[root@desktop0 ~]# systemctl  restart  nfs-secure
    [root@desktop0 ~]# systemctl  enable  nfs-secure
 3,配置开机挂载安全NFS共享
	[root@desktop0 ~]# vim  /etc/fstab
	server0.example.com:/public /mnt/nfsmount nfs _netdev 0 0
    server0.example.com:/protected /mnt/nfssecure nfs sec=krb5p,_netdev 0 0
 4,验证挂载配置
	[root@desktop0 ~]# mount  -a
 5,测试对挂载点的写入权限
 以用户ldapuser0通过SSH的方式登入desktop0,
	验证密码(kerberos)以获取通行证:
	[root@desktop0 ~]# ssh  ldapuser0@desktop0.example.com
	 访问desktop0的挂载点/mnt/nfssecure/的子目录project,测试可写入
   [ldapuser0@desktop0 ~]$ touch  /mnt/nfssecure/project/a.txt
   [ldapuser0@desktop0 ~]$ ls    /mnt/nfssecure/project/