Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • OS
  • Mrežni fajl servis. Kako je sve počelo

Mrežni fajl servis. Kako je sve počelo

Protokol Network File Server (NFS) je otvoreni standard za pružanje korisnicima daljinskog pristupa sistemima datoteka. Njegovi centralizirani sistemi datoteka olakšavaju obavljanje svakodnevnih zadataka kao što su sigurnosne kopije ili skeniranje virusa, a konsolidovane particije diska se lakše održavaju od mnogih malih i distribuiranih.

Pored pružanja mogućnosti centralizovanog skladištenja, NFS se pokazao veoma korisnim za druge aplikacije, uključujući klijente bez diska i tanke klijente, mrežno klasterisanje i međuverski softver za saradnju.

Bolje razumijevanje kako samog protokola tako i detalja njegove implementacije olakšat će rješavanje praktičnih zadataka. Ovaj članak se fokusira na NFS i sastoji se od dva logična dijela: prvo opisuje sam protokol i ciljeve postavljene tokom njegovog razvoja, a zatim implementaciju NFS-a na Solaris i UNIX.

GDJE SVE POČELO...

NFS je razvio Sun Microsystems i pojavio se na Internetu 1989. godine kao RFC 1094 pod naslovom Specifikacija protokola mrežnog sistema datoteka (NFS). Zanimljivo je napomenuti da je strategija Novell-a u to vrijeme bila daljnje poboljšanje usluga datoteka. Sve do nedavno, prije nego što je pokret otvorenog koda dobio zamah, Sun nije želio otkriti tajne svojih mrežnih rješenja, ali čak i tada, kompanija je shvatila važnost interoperabilnosti sa drugim sistemima.

RFC 1094 je sadržavao dvije originalne specifikacije. U vrijeme objavljivanja, Sun je već razvijao sljedeću, treću verziju specifikacije, koja je navedena u specifikaciji protokola RFC 1813 NFS verzije 3. Verzija 4 ovog protokola je definisana u RFC 3010 NFS Verzija 4 protokola.

NFS se široko koristi na svim tipovima UNIX hostova, Microsoft i Novell mrežama i IBM rješenjima kao što su AS400 i OS/390. Nepoznat izvan kraljevstva mreže, NFS je možda najšire korišteni mrežni sistem datoteka nezavisnih od platforme.

PROFESOR JE BIO UNIX

Iako je NFS sistem nezavisan od platforme, UNIX je njegov predak. Drugim riječima, hijerarhija arhitekture i metode pristupa datotekama, uključujući strukturu sistema datoteka, kako identificirati korisnike i grupe i kako raditi s datotekama, vrlo su slični UNIX sistemu datoteka. Na primjer, NFS sistem datoteka, koji je po strukturi identičan UNIX sistemu datoteka, montira se direktno na njega. Kada radite sa NFS-om na drugim operativnim sistemima, preslikavaju se korisnički akreditivi i dozvole za fajlove.

NFS

NFS je dizajniran za upotrebu u klijent-server arhitekturi. Klijent pristupa sistemu datoteka koji izvozi NFS server preko tačke montiranja na klijentu. Ovaj pristup je obično transparentan za klijentsku aplikaciju.

Za razliku od mnogih klijent/server sistema, NFS koristi Remote Procedure Calls (RPC) za razmenu informacija. Obično klijent uspostavlja vezu sa unapred određenim portom, a zatim, u skladu sa specifičnostima protokola, šalje zahtev za izvođenje određene radnje. U slučaju udaljenog poziva procedure, klijent kreira poziv procedure i zatim ga šalje serveru na izvršenje. Detaljan opis NFS-a će biti predstavljen u nastavku.

Kao primjer, pretpostavimo da je klijent montirao usr2 direktorij na lokalni korijenski sistem datoteka:

/ root / usr2 / -> daljinski: / root / usr /

Ako su klijentskoj aplikaciji potrebni resursi ovog direktorija, ona jednostavno šalje zahtjev operativnom sistemu za nju i za ime datoteke, a ovaj odobrava pristup preko NFS klijenta. Kao primjer, uzmite jednostavnu UNIX naredbu cd, koja "ne zna ništa" o mrežnim protokolima. Zapovjedi

CD / root / usr2 /

će postaviti radni direktorij na udaljeni sistem datoteka, "a da ni ne zna" (korisniku ni ovo nije potrebno) da je sistem datoteka udaljen.

Nakon prijema zahtjeva, NFS server će provjeriti da li korisnik ima pravo da izvrši traženu radnju i, ako je odgovor pozitivan, izvršiće je.

PRIBLIŽIMO SE

Iz perspektive klijenta, proces lokalnog montiranja udaljenog sistema datoteka pomoću NFS-a uključuje nekoliko koraka. Kao što je pomenuto, NFS klijent će izdati poziv udaljene procedure za izvršenje na serveru. Imajte na umu da je na UNIX-u klijent jedan program (komanda mount), dok je server zapravo implementiran kao nekoliko programa sa sljedećim minimalnim skupom: port maper, mount daemon i NFS server...

U početku, komanda za montiranje klijenta stupa u interakciju sa serverskom uslugom prevođenja porta, koja osluškuje zahteve na portu 111. Većina implementacija postavljanja klijenta podržava više verzija NFS-a, što povećava verovatnoću pronalaženja zajedničke verzije protokola između klijenta i servera. Pretraga se vrši počevši od najstarije verzije, tako da kada se pronađe zajednička, ona će automatski postati najnovija verzija koju podržavaju klijent i server.

(Predstavljeni materijal je fokusiran na treću verziju NFS-a, budući da je trenutno najraširenija. Četvrta verzija još nije podržana u većini implementacija.)

Usluga prevođenja portova servera odgovara na zahtjeve na osnovu podržanog protokola i porta na kojem je pokrenut demon za montiranje. Program klijenta za montiranje prvo se povezuje sa demonom za montiranje servera, a zatim mu RPC šalje komandu mount. Ako je ova procedura uspješna, klijentska aplikacija se povezuje na NFS server (port 2049) i, koristeći jednu od 20 udaljenih procedura definiranih u RFC 1813 i navedenih u Tabeli 1, dobija pristup udaljenom sistemu datoteka.

Značenje većine naredbi je intuitivno i ne izaziva nikakve poteškoće sistemskim administratorima. Donja lista tcdump ilustruje naredbu za čitanje koju generiše UNIX cat naredba za čitanje datoteke pod nazivom test-file:

