Erinevus lehekülje "NFS kasutamine Debianiga" redaktsioonide vahel

Allikas: Kuutõrvaja
(Kerberose ettevalmistamine)
(NFSv3 kasutamine)
39. rida: 39. rida:
 
===NFSv3 kasutamine===
 
===NFSv3 kasutamine===
  
NFSv3 võimaldab ühe arvuti failisüsteemi kasutada teisest arvutist kusjuures kliendi autentimine toimub ip aadressi ja kasutaja UID põhiselt.
+
NFSv3 võimaldab ühe arvuti failisüsteemi kasutada teisest arvutist, kusjuures kliendi autentimine toimub ip aadressi ja kasutaja UID põhiselt.
  
 
====NFSv3 server====
 
====NFSv3 server====
  
Lisaks tuleb NFS serveri seadistusfailis /etc/exports kirjeldada, milliseid kohalikke katalooge NFS server võrku jagab ja milliste ligipääsupiirangutega. Nt selliste omadustega ressursside
+
NFS serveri seadistusfailis /etc/exports kirjeldatakse, milliseid katalooge oma failisüsteemist NFS server võrku jagab ja milliste ligipääsupiirangutega. Nt selline rida
  
   * 192.168.10.0/24 võrgu arvutid saavad ..
+
   # cat /etc/exports
 +
  /srv/home 192.168.10.0/24(rw,no_root_squash,async,no_subtree_check)
  
väljajagamine toimub sellise seadistusfailiga
+
jagab välja selliste omadustega ressursi
  
  # cat /etc/exports
+
* /srv/home - milline kataloog võrku jagatakse
  /srv/data 192.168.10.0/24(rw,no_root_squash,async,no_subtree_check)
+
* 192.168.10.0/24 - võrgu arvutid saavad kasutada
 +
* rw - kataloog on kasutajatele loetav ja kirjutatav
 +
* no_root_squash - nfs kliendi juurkasutajal on nfs ressursi suhtes nö tavalised juurkasutaja privileegid
 +
* async - nfs failisüsteemi kasutatakse asünkroonselt, st nfs klient ei oota nfs serverilt kinnitust, et muudatused on jõudnud serveri failisüsteemi
  
 
====NFSv3 klient====
 
====NFSv3 klient====

Redaktsioon: 23. juuni 2010, kell 20:21

Sissejuhatus

Debian Lenny paketihaldus sisaldab NFSv3 ja NFSv4 tarkvara.

Tööpõhimõte

NFS (Network File System) võimaldab ühe arvuti failisüsteemi kasutada teisest arvutist. NFS serveri ülesanne on jagada võrgus olevatele NFS klientidele serveri failisüsteemi sealjuures kontrollitakse, millisele osale NFS serveri failisüsteemist millised kliendid ligi pääsevad ja milliste privileegidega.

NFS tarkvara paigaldamine

Kasutajal ei ole vaja midagi ise seadistama asuda, aga infoks, et Debian Lenny tuum on seadistatud NFS osas selliselt

 # grep NFS /boot/config-2.6.26-1-686 
 CONFIG_NFS_FS=m
 CONFIG_NFS_V3=y
 CONFIG_NFS_V3_ACL=y
 CONFIG_NFS_V4=y
 CONFIG_NFSD=m
 CONFIG_NFSD_V2_ACL=y
 CONFIG_NFSD_V3=y
 CONFIG_NFSD_V3_ACL=y
 CONFIG_NFSD_V4=y
 CONFIG_NFS_ACL_SUPPORT=m
 CONFIG_NFS_COMMON=y
 CONFIG_NCPFS_NFS_NS=y

NFS server

NFS serveri tarkvara esineb kahel kujul, nfs-user-server ja nfs-kernel-server, antud juhtumil tutvustatakse nfs-kernel-serveri kasutamist. Serveri tarkvara paigaldamiseks tuleb öelda

 # apt-get install nfs-kernel-server

