Sds-hd nfs

From bwHPC Wiki
Revision as of 17:25, 29 September 2017 by S Siebler (talk | contribs)
Jump to navigation Jump to search

Using NFSv4 for UNIX client

Attention: To access data served by SDS@hd, you need a Service Password. Please set your Service Password under following site: https://bwservices.uni-heidelberg.de

Prequisites

NFS access to the SDS@hd service is machine-based. This means that each nfs client has to be enabled individually for the service (and thus access to one or more storage projects).

  • In order for the Kerberos authentication to work, a properly synchronized time must be set on each nfs client, i.e. by:
ntpdate ntp01.urz.uni-heidelberg.de
  • The local hostname of the client must match the valid DNS hostname, as the credentials for Kerberos are only valid for this
  • Valid access data for the nfs-client (keytab). These can be obtained directly from the SDS@hd support team after registration of the machine
  • (optional) A CA certificate for bwservices.uni-heidelberg.de to connect to the LDAP. This can be downloaded directly *here* .


Authentication for data access via NFSv4 is performed using Kerberostickets. This requires a functioning Kerberos environment on the client.

NFS & Kerberos Configuration:

You have to install the following packages on your client machine and update some configuration files, to enable nfs with kerberos authentication.

RedHat/CentOS:

> yum install krb5-workstation nfs-utils nfs4-acl-tools

edit the file: '/etc/sysconfig/nfs' and change:
        NEED_IDMAPD=yes
        NEED_GSSD=yes
close and save the file

Debian/Ubuntu:

> apt-get install krb5-user nfs-common nfs4-acl-tools nfs-server

edit the file: '/etc/default/nfs-common' and change:
        NEED_IDMAPD=yes
        NEED_GSSD=yes
close and save the file

/etc/krb5.conf:

        [libdefaults]
        default_realm = BWSERVICES.UNI-HEIDELBERG.DE

        [realms]
        BWSERVICES.UNI-HEIDELBERG.DE= {
          kdc = bwservices.uni-heidelberg.de
          admin_server = bwservices.uni-heidelberg.de
         }
        [domain_realm]
         .uni-heidelberg.de = BWSERVICES.UNI-HEIDELBERG.DE
         uni-heidelberg.de = BWSERVICES.UNI-HEIDELBERG.DE

The keytab belonging to the machine must then be stored as /etc/krb5.keytab. You get this keytab from SDS@hd support team .

mount a nfs share

The usual restrictions for mounting drives under Linux are valid. Usually this can only be done by the superuser "root". For detailed information, please contact the system administrator of your system.

After successfull configuration you can mount your SDS@hd share with the following commands:

> mkdir mountpoint
> mount -t nfs4 -o sec=krb5 lsdf02export.urz.uni-heidelberg.de:/gpfs/lsdf02/ mountpoint

access your data

Attention! The access can not be done as root user, because root uses the Kerberosticket of the machine, which does not have data access!

To access your data on SDS@hd you need an valid kerberos ticket:

> kinit hd_xy123
Password for hd_xy123@BWSERVICES.UNI-HEIDELBERG.DE: 
> klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: hd_xy123@BWSERVICES.UNI-HEIDELBERG.DE

Valid starting       Expires              Service principal
20.09.2017 04:00:01  21.09.2017 04:00:01  krbtgt/BWSERVICES.UNI-HEIDELBERG.DE@BWSERVICES.UNI-HEIDELBERG.DE
        renew until 29.09.2017 13:38:49

> ls mountpoint
sd16j007  sd17c010  sd17d005

renew a kerberos ticket

Because a kerberos ticket has a limited lifetime (default: 10 hours, maximum 24 hours) for security reasons, you have renew your ticket before it expires to prevent access lost.

> kinit -R

ID Mapping

~ to be continued ~