10:30: 16.012010 eth0> 192.168.1.254. 3476097947> 192.168.1.252.2049: 144 traženje fh 32.0 / 224145 "test-datoteka" 10: 30: 16.012010 eth0> 192.168.1.254. 3476097947> 192.168.1.252.2049: 144 pronalaženje fh 32,0 / 224145 "test-file" 10: 30: 16,012729 eth0 192.168.1.254.3476097947: odgovarati ok 128 pronalaženje FH 32,0 / 224.307 (DF) 10:30: 16,012729 eth0 192.168. 1.254.3476097947: odgovor ok 128 traži fh 32.0 / 224307 (DF) 10: 30: 16.013124 eth0> 192.168.1.254. 3492875163> 192.168.1.252.2049: 140 čitanje fh 32.0 / 224307 4096 bajtova @ 0 10: 30: 16.013124 eth0> 192.168.1.252.168.1.2. 3492875163> 192.168.1.252.2049: 140 čitati fh 32,0 / 224.307 4096 bajtova @ 0 10: 30: 16,013650 eth0 192.168.1.254.3492875163: odgovarati ok 108 čitanja (DF) 10: 30: 16,013650 eth0 192.168.1.254.3492875163: prikazuje ok 108 pročitaj (DF)

NFS se tradicionalno implementira preko UDP-a. Međutim, neke verzije NFS-a podržavaju TCP (TCP podrška je definirana u specifikaciji protokola). Glavna prednost TCP-a je efikasniji mehanizam retransmisije u nepouzdanim mrežama. (U slučaju UDP-a, ako dođe do greške, onda se kompletna RPC poruka, koja se sastoji od nekoliko UDP paketa, ponovo šalje. Ako postoji TCP, ponovo se šalje samo polomljeni dio.)

PRISTUP U NFS

NFS implementacije općenito podržavaju četiri načina dodjele prava pristupa: putem atributa korisnika/datoteke, na nivou zajedničkog resursa, na nivou glavnog čvora i kombinacijom drugih metoda pristupa.

Prva metoda se oslanja na UNIX-ov ugrađeni sistem dozvola za datoteke za pojedinačnog korisnika ili grupu. Da bi se pojednostavilo održavanje, korisnički i grupni identiteti bi trebali biti dosljedni na svim NFS klijentima i serverima. Sigurnost treba pažljivo razmotriti: NFS može nehotice odobriti pristup datotekama koji nisu bili predviđeni kada su kreirani.

Zajednički pristup resursima vam omogućava da ograničite prava da dozvolite samo određene radnje, bez obzira na vlasništvo datoteke ili UNIX privilegije. Na primjer, rad sa NFS sistemom datoteka može biti ograničen samo na čitanje. Većina NFS implementacija vam omogućava da dodatno ograničite pristup zajedničkim resursima na određene korisnike i/ili grupe. Na primjer, grupi "Ljudski resursi" je dozvoljeno da vidi informacije i ništa više.

Pristup glavnom čvoru dozvoljava samo da se sistem datoteka montira na određene čvorove, što je generalno dobra ideja jer se sistemi datoteka mogu lako kreirati na bilo kojem čvoru koji podržava NFS.

Kombinovani pristup jednostavno kombinuje gore navedene tipove (na primer, pristup na nivou zajedničkih resursa sa pristupom dodeljenim određenom korisniku) ili omogućava korisnicima da rade sa NFS samo sa određenog čvora.

NFS U PINGVINSKOM STILU

Predstavljeni materijal koji se odnosi na Linux baziran je na Red Hatu 6.2 sa 2.4.9 kernelom koji se isporučuje s paketom 0.1.6 nfs-utils. Postoje novije verzije: u vrijeme pisanja ovog teksta, najnovije ažuriranje paketa nfs-utils je 0.3.1. Može se preuzeti na:.

Paket nfs-utils sadrži sljedeće binarne datoteke: exportfs, lockd, mountd, nfsd, nfsstat, nhfsstone, rquotad, showmount i statd.

Nažalost, podrška za NFS ponekad je zbunjujuća za Linux administratore, jer dostupnost ove ili one funkcionalnosti direktno ovisi o brojevima verzija i kernela i nfs-utils paketa. Na sreću, situacija u ovoj oblasti se trenutno popravlja: najnoviji kompleti za distribuciju uključuju najnovije verzije oba. Za prethodna izdanja, odeljak 2.4 NFS-HOWTO-a pruža kompletnu listu sistemskih funkcionalnosti dostupnih za svaku kombinaciju kernela i nfs-utils paketa. Programeri održavaju kompatibilnost paketa sa prethodnim verzijama sa jakim fokusom na sigurnost i ispravke grešaka.

NFS podršku treba pokrenuti u vrijeme kompilacije kernela. Ako je potrebno, mogućnost NFS verzije 3 također treba dodati kernelu.

Za distribucije koje podržavaju linuxconf, lako je konfigurirati NFS usluge i za klijente i za servere. Međutim, brz način za instaliranje NFS-a pomoću linuxconf-a ne pruža informacije o tome koje su datoteke kreirane ili uređene, što je veoma važno da administrator zna kako bi razumio situaciju u slučaju kvara sistema. Linuxova NFS arhitektura je slabo povezana sa BSD-om, tako da je administratorima sa BSD-om, Sun OS 2.5 ili starijim verzijama NFS-a lako pronaći potrebne datoteke i programe podrške.