NFS klient

NFS kliendile vajaliku tarkvara paigaldamiseks tuleb öelda

# apt-get install nfs-common

NFSv3 kasutamine

NFSv3 võimaldab ühe arvuti failisüsteemi kasutada teisest arvutist, kusjuures kliendi autentimine toimub ip aadressi ja kasutaja UID põhiselt.

NFSv3 server

NFS serveri seadistusfailis /etc/exports kirjeldatakse, milliseid katalooge oma failisüsteemist NFS server võrku jagab ja milliste ligipääsupiirangutega. Nt selline rida

 # cat /etc/exports
 /srv/home 192.168.10.0/24(rw,no_root_squash,async,no_subtree_check)

jagab välja selliste omadustega ressursi

  • /srv/home - milline kataloog võrku jagatakse
  • 192.168.10.0/24 - võrgu arvutid saavad kasutada
  • rw - kataloog on kasutajatele loetav ja kirjutatav
  • no_root_squash - nfs kliendi juurkasutajal on nfs ressursi suhtes nö tavalised juurkasutaja privileegid
  • async - nfs failisüsteemi kasutatakse asünkroonselt, st nfs klient ei oota nfs serverilt kinnitust, et muudatused on jõudnud serveri failisüsteemi

NFSv3 klient

Ressursi monteerimiseks sobib öelda

# mount 10.0.9.19:/srv/nfs /srv/nfs

või lisada /etc/fstab'i rida

10.0.9.19:/srv/nfs /srv/nfs nfs defaults 0 0

NFSv4 kasutamine ilma Kerberoseta

NFSv4 kasutamisel võrrelded varasema versiooniga on iseloomulik

  • kliendi ja serveri poolel peab töötama idmapd deemon
  • väljajagatud ressursi poole pöördumisel kasutatakse nö virtuaalset juurikat, mida seadistusfailis tähistab fsid=0

NFSv4 server

Seadistusfailis /etc/default/nfs-common peab sisalduma rida

NEED_IDMAPD=yes

Seadistusfailis /etc/exports näidatakse, millised ressursid kuidas välja jagatakse, nt

/srv       192.168.10.0/24(rw,fsid=0,insecure,no_subtree_check,async)
/srv/home  192.168.10.0/24(rw,nohide,insecure,no_subtree_check,async)

Muudatuste kehtestamiseks tuleb öelda

# /etc/init.d/nfs-kernel-server restart

NFSv4 klient

Seadistusfailis /etc/default/nfs-common peab sisalduma rida

NEED_IDMAPD=yes

Serveri ressursi monteerimiseks tuleb öelda nt

# mount -t nfs4 nfs-server:/home /home

NFSv4 kasutamine Kerberosega

NFSv4 üks oluline eelis varasemate versioonide ees on võimalus kasutada teda koos Kerberosega ja korraldada nii oluliselt turvalisem andmevahetus.

Tööpõhimõte

Olgu skeemis kolm osalist

  • Kerberose server
  • Failiserver nfs-server.loomaaed
  • Failiserveri klient nfs-klient.loomaaed
     kerberos.loomaaed 
          ___
         |   | krb5kdc - 88/tcp
         |___| kadmind - 749/tcp
           |   /etc/krb5kdc/principal
           |
       ----|----------|-------------------------|---
                      |                         |
                    __|__                     __|__
                   |     | /tmp/krb5cc_1000  |     |  /etc/krb5.keytab
                   |_____|                   |_____|

              nfs-klient.loomaaed        nfs-server.loomaaed

Kerberose ettevalmistamine

Eeldame, et käesoleva teksti kasutajal on üldiselt on Kerberose kasutamisest ettekujutus olemas, nt teksti MIT Kerberose kasutamine Debianiga põhjal, ja Kerberose server on juurutatud.

