9.4. Securing NFS
	NFS works well for sharing entire file systems with a large number of
	known hosts in a largely transparent manner. Many users accessing files
	over an NFS mount may not be aware that the file system they are using is
	not local to their system. However, with ease of use comes a variety of
	potential security problems.
      
	The following points should be considered when exporting NFS file
	systems on a server or mounting them on a client. Doing so will minimize
	NFS security risks and better protect data on the server.
      
9.4.1. Host Access
	  NFS controls who can mount an exported file system based on the host
	  making the mount request, not the user that will actually use the file
	  system. Hosts must be given explicit rights to mount the exported file
	  system. Access control is not possible for users, other than file and
	  directory permissions. In other words, once a file system is exported
	  via NFS, any user on any remote host connected to the NFS server can
	  access the shared data. To limit the potential risks, administrators
	  can only allow read-only access or squashing users to a common user
	  and groupid. But these solutions may prevent the NFS share from being
	  used in the way it was originally intended.
	
	  Additionally, if an attacker gains control of the DNS server used by
	  the system exporting the NFS file system, the system associated with a
	  particular hostname or fully qualified domain name can be pointed to
	  an unauthorized machine. At this point, the unauthorized machine
	  is the system permitted to mount the NFS share,
	  since no username or password information is exchanged to provide
	  additional security for the NFS mount. The same risks hold true to
	  compromised NIS servers, if NIS netgroups are used to allow certain
	  hosts to mount an NFS share. By using IP addresses in
	  /etc/exports, this kind of attack is more
	  difficult.
	
	  Wildcards should be used sparingly when granting exporting NFS
	  shares as the scope of the wildcard may encompass more systems than
	  intended.
	
	  For more information on securing NFS, refer to the chapter titled
	  Server Security in the
	  Red Hat Linux Security Guide.
	
9.4.2. File Permissions
	  Once the NFS file system is mounted read-write by a remote host, the
	  only protection each shared file has is its permissions. If two users
	  that share the same userid value mount the same NFS file system, they
	  will be able to modify each others files. Additionally, anyone logged
	  in as root on the client system can use the su -
	  command to become a user who could access particular files via the NFS
	  share. For more on NFS and userid conflicts, refer to the chapter
	  titled Managing Accounts and Groups in the
	  Red Hat Linux System Administration Primer.
	
	  The default behavior when exporting a file system via NFS is to use
	  root squashing. This sets the userid of anyone
	  accessing the NFS share as the root user on their local machine to a
	  value of the server's nobody account. Never turn off root squashing.
	
	  If exporting an NFS share read-only, consider using the
	  all_squash option, which makes every user accessing
	  the exported file system take the userid of the nobody user.