NFS (omrežni datotečni sistem) podjetja Sun Microsystems je struktura porazdeljenega datotečnega sistema, ki temelji na RPC in omogoča omrežnim napravam, da kot svoje lokalne pogone uporabljajo strežnike, ki poganjajo NFS prek omrežja.

Tukaj je vodnik po korakih za nastavitev in konfiguracijo strežnika NFS na računalniku Linux.

Kaj je omrežni datotečni sistem?

Datotečni sistem NFS ima štiri protokole. Ko je strežnik pripravljen, obvesti preslikavo vrat (strežnik, ki pretvori protokol v številke vrat) o vratih, ki jih je treba uporabiti, in zagotovi številko nadzorovanega programa RPC.

Pri uporabi vgrajenega sistema Linux je zelo priročno zagnati napravo prek skupne rabe datotek NFS prek omrežja, namesto da bi ga zagnali neposredno iz pomnilniške naprave (NAND flash, eMMC, MMC, itd.).

Čeprav redkeje, boste morda želeli namestiti skupno rabo NFS in izvesti skupno rabo datotek z njeno uporabo po zagonu sistema, tudi če svojega sistema ne zaženete neposredno iz skupne rabe NFS. Da bosta oba scenarija delovala, morate najprej namestiti strežnik NFS v računalnik, na katerem razvijate.

instagram viewer

Kako namestiti NFS na Linux

Če uporabljate a Sistem, ki temelji na Debianu kot sta Ubuntu ali Linux Mint, bi morali namestiti nfs-jedrni-strežnik paket kot sledi:

sudo apt namestite nfs-kernel-strežnik

V sistemu Arch Linux:

sudo pacman -S nfs-utils

V sistemih Fedora, CentOS in RHEL:

sudo dnf -y namestite nfs-utils

Na koncu postopka se bo vaš strežnik NFS samodejno zagnal. Vendar na tej točki še ne ve, katere imenike v vašem računalniku želite deliti prek omrežja. Zato privzeto ne zagotavlja nobene skupne rabe.

Na istem strežniku lahko odprete več imenikov, da omogočite skupno rabo omrežja z različnimi pooblastili in omejitvami.

Konfiguriranje strežnika NFS v sistemu Linux

Za skupno rabo katerega koli imenika prek strežnika NFS je treba konfigurirati nastavitev, povezano z imenikom, v /etc/exports mapa. Odprite datoteko s katerim koli urejevalnikom besedil po vaši izbiri. Prepričajte se, da ste ukazu dodali predpono sudo.

sudo vim /etc/izvoz

Morda se sprašujete, kaj pomenijo možnosti preslikave, ki jih vidite tukaj:

  • root_squash: Označi pooblaščene uporabnike odjemalca sudo kot nikogaršnjega uporabnika in skupino v NFS
  • no_root_squash: Onemogoči stiskanje korenin
  • all_squash: Za razliko od root_squash omogoča, da so vsi uporabniki preslikani kot uporabniki in skupine nikogar. Na splošno se uporablja za javni dostop.
  • no_all_squash: Nasprotje all_squash; ta možnost je privzeta

Ko sistem zunaj obsegov IP, ki jih dovolite v datoteki /etc/exports na strežniku NFS, poskuša dostopati do ustreznega vira, bo strežnik NFS zavrnil zahtevo.

Med nameščanjem na vaš vdelani sistem lahko prejmete sporočilo "strežnik zavrnil dostop". Sporočila o napakah, podobna naslednjim, se bodo pojavila na koncu /var/log/syslog datoteko v računalniku, kjer se izvaja strežnik NFS:

rpc.mountd[1041]: zavrnjena zahteva za namestitev od192.168.2.2za /home/example/casper/target (/home/primer/casper/target): gostitelj brez ujema

Ko vidite sporočilo dnevnika gostitelja, ki se ne ujema, kot je zgornje, razširite razdelek IP/omrežna maska ​​ustreznega pravila v datoteki /etc/exports ali uporabite zvezdica (*) poseben znak, če želite omogočiti dostop do vseh naslovov IP.