Datoteka / etc / exports, kao iu ranijim verzijama BSD-a, definira sisteme datoteka kojima je NFS klijentima dozvoljen pristup. Osim toga, sadrži niz dodatnih funkcija koje se odnose na pitanja upravljanja i sigurnosti, dajući administratoru sredstva za fino podešavanje. To je tekstualna datoteka koja se sastoji od unosa, praznih ili komentiranih redova (komentari počinju s #).

Recimo da želimo klijentima dati pristup samo za čitanje / home direktoriju na Lefty čvoru. Sljedeći unos će odgovarati ovome u / etc / exports:

/ dom (ro)

Ovdje moramo reći sistemu koje direktorije ćemo učiniti dostupnima pomoću demona mount-a rpc.mountd:

# exportfs -r exportfs: Ime hosta nije navedeno u / home (ro), upišite * (ro) da biste izbjegli upozorenje #

Kada se pokrene, naredba exportfs ispisuje upozorenje da / etc / exports ne ograničava pristup određenom čvoru i kreira odgovarajući unos u / var / lib / nfs / etab iz / etc / exports koji govori koji se resursi mogu vidjeti s cat :

# cat / var / lib / nfs / etab / home (ro, async, wdelay, hide, secure, root_ squash, no_all_squash, subtree_check, secure_locks, mapiranje = identitet, anonuid = -2, anongid = -2)

Ostale opcije, navedene u etab, uključuju zadane postavke koje koristi NFS. Detalji će biti opisani u nastavku. Da biste odobrili pristup / home direktoriju, moraju se pokrenuti odgovarajuće NFS usluge:

# portmap # rpc.mountd # rpc.nfsd # rpc.statd # rpc.rquotad

U bilo kom trenutku nakon pokretanja demona mount (rpc.mountd), možete saznati o pojedinačnim datotekama dostupnim za izlaz gledajući sadržaj datoteke /proc/fs/nfs/exports:

# cat / proc / fs / nfs / exports # Verzija 1.0 # Path Client (Flags) # IPs / home 192.168.1.252 (ro, root_squash, async, wdelay) # 192.168.1.252 #

Isto se može pogledati pomoću naredbe showmount s parametrom -e:

# showmount -e Izvezi listu za ljevaka: / home (svi) #

Pokrećući malo ispred sebe, naredba showmount se također može koristiti za identifikaciju svih montiranih sistema datoteka, ili, drugim riječima, za otkrivanje koji su čvorovi NFS klijenti za sistem koji pokreće naredbu showmount. Naredba showmount -a će ispisati sve klijentske tačke montiranja:

# showmount -a Sve tačke montiranja na lijevoj strani: 192.168.1.252:/home #

Kao što je gore navedeno, većina NFS implementacija podržava različite verzije ovog protokola. Linux implementacija vam omogućava da ograničite listu verzija NFS-a za pokretanje navođenjem -N prekidača za demona mount. Na primjer, da pokrenete NFS verziju 3 i samo verziju 3, unesite sljedeću naredbu:

# rpc.mountd -N 1 -N 2

Pronicljivim korisnicima može biti nezgodno što NFS demon (rpc.nfsd) na Linuxu čeka pakete verzije 1 i verzije 2, iako se time postiže željeni efekat nepodržavanja odgovarajućeg protokola. Nadajmo se da će programeri narednih verzija izvršiti potrebne korekcije i da će moći postići veću konzistentnost komponenti paketa u odnosu na različite verzije protokola.

"PLIVAJ SA PINGVINIMA"

Pristup gore konfigurisanom Leftyju, NFS baziranom na Linux sistemu datoteka, zavisi od operativnog sistema klijenta. Instalacioni stil za većinu UNIX operativnih sistema je ili originalni Sun OS i BSD sistemi, ili noviji Solaris. Pošto se ovaj članak fokusira na Linux i Solaris sisteme, pogledajmo Solaris 2.6 klijentsku konfiguraciju u smislu uspostavljanja veze sa Linux verzijom NFS-a koju smo opisali gore.

Funkcije naslijeđene od Solarisa 2.6 olakšavaju njegovo konfiguriranje da djeluje kao NFS klijent. Ovo zahtijeva samo jednu naredbu:

# mount -F nfs 192.168.1.254:/home / tmp / tmp2

Pod pretpostavkom da je prethodna naredba mount bila uspješna, tada će naredba mount bez parametara dati sljedeće:

# mount / on / dev / dsk / c0t0d0s0 čitanje / pisanje / setuid / largefiles na pon 3. septembar 10:17:56 2001 ... ... / tmp / tmp2 na 192.168.1.254:/home read / write / daljinski uključen Pon, Sep 3 23:19:25 2001

Hajde da analiziramo tcpdump izlaz iz Lefty čvora nakon što je korisnik uneo komandu ls / tmp / tmp2 na Sunny čvoru:

# tcpdump host lefty i host sunny -s512 06: 07: 43.490583 sunny.2191983953> lefty.mcwrite.n.nfs: 128 getattr fh Nepoznato / 1 (DF) 06: 07: 43.490583 sunny. 2191983953: odgovor u redu 112 getattr DIR 40755 id 0/0 sz 0x000001000 (DF) 06: 07: 43.491397 sunny.2191983954> lefty.mcwrite.n13.nfs left: Unknown 06: 07: 43.491397. mcwrite.n.nfs> sunny.2191983954: odgovor u redu 120 pristup c0001 (DF) 06: 07: 43.492296 sunny.2191983955> lefty.mcwrite.n.nfs: 152 readdirplus0707 07 07 07 08 06: 07: 43.492417 lefty.mcwrite.n.nfs> sunny.2191983955: odgovor ok 1000 readdirplus (DF)

Vidimo da Sunny traži od ls deskriptor datoteke (fh), na što Lefty odgovara sa OK i vraća strukturu direktorija. Sunny tada provjerava dozvolu za pravo na sadržaj direktorija (132 pristup fh) i prima odgovor dozvole od Leftyja. Sunny zatim čita kompletan sadržaj direktorija koristeći readdirplus rutinu. Pozivi udaljenih procedura opisani su u RFC 1813 i referencirali smo ga na početku ovog članka.

Iako je redoslijed naredbi za pristup udaljenim sistemima datoteka vrlo jednostavan, brojne okolnosti mogu dovesti do pogrešnog montiranja sistema. Tačka montiranja mora već postojati prije nego što se direktorij može montirati, inače se mora kreirati pomoću naredbe mkdir. Obično je jedini uzrok grešaka na strani klijenta nedostatak lokalnog direktorija za montiranje. Većina problema sa NFS-om nastaje zbog neusklađenosti između klijenta i servera ili neispravne konfiguracije servera.

Najlakši način za rješavanje problema sa serverom je sa lokacije na kojoj server radi. Međutim, kada neko drugi administrira server umjesto vas, to nije uvijek moguće. Brz način da osigurate da su odgovarajuće serverske usluge ispravno konfigurisane je korištenje naredbe rpcinfo s parametrom -p. Iz Solaris Sunny hosta možete odrediti koji su RPC procesi registrirani na Linux hostu:

# Is naredbom rpcinfo -p 192.168.1.254 program usluga vers proto port 100000 2 TCP 111 rpcbind 100000 2 UDP 111 rpcbind 100024 1 UDP 692 status 100024 1 TCP 694 status 100005 3 UDP 1024 mountd / 100005 3 tcp 1024 mountd 100003 2 UDP 2049 NFS 100003 3 udp 2049 nfs 100021 1 udp 1026 nlockmgr 100021 3 udp 1026 nlockmgr 100021 4 udp 1026 nlockmgr #

Imajte na umu da su informacije o verzioniranju takođe date ovdje, što je prilično korisno kada sustav zahtijeva podršku za različite NFS protokole. Ako bilo koja usluga ne radi na serveru, onda ovu situaciju treba ispraviti. Ako montiranje ne uspije, sljedeća naredba rpcinfo -p će ukazati da je mountd servis na serveru isključen:

# rpcinfo -p 192.168.1.254 program vers proto port service 100000 2 tcp 111 rpcbind ... ... 100021 4 udp 1026 nlockmgr #

Komanda rpcinfo je vrlo korisna za otkrivanje da li je određeni udaljeni proces aktivan. Opcija -p je najvažnija opcija. Za potpuni pregled funkcija rpcinfo, pogledajte man stranicu.

Još jedan koristan alat je naredba nfsstat. Može se koristiti za otkrivanje da li klijenti zaista pristupaju izvezenom sistemu datoteka, kao i za prikaz statističkih informacija prema verziji protokola.

Konačno, tcpdump je još jedan koristan alat za određivanje uzroka pada sistema:

# tcpdump host lefty i host sunny -s512 tcpdump: slušanje na eth0 06: 29: 51.773646 sunny.2191984020> lefty.mcwrite.n.nfs: 140 lookup fh Nepoznato / 1 "test.c70" (1 "test.c70": 1) lefty.mcwrite.n.nfs> sunny.2191984020: odgovor ok 116 traženje GREŠKA: Nema takve datoteke ili direktorija (DF) 06: 29: 51.774593 sunny.2191984021> lefty.mcwrite.n.nfs getat: f12 (nepoznato: f12) DF) 06: 29: 51.774670 lefty.mcwrite.n.nfs> sunny.2191984021: odgovor ok 112 getattr DIR 40755 id 0/0 sz 0x000001000 (DF) 06: 1984021. : 140 traži fh Nepoznato / 1 "test.c" (DF) 06: 29: 51.775357 lefty.mcwrite.n.nfs> sunny.2191984022: odgovor ok 116 traži GREŠKA: Nema takve datoteke ili direktorija (DF) 06:29: 51.776029 sunny.2191984023> lefty.mcwrite.n.nfs: 184 kreiraj fh Nepoznato / 1 "test.c" (DF) 06: 29: 51.776169 lefty.mcwrite.n.nfs> kreiraj sunny.20192:9 rep8.21231 Dozvola odbijena (DF)

Gornji listing, dobijen nakon izvršavanja naredbe touch test.c, odražava sljedeći slijed radnji: prvo, touch komanda pokušava pristupiti datoteci pod nazivom test.c, zatim traži direktorij s istim imenom, a nakon neuspješnog pokušava da kreira fajl test.c, što takođe ne dovodi do uspeha.

Kada je sistem datoteka montiran, najčešće greške se odnose na normalne UNIX dozvole. Sunčevo korišćenje uid-a ili NIS+ izbegava globalno postavljanje dozvola za sve sisteme datoteka. Neki administratori praktikuju "otvorene" direktorije, gdje se dozvole za čitanje daju "cijelom svijetu". Međutim, ovo treba izbjegavati iz sigurnosnih razloga. Bezbjednosna pitanja na stranu, ipak morate priznati da je ovo loša praksa jer korisnici rijetko kreiraju podatke s namjerom da ih bilo ko može pročitati.

Pristup super korisnika (root) montiranim NFS sistemima datoteka tretira se drugačije. Da bi se izbjegao neograničeni pristup privilegovanom korisniku, zahtjevi od root korisnika se tretiraju kao da su od korisnika ničijeg. Ovaj moćni mehanizam ograničava pristup privilegovanim korisnicima globalno čitljivim i pisanim datotekama.

NFS SERVER SOLARIS VERZIJA

Konfiguriranje Solarisa da djeluje kao NFS server je jednostavno kao i Linux. Međutim, naredbe i lokacije datoteka se malo razlikuju. Kada se Solaris pokrene, kada dostigne nivo pokretanja 3, NFS usluge se automatski pokreću i svi sistemi datoteka se izvoze. Da biste ručno pokrenuli ove procese, unesite naredbu:

# / usr / lib / nfs / mountd

Da pokrenete demona za montiranje i NFS server, unesite:

# / usr / lib / nfs / nfsd

Počevši od 2.6, Solaris više ne koristi datoteku za izvoz za specifikaciju izvezenih sistema datoteka. Fajlovi se sada izvoze pomoću naredbe share. Recimo da želimo da dozvolimo udaljenim hostovima da se montiraju/izvoze/home. Za ovo unesite sljedeću naredbu:

Dijeli -F nfs / izvoz / home

Sigurnosne mjere

SIGURNOST U LINUX-u

Neke NFS sistemske usluge zasnovane na Linuxu imaju dodatni mehanizam za ograničavanje pristupa preko kontrolnih lista ili tabela. Interno, ovaj mehanizam je implementiran pomoću biblioteke tcp_wrapper, koja koristi dvije datoteke za generiranje liste kontrole pristupa: /etc/hosts.allow i / etc / hosts / deny. Sveobuhvatan pregled pravila za rad sa tcp_wrapperom je izvan okvira ovog članka, ali osnovni princip je sljedeći: mapiranje se prvo radi sa etc / hosts.allow, a zatim sa / etc / hosts. poricati. Ako pravilo nije pronađeno, tražena sistemska usluga se ne prikazuje. Da biste zaobišli posljednji zahtjev i pružili vrlo visok nivo sigurnosti, možete dodati sljedeći unos na kraj /etc/hosts.deny:

SVI: Svi

Nakon toga možete koristiti / etc / hosts.allow da postavite ovaj ili onaj način rada. Na primjer, datoteka / etc / hosts. Dozvola koju sam koristio prilikom pisanja ovog članka sadržavala je sljedeće redove:

Lockd: 192.168.1.0/255.255.255.0 mountd: 192.168.1.0/255.255.255.0 portmap: 192.168.1.0/255.255.255.0 rquotad: 192.168.1.0/255.255.255.0 statd: 192.168.1.0/255.255.255.0

Ovo omogućava određenu vrstu pristupa čvorovima prije nego što se odobri pristup na razini aplikacije. Na Linuxu, pristup na razini aplikacije kontrolira /etc/export datoteka. Sastoji se od zapisa u sljedećem formatu:

Izvezeni direktorij (prostor) čvor | mreža (opcije)

"Izvezeni direktorij" je direktorij za koji je nfsd demonu dozvoljeno da obrađuje zahtjeve. "Host | mreža" je čvor ili mreža koja ima pristup izvezenom sistemu datoteka, a "opcije" definiraju ograničenja koja nfsd demon postavlja na korištenje ovog zajedničkog resursa - pristup samo za čitanje ili mapiranje korisničkog id-a...

U sljedećem primjeru, cijeloj domeni mcwrite.net je dat pristup samo za čitanje na /home/mcwrite.net:

/home/mcwrite.net * .mcwrite.net (ro)

Više primjera možete pronaći na stranici priručnika za izvoz.

NFS SIGURNOST U SOLARISU

Na Solarisu, mogućnost pružanja NFS pristupa je slična Linuxu, ali u ovom slučaju ograničenja se postavljaju pomoću specifičnih parametara u naredbi za dijeljenje s prekidačem -o. Sljedeći primjer pokazuje kako omogućiti montiranje /export/mcwrite.net samo za čitanje na bilo kojem hostu u domeni mcwrite.net:

#share -F nfs -o ro = .mcwrite.net / export / mcwrite.net

Man stranica za share_nfs detaljno opisuje kako odobriti pristup korištenjem kontrolnih lista na Solarisu.

Internet resursi

NFS i RPC nisu bez rupa. Općenito, NFS ne treba koristiti na Internetu. Zaštitni zidovi ne bi trebali biti “rupe” pružanjem bilo kakvog NFS pristupa. Pripazite na sve RPC i NFS zakrpe koje se pojave, a brojni izvori sigurnosnih informacija mogu pomoći. Dva najpopularnija izvora su Bugtraq i CERT:

Prvi možete redovno pregledavati u potrazi za potrebnim informacijama ili se pretplatiti na periodični bilten. Drugi pruža, možda, ne tako brze, u poređenju s drugima, informacije, ali u prilično cjelovitom obimu i bez trunke senzacionalizma svojstvenog nekim stranicama posvećenim informacijskoj sigurnosti.

Evo, šta je sljedeće? Kako da gledam filmove i slušam preuzete muzičke fajlove? Da li ih zaista trebate srezati na diskove i na ovaj način prenijeti na računar sa GUI? Ili ih morate kopirati preko sporog SFTP-a? Ne! NFS dolazi u pomoć! Ne, ovo nije serija trkačkih igara, već mrežni sistem datoteka.
Mrežni sistem datoteka (NFS) je mrežni sistem datoteka koji korisnicima omogućava pristup datotekama i direktorijima koji se nalaze na udaljenim računarima kao da su datoteke i direktoriji lokalni. Glavna prednost ovakvog sistema je što pojedinačne radne stanice mogu koristiti manje vlastitog prostora na disku, budući da se zajednički podaci pohranjuju na posebnoj mašini i dostupni su drugim mašinama na mreži. NFS je klijent/server aplikacija. Odnosno, NFS klijent mora biti instaliran na korisnikovom sistemu, a NFS server na računarima koji im obezbjeđuju prostor na disku.

Instaliranje i konfigurisanje NFS servera (192.168.1.2)

1. Instalirajte. Nakon povezivanja preko SSH-a na računar preko servera, ili jednostavno u njegovoj konzoli, unesite:

Sudo apt-get install nfs-kernel-server nfs-common portmap

Ovo će instalirati NFS server kao i potreban portmap paket.

2. Konfiguriranje. Da konfigurišemo listu direktorijuma koje želimo da otvorimo i listu kojoj želimo da ih otvorimo, uredimo datoteku / etc / izvoz :

Sudo nano / etc / izvozi / podaci 192.168.1.1/24 (rw, no_root_squash, async)

U gornjem primjeru otvorili smo direktorij na serveru / data i njegove poddirektorije za zajedničku upotrebu svih računara sa IP-om: 192.168.1.1 - 192.168.1.255 sa pravima čitanja i pisanja.

Drugi primjer:

/ home / serg / 192.168.1.34 (ro, async)

Ovaj primjer čini početni direktorij korisničkog serga dostupnim u načinu samo za čitanje za računar sa IP 192.168.1.34. Svi ostali računari na mreži neće imati pristup ovom direktorijumu.

Dostupne opcije:

  • ro - dozvola samo za čitanje. Ne morate ga specificirati, pošto je instaliran po defaultu;
  • rw - daje klijentima pristup za pisanje;
  • no_root_squash - po defaultu, root korisnik na klijentskoj mašini neće imati pristup otvorenim direktorijumima na serveru. Ovom opcijom uklanjamo ovo ograničenje. Iz sigurnosnih razloga, najbolje je to ne raditi;
  • noaccess - odbija pristup navedenom direktoriju. Može biti korisno ako ste prethodno za sve korisnike mreže postavili pristup određenom direktoriju, a sada želite ograničiti pristup u poddirektorijumu samo na neke korisnike.

Sada morate ponovo pokrenuti nfs-kernel-server:

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

Ako nakon toga želite nešto promijeniti u datoteci / etc / izvoz , zatim da bi promjene stupile na snagu, samo pokrenite sljedeću naredbu:

Sudo exportfs -a

Sve. NFS server je instaliran i konfigurisan. Možete otići do NFS klijenta.

Instaliranje i konfigurisanje NFS klijenta

1. Instalacija. Na terminalu računara koji će se povezati vršimo sljedeće:

Sudo apt-get install portmap nfs-common

2. Podešavanje. Prvo, napravimo direktorij u koji će biti montiran udaljeni folder:

Cd ~ mkdir podaci

Možete montirati na dva načina - svaki put ručno ili pisanjem opcija montiranja u datoteku / etc / fstab.

Metoda 1. Montaža ručno
Napravite tekstualni fajl na radnoj površini ili u nekom drugom folderu:

Nano ~ / desktop \ desktop / nfs-server-connect

Pišemo mu:

#! / bin / bash sudo mount -t nfs -o ro, soft, intr 192.168.1.2:/data ~ / data

Činimo ga izvršnim:

Chmod + x ~ / desktop \ desktop / nfs-server-connect

Sada kada trebam da se povežem sa serverom, pokrećem ovu skriptu u terminalu tako da mogu da unesem lozinku za sudo.

Metoda 2. Dodavanje u / etc / fstab
Otvori / etc / fstab:

Sudo nano / etc / fstab

I dodajte red na kraj datoteke:

192.168.1.2:/data ~ / data nfs rw, hard, intr 0 0

Pažnja! Zamijenite 192.168.1.2:/data s IP ili imenom servera i putanjom do dijeljenog direktorija. Opcije montiranja se mogu mijenjati.

Opcija teškočvrsto vezuje direktorijum na klijentu za server, a ako server padne, može se i vaš računar zamrznuti. Opcija soft, kao što mu naziv govori, nije tako kategoričan.

Nakon što sačuvate datoteku, možete montirati udaljeni folder.

N FS ( Mrežni sistem datoteka) je uglavnom dizajniran za dijeljenje datoteke i foldere između / Unix sistemi iz od Sun Microsystems v 1980 godina... Omogućava vam da montirate lokalne sisteme datoteka preko mreže i udaljene hostove da biste s njima komunicirali kao da su instalirani lokalno na istom sistemu. Korišćenjem NFS, možemo podesiti dijeljenje datoteka između Unix v Linux sistem i Linux za sistem Unix.

Prednosti NFS-a

  1. NFS kreira lokalni pristup udaljenim datotekama.
  2. Koristi standardnu ​​arhitekturu kupac/server za razmjenu datoteka između svih mašina na osnovu * NIX.
  3. Korišćenjem NFS nije neophodno da obe mašine rade na istom OS.
  4. Korišćenjem NFS možemo prilagoditi rješenje centralizovano skladište.
  5. Korisnici dobijaju svoje podaci bez obzira na njihovu fizičku lokaciju.
  6. Automatski ažurirati za nove fajlove.
  7. Novija verzija NFS podržava montažu acl, pseudo kao root.
  8. Može se zaštititi zaštitni zidovi i Kerberos.

NFS usluge

Servis Sistem V-lansiran... Serverski paket NFS uključuje tri alata uključena u pakete portmap i nfs-utils.

  1. portmap: prikazuje pozive upućene sa drugih mašina odgovarajućoj službi RPC(nije potrebno uz NFSv4).
  2. nfs: pretvara udaljene zahtjeve dijeljenje datoteka u upite na lokalnom sistemu datoteka.
  3. rpc.mountd: ova usluga je odgovorna za montaža i demontaža sistemi datoteka.

Osnovne konfiguracijske datoteke za NFS

  1. / etc / izvoz: njegov glavni konfiguracioni fajl NFS, sve izvezeno datoteke i katalozi koji su definisani u ovoj datoteci i dalje odredišni NFS server.
  2. / etc / fstab: Za montiranje NFS direktorij na vašem sistemu bez restartuje, moramo snimiti / etc / fstab.
  3. / etc / sysconfig / nfs: Konfiguracijski fajl NFS da kontrolišete koji port RPC i druge usluge slušanje.

Konfigurisanje i montiranje NFS-a na Linux server

Za prilagođavanje nosača NFS trebat će nam najmanje dva automobila Linux/Unix... U ovom vodiču ćemo koristiti dva servera.

  1. NFS server: nfsserver.example.ru sa IP-om - 192.168.0.55
  2. NFS klijent: nfsclient.example.ru sa IP-om - 192.168.0.60

Instalacija NFS servera i NFS klijenta

Moramo da instaliramo pakete NFS na našem NFS server kao i automobilom NFS klijent... Možemo ga instalirati sa “” ( crvena kapa Linux) i instalacioni paket “ apt-get” (Debian i Ubuntu).

# yum install nfs-utils nfs-utils-lib # yum install portmap (nije potrebno za NFSv4) # apt-get install nfs-utils nfs-utils-lib

Sad trči usluga na obe mašine.

# /etc/init.d/portmap start # /etc/init.d/nfs start # chkconfig --level 35 portmap on # chkconfig --level 35 nfs on

Nakon instaliranja paketa i pokretanja usluga na obje mašine, moramo konfigurirati obje mašine za dijeljenje datoteka.

Postavljanje NFS servera

Prvo, postavimo server NFS.

Postavljanje direktorija za izvoz

# mkdir / nfsshare

Sada treba da pišemo na “ / etc / izvoz" i restart usluge kako bi naš imenik bio dijeljen na webu.

# vi / etc / exports / nfsshare 192.168.0.60 (rw, sync, no_root_squash)

U gornjem primjeru postoji direktorij ispod / pod naslovom " nfsshare", Trenutno se dijeli s IP klijentom" 192.168.0.60 „Sa privilegijama čitanje i evidencije (RW), također možete koristiti ime hosta klijent umjesto IP u gornjem primjeru.

NFS opcije

Možemo koristiti neke druge opcije u fajlovima “ / etc / izvoz”Za dijeljenje datoteka izgleda ovako.

  1. ro: Sa ovom opcijom možemo vam pružiti pristup samo za čitanje na dijeljene fajlove, tj. kupac moći će samo citati.
  2. rw: Ova opcija dozvoljava klijent na server pristup za oba za čitanje i evidencije unutar zajedničkog direktorija.
  3. sync: Sinkronizacija potvrđuje zahtjeve dijeljenog direktorija tek nakon toga promjene bili su počinili.
  4. no_subtree_check: Ova opcija onemogućava provjeru podstablo... Kada je zajednički direktorij poddirektorij većeg sistema datoteka, NFS skenira svaki direktorij iznad njega kako bi provjerio njegove dozvole i detalje. Onemogući provjeru podstablo može poboljšati pouzdanost NFS ali smanjiti sigurnost.
  5. no_root_squash: Ova fraza dozvoljava root, povezati u određeni folder.

Za više opcija sa “ / etc / izvoz“, Preporučuje se čitanje stranice smjernice za izvoz.

Konfiguriranje NFS klijenta

Nakon podešavanja NFS-server, treba nam mount na ovom dijeljenom direktoriju ili particiji klijent server.

Montiranje dijeljenih direktorija na NFS klijentu

Od sada NFS klijent, trebamo mount ovom direktoriju treba pristupiti lokalno. Da bismo to uradili, prvo moramo da saznamo koji su resursi dostupni na udaljenom ili NFS serveru.

# showmount -e 192.168.0.55 Izvozna lista za 192.168.0.55: / nfsshare 192.168.0.60

Montiranje pristupačnog direktorija u NFS

To mount general NFS direktoriju, možemo koristiti sljedeću naredbu za montiranje.

# mount -t nfs 192.168.0.55:/nfsshare / mnt / nfsshare

Gornja komanda će postaviti zajednički direktorij na “ / mnt / nfsshare”Na klijentovom serveru. To možete provjeriti sljedećom komandom.

# mount | grep nfs sunrpc on / var / lib / nfs / rpc_pipefs tip rpc_pipefs (rw) nfsd on / proc / fs / nfsd tip nfsd (rw) 192.168.0.55:/nfsshare na / mnt16w tip (dod. mnt16w)

Iznad mount komanda se montira NFS dijeljeni direktorij on NFS klijent privremeno da montirate NFS direktorij stalno na vašem sistemu bez obzira na ponovno pokretanje, moramo unijeti u " / etc / fstab“.

# vi / etc / fstab

Dodajte sljedeći novi red kao što je prikazano ispod.

192.168.0.55:/nfsshare / mnt nfs defauls 0 0

Testiranje ponašanja NFS instalacije

Možemo testirati naše instaliranje NFS servera stvaranjem test fajl na strani servera i provjerite njegovo prisustvo na NFS klijent stranu ili obrnuto.

nfsserver na strani servera

Kreirali smo novi tekstualni fajl pod nazivom “ nfstest.txt„U ovom opštem imeniku.

# cat> /nfsshare/nfstest.txt Ovo je test fajl za testiranje rada podešavanja NFS servera.

Klijentska strana nfsclient

Promijenite u zajednički direktorij klijent server i pronaći ćete dijeljeni fajl bez ikakvog ručnog ažuriranja ili servisa za ponovno pokretanje.

# ll / mnt / nfsshare ukupno 4 -rw-r - r-- 1 root root 61 Sep 21 21:44 nfstest.txt [email protected]~] # cat /mnt/nfsshare/nfstest.txt Ovo je test fajl za testiranje rada podešavanja NFS servera.

Uklanjanje NFS nosača

Ako želiš unmount ovaj zajednički direktorij sa servera nakon što završite s dijeljenjem datoteka možete jednostavno unmount ovaj određeni direktorij koristeći naredbu “ umount“. Pogledajte ovaj primjer u nastavku.

[email protected]~] # umount / mnt / nfsshare