Lisaks tuleb Kerberose serveri seadistusfaili /etc/krb5.conf sektsiooni [libdefaults] lisada rida

[libdefaults]
  ....
  allow_weak_crypto = true

ja muudatuste kehtestamiseks öelda

# /etc/init.d/krb5-admin-server restart
# /etc/init.d/krb5-kdc restart

NFSv4 serveri ettevalmistamine

NFSv4 serverisse tuleb lisaks paigaldada paketid

# apt-get install nfs-kernel-server krb5-config krb5-user libkadm55

ning seadistada /etc/krb5.conf faili sisu nt nii nagu Kerberose serveris. Lisaks tuleb registreerida Kerberose andmebaasis NFS teenusele vastav osapool öeldes NFS serveris

# kadmin -p root/admin -q "addprinc -randkey nfs/nfs-server.loomaaed"

Seejärel tuleb kopeerida NFS serveri failisüsteemi NFS serverile vastav saladus

# kadmin -p root/admin -q "ktadd -e des-cbc-crc:normal -k /etc/krb5.keytab nfs/nfs-server.loomaaed"

NFS serveri seadistusfailis /etc/default/nfs-kernel-server peab sisalduma rida

NEED_SVCGSSD=yes

ja seadistusfailis /etc/default/nfs-common rida

NEED_IDMAPD=yes

NFS tuleb ressurss välja jagada nt selliselt

# cat /etc/fstab
/srv/nfs4        gss/krb5p(rw,sync,fsid=0,insecure,no_subtree_check)
/srv/nfs4/homes  gss/krb5p(rw,nohide,sync,insecure,no_subtree_check)

kusjuures gss/krb5p kohal saab kasutada selliseid väärtusi

  • gss/krb5 - autentimine
  • gss/krb5i - terviklikkus
  • gss/krb5p - privaatsus

Seadistuste kehtestamiseks tuleb restartida nfs-kernel-server öeldes

# /etc/init.d/nfs-kernel-server restart
...
Exporting directories for NFS kernel daemon....
Starting NFS kernel daemon: nfsd svcgssd.

NFSv4 kliendis ressursi külge monteerimine

NFSv4 klienti tuleb lisaks paigaldada paketid

# apt-get install nfs-kernel-common krb5-config krb5-user libkadm55

ning seadistada /etc/krb5.conf faili sisu nt nii nagu Kerberose serveris. Lisaks tuleb registreerida Kerberose andmebaasis NFS teenusele vastav osapool öeldes NFS serveris

# kadmin -p root/admin -q "addprinc -randkey nfs/nfs-klient.loomaaed"

Seejärel tuleb kopeerida NFS kliendi failisüsteemi NFS kliendile vastav saladus

# kadmin -p root/admin -q "ktadd -e des-cbc-crc:normal -k /etc/krb5.keytab nfs/nfs-klient.loomaaed"

NFS kliendi seadistusfailis /etc/default/nfs-common peavad sisalduma read

NEED_IDMAPD=yes
NEED_GSSD=yes

Muudatuste kehtestamiseks tuleb uuesti startida nfs-commons öeldes

# /etc/init.d/nfs-common restart
...
Starting NFS common utilities: statd idmapd gssd.

Ressursi kasutamiseks sobib juurkasutajal öelda

# mount -t nfs4 -o sec=krb5p nfs-server.loomaaed:/home /srv/home

või kasutada NFS kliendi /etc/fstab failis rida

nfs-server.loomaaed:/home /srv/home nfs4 rw,sec=krb5p 0 0

Ja seejärel saab kasutaja oma TGT pileti olemasolul pääseda juurde oma nfs andmetele kataloogi /srv/home/priit

Alternatiiviks on, et kasutaja ise ühendab oma ressurssi külge nfs serverist

$ mount -t nfs4 -o sec=krb5p,users nfs-server.loomaaed:/home/priit /home/priit/nfs

Kasulikud lisamaterjalid