Sun Microsystemsin NFS (Network File System) on RPC-pohjainen hajautettu tiedostojärjestelmärakenne, jonka avulla verkkolaitteet voivat käyttää NFS-palvelimia verkon yli paikallisina aseminaan.
Tässä on vaiheittainen opas NFS-palvelimen määrittämiseen ja määrittämiseen Linux-koneessa.
Mikä on verkkotiedostojärjestelmä?
NFS-tiedostojärjestelmässä on neljä protokollaa. Kun palvelin on valmis, se ilmoittaa portmapille (palvelin, joka muuntaa protokollan porttinumeroiksi) käytettävästä portista ja antaa ohjatun RPC-ohjelman numeron.
Kun käytät sulautettua Linux-järjestelmää, on erittäin kätevää käynnistää laitteesi NFS-tiedostojaon kautta verkon kautta sen sijaan että käynnistäisit sen suoraan tallennuslaitteelta (NAND flash, eMMC, MMC, jne.).
Vaikka tämä on harvinaisempaa, saatat haluta myös liittää NFS-osuuden ja suorittaa tiedostojen jakamista sen avulla järjestelmän käynnistymisen jälkeen, vaikka et käynnistäisi järjestelmääsi suoraan NFS-jaosta. Jotta molemmat skenaariot toimisivat, sinun on ensin asennettava NFS-palvelin tietokoneeseen, johon kehität.
Kuinka asentaa NFS Linuxiin
Jos käytät a Debian-pohjainen järjestelmä kuten Ubuntu tai Linux Mint, sinun tulee asentaa nfs-kernel-server paketti seuraavasti:
sudo apt Asentaa nfs-kernel-palvelin
Arch Linuxissa:
sudo pacman -S nfs-utils
Fedorassa, CentOS: ssä ja RHEL: ssä:
sudo dnf -y Asentaa nfs-utils
Prosessin lopussa NFS-palvelimesi käynnistyy automaattisesti. Tässä vaiheessa se ei kuitenkaan vielä tiedä, mitkä tietokoneesi hakemistot haluat jakaa verkon kautta. Siksi se ei tarjoa mitään jakamista oletuksena.
Voit avata useita hakemistoja samalla palvelimella salliaksesi verkon jakamisen eri valtuuksilla ja rajoituksilla.
NFS-palvelimen määrittäminen Linuxissa
Jos haluat jakaa minkä tahansa hakemiston NFS-palvelimen kautta, sinun on määritettävä hakemistoon liittyvä asetus /etc/exports tiedosto. Avaa tiedosto millä tahansa haluamallasi tekstieditorilla. Muista lisätä sudo-etuliite komentoon.
sudo vim /etc/vientiä
Saatat ihmetellä, mitä tässä näkyvät karttavaihtoehdot tarkoittavat:
- root_squash: Merkitsee sudon valtuutetut asiakaskäyttäjät nobody-käyttäjäksi ja -ryhmäksi NFS: ssä
- no_root_squash: Poistaa juuren puristamisen käytöstä
- all_squash: Toisin kuin root_squash, se mahdollistaa kaikkien käyttäjien yhdistämisen nobody-käyttäjäksi ja -ryhmäksi. Sitä käytetään yleensä julkiseen käyttöön.
- no_all_squash: Vastakohta all_squash; tämä vaihtoehto on oletusasetus
Kun järjestelmä, joka on NFS-palvelimen /etc/exports-tiedostossa sallimiesi IP-alueiden ulkopuolella, yrittää käyttää kyseistä resurssia, NFS-palvelin hylkää pyynnön.
Saatat saada "Palvelin kieltää pääsyn" -viestejä, kun liität sulautettuun järjestelmääsi. Seuraavan kaltaiset virheilmoitukset näkyvät lopussa /var/log/syslog tiedosto tietokoneessa, jossa NFS-palvelin on käynnissä:
rpc.mountd[1041]: hylätty asennuspyyntö alkaen192.168.2.2varten /home/example/casper/target (/home/esimerkki/casper/target): vertaamaton isäntä
Kun näet yllä olevan kaltaisen täsmäämättömän isäntälokiviestin, sinun tulee laajentaa /etc/exports-tiedoston vastaavan säännön IP/Netmask-osio tai käyttää tähti (*) erikoismerkki, jos haluat myöntää pääsyn kaikkiin IP-osoitteisiin.
Sinun on käynnistettävä NFS-palvelu uudelleen sen jälkeen, kun olet tehnyt muutoksia /etc/exports tiedosto:
sudo-palvelu nfs-kernel-server käynnistyy uudelleen
Tai jos distro toimitetaan systemctl: n kanssa, suorita seuraava komento:
sudosystemctluudelleenkäynnistäänfs-palvelin.palvelu
Voit myös antaa -r parametrille exportfs -komento, jotta se jakaa uudelleen hakemistot, jotka ovat muuttaneet jakoon liittyviä asetuksia:
sudo exportfs -r
Kiinnitysviiveen ongelman korjaaminen
Kun käytät palvelimellasi NFS-protokollan versiota 4 tai uudempaa, viiveet voivat olla jopa 15 sekuntia asiakaspuolen asennusprosessi perinteisissä käyttöskenaarioissa NFS: n oletuskokoonpanoilla palvelin. Tämä ongelma saattaa ilmetä joissakin Debianin, Fedoran ja Ubuntun versioissa.
Jos sinulla on samanlainen asennusviive, voit tarkista palvelinpuolen lokitiedostot (/var/log/syslog, /var/log/messages) seuraavan kaltaiselle lokiviestille:
... RPC: AUTH_GSS-puhelu aikakatkaistiin
Tämä viesti osoittaa, että Kerberos-todennus epäonnistui ja aikakatkaistiin. Et todennäköisesti tarvitse Kerberos-protokollaa suojaustodennusta varten ympäristössäsi verkossa. Vaikka olisit tällä tavalla määritetyssä verkossa, ainakin sulautettujen Linux-järjestelmien kanssa, sinun ei tarvitse ottaa Kerberos-todennusta käyttöön.
Vaikka vaihtoehtoja GSSD-palvelun käyttämiselle NFS: n kanssa ongelman korjaamiseksi on tarjottu, näillä tavoilla ei ole sama vaikutus kaikissa jakeluissa ja pakettiversioissa, ja siksi on järkevintä ratkaista tämä ongelma juuri.
Sinun on estettävä (tai mustalle listalle) rpcsec_gss_krb5 ydinmoduulin lataaminen Linux-järjestelmään, jossa NFS-palvelin suorittaa.
Jotta tämä asetus tulee voimaan joka kerta, kun käynnistät tietokoneen uudelleen, luo uusi tiedosto nimeltään /etc/modprobe.d/nfs-gss-blacklist.conf ja lisää siihen seuraavat rivit:
musta lista rpcsec_gss_krb5
Kun olet tallentanut tiedoston ja käynnistänyt järjestelmän uudelleen, asennusviiveongelma poistuu.
Miksi käyttää NFS-palvelinta?
NFS on yksinkertainen ja edullinen asentaa. Se mahdollistaa keskitetyn hallinnan, mikä vähentää ylimääräisten ohjelmistojen ja tallennustilan tarvetta yksittäisen käyttäjän tietokoneessa. Yhdellä koneella useat käyttäjät voivat jakaa saman levytilan. He voivat sijoittaa nämä levyt tiedostojärjestelmänsä päälle tallennustilan laajentamiseksi.
NFS-jako mahdollistaa paljon tallennustilaa vaativien ohjelmien ryhmittelyn yhdelle palvelimelle. Tämä voi johtaa valtaviin levytilan säästöihin. Vaikka aiemmat NFS-versiot ovat haavoittuvia, uudemmat versiot ovat lisänneet suojaustasoja, mukaan lukien Kerberos-todennus.
On kuitenkin myös joitain haittoja. NFS: n on havaittu hidastuvan joissain tapauksissa raskaan verkkoliikenteen aikana. Jakaminen Windowsin kanssa on mahdollista, mutta saattaa vaatia joitain kolmannen osapuolen sovelluksia. Mutta tämä ei ole turvallisuuden kannalta kovin järkevä käytäntö. Jos kokoonpano ei ole oikea, luvaton käyttö saattaa tapahtua.
Tiedostojärjestelmän jakaminen on helppoa Linuxissa NFS: n avulla
Tietoturvaongelmien tunteminen ja ratkaisujen löytäminen on yksi järjestelmänvalvojan kriittisimmistä tehtävistä. On tarpeen tuntea kaikkien tiedostonjakojärjestelmien ja hallintatyökalujen turvallisuusmenettelyt, ei vain NFS: n.