Možete vidjeti da je mount uklonjen na sistemu datoteka.

# df -h -F nfs

Vidjet ćete da ovi dijeljeni direktoriji više nisu dostupni.

Važne naredbe za NFS

Neke od važnijih naredbi za NFS .

  1. showmount -e: Dostupne emisije zajedničkih objekata na lokalnom računaru
  2. showmount -e : Lista dostupnih zajedničkih objekata on daljinski server
  3. showmount -d: Lista svih poddirektorij
  4. exportfs -v: Prikazuje listu deljenih datoteke i opcije na serveru
  5. exportfs -a: Izvezite sve dostupne objekte navedene u / etc / izvoz, ili ime
  6. exportfs -u: Ponovni izvoz svih dostupnih objekata navedenih u / etc / izvoz, ili ime
  7. exportfs -r: Osvježite listu servera nakon promjene / etc / izvoz

Sve je u vezi mount nfs trenutno, ako ste zainteresirani, možete pročitati vodič o tome. Ostavite svoje

Suština problema: Samsung je svojevremeno počeo proizvoditi televizore koji podržavaju DLNA tehnologiju koju su razvili vodeći proizvođači kućanskih aparata, po principu "digitalne kuće". Ova tehnologija je omogućila integraciju televizora u lokalnu kućnu mrežu, što je omogućilo razmjenu medijskog sadržaja između televizora i računara, a posebno gledanje filmova na TV-u pohranjenih na računalu putem lokalne mreže ili WiFi-a. Međutim, multimedijalno rešenje koje je Samsung predložio za implementaciju ove tehnologije ostavlja mnogo da se poželi, blago rečeno. Dakle, filmovi koji se gledaju preko mreže u ugrađenom TV media playeru, u većini slučajeva, ne premotavaju se. Osim toga, kada gledate filmove preko mreže, za razliku od gledanja filmova s ​​USB fleš diska ili prijenosnog tvrdog diska spojenog na TV preko USB priključka, funkcija kontinuirane reprodukcije (plavo dugme na daljinskom upravljaču) nije podržana. Konačno, sama potreba da svaki put pokrenete Samsung PC Share Manger na svom računaru i izvršite ispravke nakon svakog brisanja ili dodavanja video fajlova na disk je pomalo neugodna.