Ko spremenite datoteko, morate znova zagnati storitev NFS /etc/exports mapa:

ponovni zagon storitve sudo nfs-kernel-server

Če pa je vaša distribucija opremljena s systemctl, zaženite naslednji ukaz:

sudosystemctlponovni zagonnfs-strežnik.storitev

Lahko podarite tudi -r parameter za exportfs ukaz, tako da ponovno deli imenike, ki so spremenili kakršne koli nastavitve, povezane s skupno rabo:

sudo exportfs -r

Odpravljanje težave z zakasnitvijo namestitve

Ko na svojem strežniku uporabljate protokol NFS različice 4 ali višje, lahko pride do zakasnitev do 15 sekund med postopek namestitve na strani odjemalca v tradicionalnih scenarijih delovanja s privzetimi konfiguracijami NFS strežnik. Ta težava se lahko pojavi v nekaterih različicah Debiana, Fedore in Ubuntuja.

Če imate podoben zamik namestitve, lahko preverite dnevniške datoteke na strani strežnika (/var/log/syslog, /var/log/messages) za dnevniško sporočilo, podobno naslednjemu:

... RPC: AUTH_GSS vzpostavljeni klic je potekel

To sporočilo označuje, da preverjanje pristnosti Kerberos ni uspelo in je potekla časovna omejitev. Verjetno ne boste potrebovali protokola Kerberos za varnostno preverjanje pristnosti v omrežju v vašem okolju. Tudi če ste v omrežju, konfiguriranem na ta način, vsaj z vašimi vdelanimi sistemi Linux, vam ne bo treba omogočiti preverjanja pristnosti Kerberos.

Čeprav so bile za odpravo težave ponujene alternative izvajanju storitve GSSD z NFS, ti pristopi nimajo enak vpliv v vseh distribucijah in različicah paketov, zato je najbolj racionalno, da se tega problema lotimo iz korenina.

Morate blokirati (ali uvrstiti na črni seznam). rpcsec_gss_krb5 modul jedra pred nalaganjem v sistemu Linux, kjer se izvaja strežnik NFS.

Če želite, da bo ta možnost veljala vsakič, ko znova zaženete računalnik, ustvari novo datoteko klical /etc/modprobe.d/nfs-gss-blacklist.conf in ji dodajte naslednje vrstice:

črni seznam rpcsec_gss_krb5

Ko shranite datoteko in znova zaženete sistem, bo težava z zakasnitvijo priklopa izginila.

Zakaj uporabljati strežnik NFS?

NFS je preprost in cenovno dostopen za nastavitev. Omogoča centralizirano upravljanje, kar zmanjša potrebo po dodatni programski opremi in prostoru za shranjevanje na osebnem računalniku posameznega uporabnika. Na enem računalniku lahko več uporabnikov deli isti prostor na disku. Te diske lahko postavijo na vrh svojega datotečnega sistema, da povečajo prostor za shranjevanje.

Skupna raba NFS omogoča, da se programi, ki potrebujejo veliko prostora za shranjevanje, združijo v en strežnik. To lahko povzroči velike prihranke prostora na disku. Medtem ko so prejšnje različice NFS ranljive, so novejše različice uvedle dodatne ravni zaščite, vključno s preverjanjem pristnosti Kerberos.

Vendar pa obstaja tudi nekaj slabosti. Ugotovljeno je bilo, da se NFS v nekaterih primerih med velikim omrežnim prometom upočasni. Skupna raba s sistemom Windows je možna, vendar bo morda zahtevala nekatere aplikacije tretjih oseb. Vendar to z vidika varnosti ni zelo razumna praksa. Če konfiguracija ni pravilna, lahko pride do nepooblaščenega dostopa.

Skupna raba datotečnega sistema je preprosta v sistemu Linux z uporabo NFS

Poznavanje varnostnih problemov in iskanje rešitev je ena najbolj kritičnih nalog sistemskega skrbnika. Potrebno je poznati varnostne postopke za vse sisteme za skupno rabo datotek in orodja za upravljanje in ne samo za NFS.