Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.3. Setting up NFS

4.3.1. Setting up a Kerberized NFS Server

  1. If the NFS host machine has not been added as a client to the IPA domain, then create the host entry.
  2. Create the NFS service entry in the IPA domain.
  3. Generate an NFS service keytab for the NFS server. If this command is run on the NFS server, then save the keys directly to the host keytab. For example:
    # ipa-getkeytab -s server.example.com -p nfs/nfs-server.example.com -k /etc/krb5.keytab -e des-cbc-crc

    Note

    Only DES keys are supported on Red Hat Enterprise Linux 5.
    If this command is run on a different machine:
    1. Save the keytab to a temporary file. For example:
      ... -k /tmp/nfs.keytab
    2. Copy the keytabs over to the NFS machine.
    3. Set the file permissions to 0700.
    4. On the NFS host machine, add the service key to the keytab file.
      #  (  echo rkt /tmp/nfs.keytab; echo wkt /etc/krb5.keytab) |ktutil
  4. Install the NFS packages. For example:
    # yum install nfs-utils
  5. Edit the krb5.conf file to allow weak crypto. This is required for every NFS client if any client in the domain will use older encryption options like DES.
    # vim /etc/krb5.conf
    
    allow_weak_crypto = true
  6. Edit the NFS server configuration to use NFSv4 security by uncommenting the SECURE_NFS line.
    # vim /etc/sysconfig/nfs
    
    SECURE_NFS="yes"
  7. If the NFS server and client are in different DNS domains, then configure the NFS domain.
    # vim /etc/idmapd.conf
    
    Domain = example.com
  8. Edit the /etc/exports file and add the Kerberos information:
    /export  *(rw,sec=sys:krb5:krb5i:krb5p)
    
  9. Restart the NFS server.
    # service nfs restart
  10. Configure the NFS server as an NFS client, following the directions in Section 4.3.2, “Setting up a Kerberized NFS Client”.

4.3.2. Setting up a Kerberized NFS Client

  1. If the NFS client is not enrolled as a client in the IPA domain, then set up the required host entries.
    1. Create the host entry.
    2. Generate host keytab for the NFS client. If this command is run on the NFS clien, then save the keys directly to the host keytab. For example:
      # ipa-getkeytab -p host/nfs-client-server.example.com@EXAMPLE.COM -k /etc/krb5.keytab -e des-cbc-crc

      Note

      Only DES keys are supported on Red Hat Enterprise Linux 5.
      If this command is run on a different machine:
      1. Save the keytab to a temporary file. For example:
        ... -k /tmp/nfs.keytab
      2. Copy the keytabs over to the NFS machine.
      3. Set the file permissions to 0700.
      4. On the NFS host machine, add the service key to the keytab file.
        # ( echo rkt /root/nfs-client.keytab; echo wkt /etc/krb5.keytab) |ktutil
  2. Edit the krb5.conf file to allow weak crypto. This is required for every client if any client in the domain will use older encryption options like DES.
    # vim /etc/krb5.conf
    
    allow_weak_crypto = true
  3. Edit the NFS common configuration to enable client-side secure NFS, by uncommenting the SECURE_NFS line.
    # vim /etc/sysconfig/nfs
    
    SECURE_NFS="yes"
  4. If the NFS server and client are in different DNS domains, then configure the NFS domain. The idmapd.conf must be the same on the NFS client as it is on the NFS server.
    # vim /etc/idmapd.conf
    
    Domain = example.com
  5. Start the GSS daemon.
    # service rpc.gssd start
  6. Mount the directory.
    # echo "$NFSSERVER:/this /mnt/this nfs4 sec=krb5i,rw,proto=tcp,port=2049"  >>/etc/fstab
    # mount -av