Omogućavanje mrežnog protokola NFS (Network File System) pomoći će nam ne samo da otklonimo postojeće probleme sa gledanjem filmova na TV-u na lokalnoj mreži, već i da povećamo brzinu prijenosa podataka (što može biti važan faktor pri gledanju velikih HD filmova ). Nakon što izvršimo neophodnu instalaciju i konfiguraciju NFS servera, naš računar će TV percipirati kao da smo na TV povezali prenosivi hard disk preko USB porta (jedina razlika će biti u brzini razmjene podataka koja je određena maksimalnom propusnošću vaše lokalne mreže ili WiFi veze).

NFS je mrežni protokol server-klijent. Imaćemo kompjuter kao server, televizor kao klijenta. Već smo razgovarali o uključivanju NFS podrške na TV-u u prethodnom odeljku tokom podešavanja i instalacije SamyGO Auto aplikacije na TV-u. Ako se sjećate, u postavkama SamyGO Auto konfiguratora, označili smo kućicu nasuprot odjeljka NFS i također registrirali IP adresu NFS servera (192.168.xxx.xxx), odnosno adresu našeg računara:
U ovom odeljku ćemo pogledati instalaciju i konfigurisanje NFS servera na našem računaru. Na Internetu postoji mnogo različitih programa za instaliranje i konfigurisanje NFS servera. Koristićemo aplikaciju haneWIN NFS server(to je shareware i nakon određenog vremenskog perioda zahtijeva registraciju serijskog broja, ali, kao što razumijete, na internetu uvijek postoje majstori koji mogu riješiti ovaj problem). Pa da počnemo:

