NFS kasutamine Debianiga
Sisukord
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
Lisaks tuleb NFS serveri seadistusfailis /etc/exports kirjeldada, milliseid kohalikke katalooge NFS server võrku jagab ja milliste ligipääsupiirangutega. Nt selliste omadustega ressursside
* 192.168.10.0/24 võrgu arvutid saavad ..
väljajagamine toimub sellise seadistusfailiga
# cat /etc/exports /srv/data 192.168.10.0/24(rw,no_root_squash,async,no_subtree_check)
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
Kerberoses tuleb registreerida kaks osalist öeldes
Kerberose ettevalmistamine
Eeldame, et on üldiselt on Kerberose kasutamine juurutatud, st kasutada on
- Kerberose server
- nimeserver
NFSv4 serveri ettevalmistamine
NFSv4 serverisse tuleb paigaldada paketid
# apt-get install nfs-kernel-server krb5-user
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
NFSv4 kliendis ressursi külge monteerimine
# mount -t nfs4 -o sec=krb5p debian-testing-kdc.auul:/homes /srv/homes
või /etc/fstab failis reaga
debian-testing-kdc:/homes /srv/homes nfs4 rw,users,sec=krb5p 0 0
Kasulikud lisamaterjalid
- http://wiki.debian.org/NFS/Kerberos
- NFS
- http://en.wikipedia.org/wiki/Network_File_System_(protocol)
- https://help.ubuntu.com/community/NFSv4Howto
- http://nfsv4.bullopensource.org/doc/kerberosnfs/krbnfs_howto.pdf
- http://www.cs.rug.nl/~jurjen/ApprenticesNotes/ch29s08.html
- MIT Kerberose kasutamine Debianiga