Napomena: Ponekad Windows zaštitni zid ili ugrađeni antivirusni zaštitni zid mogu blokirati rad NFS servera. Šta god da se ovo desi, u Windows zaštitnom zidu (ili ako imate drugi zaštitni zid, onda u njemu) morate dozvoliti pristup mreži za dve aplikacije: nfsd.exe i pmapd.exe (nalaze se u direktorijumu za instalaciju servera C: \ Programske datoteke \ nfsd).


Na kraju, uključite TV i uvjerite se da je naš NFS server pokrenut i da radi. U prethodnom odjeljku, kada smo instalirali program SamyGO Auto na TV, u njemu smo naznačili parametar za automatsko pokretanje. Stoga, kada uključite TV, on bi automatski trebao otkriti naš NFS (to se ne događa odmah, već otprilike 20 sekundi nakon uključivanja TV-a). Dakle, uključite TV, zatim idite na media player i tamo vidite novi uređaj - NFS Server.

Ako primijetite, postoji ikona USB veze pored NFS. Ovo je ono o čemu smo ranije pričali, sada će vaš TV percipirati računar kao čvrsti disk ili USB fleš disk. Možete otići u odjeljak Film i uživati ​​u gledanju filmova preko mreže. Više ne morate da pokrećete Samsung PC Share Manger na svom računaru. Samo dodajte film u fasciklu filmova na vašem računaru i on će se automatski "učitati" u media plejer vašeg TV-a.

U narednom odeljku ćemo pričati o tome kako snimiti programe sa TV-a na USB fleš disk, ili, pošto sada imamo NFS, u fasciklu sa filmovima na računaru.


Mrežni sistem datoteka (NFS)- protokol za pristup mreži sistemima datoteka, omogućava vam povezivanje udaljenih sistema datoteka.
Prvobitno razvijen od strane Sun Microsystems 1984. godine, zasnovan je na Sun RPC: Remote Procedure Call. NFS je nezavisan od tipova serverskog i klijentskog sistema datoteka. Postoji mnogo implementacija NFS servera i klijenata za različite operativne sisteme. Trenutno se koristi NFS v.4, koji podržava različite načine autentifikacije (posebno Kerberos i LIPKEY koji koriste RPCSEC GSS protokol) i liste kontrole pristupa (i POSIX i Windows tipovi).
NFS omogućava klijentima transparentan pristup fajlovima servera i sistemu datoteka. Za razliku od FTP-a, NFS pristupa samo dijelovima datoteke kojima je proces pristupio, a njegova glavna prednost je što ovaj pristup čini transparentnim. Zahvaljujući tome, svaka klijentska aplikacija koja može raditi s lokalnom datotekom može jednako dobro raditi i sa NFS datotekom, bez promjene samog programa.
NFS klijenti pristupaju datotekama na NFS serveru tako što šalju RPC zahteve serveru. Ovo se može implementirati korištenjem normalnih korisničkih procesa – naime, NFS klijent može biti korisnički proces koji upućuje specifične RPC pozive serveru, što također može biti korisnički proces.

Verzije
NFSv1 je bio za internu upotrebu samo u eksperimentalne svrhe. Detalji implementacije su definirani u RFC 1094.
NFSv2 (RFC 1094, mart 1989) je prvobitno u potpunosti radio preko UDP-a.
NFSv3 (RFC 1813, jun 1995). Deskriptori datoteka u verziji 2 su niz fiksne veličine od 32 bajta. U verziji 3, to je niz varijabilne veličine do 64 bajta. Niz varijabilne dužine u XDR-u je definiran 4-bajtnim brojačem iza kojeg slijede stvarni bajtovi. Ovo smanjuje veličinu deskriptora fajla na implementacijama kao što je UNIX, koji zahtevaju samo oko 12 bajtova, ali omogućava implementacijama koje nisu Unix da razmenjuju dodatne informacije.
Verzija 2 ograničava broj bajtova po RPC-u za READ ili WRITE na 8192 bajta. Ovo ograničenje se ne primjenjuje u verziji 3, što zauzvrat znači da će korištenjem UDP-a ograničenje biti samo u veličini IP datagrama (65535 bajtova). Ovo omogućava korištenje velikih paketa prilikom čitanja i pisanja na brzim mrežama.
Veličine fajlova i početni pomak bajta za procedure READ i WRITE počele su da koriste 64-bitno adresiranje umesto 32-bitnog, što omogućava rad sa većim fajlovima.
Atributi datoteke se vraćaju u svakom pozivu koji može utjecati na atribute.
Upisi (WRITE) mogu biti asinhroni, dok su u verziji 2 trebali biti sinhroni.
Jedna procedura je uklonjena (STATFS) i dodato sedam: ACCESS (provjera dozvola za fajlove), MKNOD (kreiranje posebne Unix datoteke), READDIRPLUS (vraća imena datoteka u direktoriju zajedno sa njihovim atributima), FSINFO (vraća statističke informacije o sistem datoteka), FSSTAT (vraća informacije o dinamičkom sistemu datoteka), PATHCONF (vraća informacije o datoteci POSIX.1) i COMMIT (prenosi prethodno napravljeno asinhrono upisivanje u trajnu memoriju).
U vrijeme uvođenja verzije 3, programeri su počeli više koristiti TCP kao transportni protokol. Iako su neki programeri već koristili TCP za NFSv2, Sun Microsystems je dodao TCP podršku za NFS verziju 3. Ovo je učinilo korišćenje NFS-a preko Interneta izvodljivijim.
NFSv4 (RFC 3010, decembar 2000, RFC 3530, revidiran aprila 2003), pod uticajem AFS i CIFS, uključio je poboljšanja performansi, visoku sigurnost i pojavio se kao kompletan protokol. Verzija 4 je bila prva verzija razvijena u saradnji sa Internet Engineering Task Force (IETF) nakon što je Sun Microsystems prenio razvoj NFS protokola. NFS v4.1 je odobrio IESG u januaru 2010. i dobio je RFC 5661. Važna inovacija u verziji 4.1 je pNFS specifikacija – Parallel NFS, mehanizam za paralelni NFS klijentski pristup podacima sa više distribuiranih NFS servera. Prisustvo takvog mehanizma u standardu mrežnog sistema datoteka pomoći će u izgradnji distribuiranih skladišta u oblaku i informacionih sistema.

NFS struktura
NFS struktura ima tri komponente na različitim nivoima:
Aplikacioni sloj (sama NFS) su pozivi udaljenih procedura (rpc) koji izvode neophodne operacije nad datotekama i direktorijumima na strani servera.
Funkcije sloja prezentacije obavlja XDR (eXternal Data Representation) protokol, koji je međuplatformski standard za apstrakciju podataka. XDR protokol opisuje objedinjeni, kanonski oblik predstavljanja podataka koji ne zavisi od arhitekture računarskog sistema. Prilikom prijenosa paketa, RPC klijent pretvara lokalne podatke u kanonski oblik, a server radi suprotno.
Usluga Remote Procedure Call (RPC), koja omogućava klijentu da zatraži udaljene procedure i izvrši ih na serveru, je funkcija na nivou sesije. Povezivanje mrežnih resursa
Procedura za povezivanje mrežnog resursa pomoću NFS-a naziva se "izvoz". Klijent može zatražiti od servera listu izvezenih resursa koje predstavlja. Sam NFS server ne emituje listu svojih izvezenih resursa.
Ovisno o navedenim opcijama, izvezeni resurs se može montirati (prikačiti) "samo za čitanje", možete definirati listu hostova kojima je dozvoljeno montiranje, specificirati korištenje sigurnog RPC-a (secureRPC) itd. Jedna od opcija određuje način montiranja: "tvrdo" (tvrdo) ili "meko" (meko).
Sa "tvrdim" montiranjem, klijent će pokušati montirati sistem datoteka po svaku cijenu. Ako server ne radi, to će dovesti do činjenice da se cijeli NFS servis zamrzava: procesi koji pristupaju sistemu datoteka preći će u stanje čekanja na završetak RPC zahtjeva. Sa stanovišta korisničkih procesa, sistem datoteka će se pojaviti kao vrlo spor lokalni disk. Kada se server vrati na mrežu, NFS servis će nastaviti da funkcioniše.
Kod mekog montiranja, NFS klijent će nekoliko puta pokušati da se poveže sa serverom. Ako server ne odgovori, sistem izdaje poruku o grešci i prestaje pokušavati montirati. Sa stanovišta logike operacija datoteka, kada server ne uspije, meko montiranje emulira neuspjeh lokalnog diska.
Izbor načina rada ovisi o situaciji. Ako se podaci na klijentu i serveru moraju sinkronizirati u slučaju privremenog prekida usluge, tada je poželjnije "tvrdo" montiranje. Ovaj način rada je također nezamjenjiv u slučajevima kada montirani datotečni sistemi sadrže programe i datoteke koji su od vitalnog značaja za rad klijenta, posebno za mašine bez diska. U drugim slučajevima, posebno kada su u pitanju sistemi samo za čitanje, soft mount mod je praktičniji.

Mješovito mrežno dijeljenje
NFS je idealan za mreže zasnovane na UNIX-u jer se isporučuje sa većinom verzija operativnog sistema. Štaviše, NFS podrška je implementirana na nivou UNIX kernela. Upotreba NFS-a na Windows klijentskim računarima stvara određene probleme povezane sa potrebom za instaliranjem specijalizovanog i prilično skupog klijentskog softvera. U takvim mrežama, upotreba alata za dijeljenje zasnovanih na SMB / CIFS, posebno softvera Samba, čini se poželjnijim.

Standardi
RFC 1094 NFS: Specifikacija protokola mrežnog sistema datoteka] (mart 1989.)
RFC 1813 NFS verzija 3 specifikacija protokola] (jun 1995.)
RFC 2224 NFS URL šema
RFC 2339 Ugovor između Internet društva, IETF-a i Sun Microsystems, Inc. u pitanju NFS V.4 protokola
RFC 2623 NFS verzija 2 i verzija 3 Sigurnosni problemi i upotreba RPCSEC_GSS i Kerberos V5 NFS protokola
RFC 2624 NFS verzija 4 Razmatranje dizajna
RFC 3010 NFS verzija 4 protokol
RFC 3530 Mrežni sistem datoteka (NFS) verzija 4 Protokol
RFC 5661 Mrežni sistem datoteka (NFS) Verzija 4 Minor Verzija 1 Protokol

Korišteni izvori
1.ru.wikipedia.org
2.ru.science.wikia.com
3. phone16.ru
4.4stud.info
5.yandex.ru
6.gogle.com

Top srodni članci