TL;DR
paljon lyhyempi opas on saatavilla Ubuntu Server Opas, Jos tarvitset lisätietoja, lue alla.
Johdanto
NFS (Network File System) voit ” jaa ” – hakemistoon, joka sijaitsee yksi verkottunut tietokoneen muiden tietokoneiden/laitteiden verkkoon. Tietokonetta, jossa hakemisto sijaitsee, kutsutaan palvelimeksi, ja siihen yhdistäviä tietokoneita tai laitteita kutsutaan asiakkaiksi. Asiakkaat yleensä ”asentaa” jaettu Hakemisto, jotta se on osa omaa hakemistorakennetta.,
NFS on täydellinen NAS: n (verkotetun liitetyn tallennustilan) luomiseen Linux / Unix-ympäristössä. Se on syntyperäinen Linux/Unix-protokolla vastakohtana Samballe, joka käyttää Microsoftin kehittämää SMB-protokollaa. Apple OS: llä on hyvä tuki NFS: lle. Windows 7: ssä on jonkin verran tukea NFS: lle.
NFS sopii ehkä parhaiten ”pysyvämpiin” verkkoasennettuihin hakemistoihin, kuten / Home-hakemistoihin tai säännöllisesti jaettuihin resursseihin. Jos haluat verkkojaon, johon vieraskäyttäjät voivat helposti muodostaa yhteyden, Samba sopii paremmin., Tämä on, koska työkaluja on olemassa helpommin poikki vanha ja oma-käyttöjärjestelmissä tilapäisesti asentaa ja irrottaa Samba osakkeita.
Ubuntu Ennen käyttöön NFS sinun pitäisi olla perehtynyt:
- Linux-tiedostojen ja hakemistojen käyttöoikeudet
- Asennus ja irrotus (irrotetaan) tiedostojärjestelmien
Tämä HowTo tekee Ubuntu server NFSv4 valmis.
NFS pikaopas
Tarjota ymmärrät mitä olet tekemässä, käytä tämä lyhyt kävellä läpi perustaa NFSv4 server Ubuntu (ei authentication security). Asenna sitten osake Ubuntu-asiakkaalle., Sitä on testattu Ubuntu 14.04: ssä.
NFS-palvelin
tarkistaaksesi, ettei NFS-palvelinta ole asennettu, voit tehdä sen…
-
$ dpkg -l | grep nfs-kernel-server
Asenna tarvittavat paketit…
-
# apt-get install nfs-kernel-server
helpottaa huolto-eristämme kaikki NFS vienti yhden hakemiston, jossa todellinen hakemistoja on asennettu –bind vaihtoehto.
-
oletetaan, että haluamme viedä meidän käyttäjien kotihakemistot /home/users., Ensin meidän luoda vienti-tiedostojärjestelmä:
# mkdir -p /export/users
Se on tärkeää, että /vientiin ja /export/käyttäjät ovat 777 oikeudet kuin meillä on pääsy NFS jakaa asiakkaalta ilman LDAP – /VERKKO-todennusta. Tämä ei päde, jos käytät todennusta (KS.alla)., Nyt mount todellinen käyttäjät hakemistoon:
# mount --bind /home/users /export/users
pelastaa meidät retyping tämän jälkeen jokaisen uudelleenkäynnistyksen meidän lisätä seuraava
rivi /etc/fstab
/home/users /export/users none bind 0 0
-
ainoa tärkeä vaihtoehto /etc/default/nfs-kernel-server nyt on NEED_SVCGSSD. Se on oletuksena asetettu ”ei”, mikä on hienoa, koska emme aktivoi NFSv4-tietoturvaa tällä kertaa.
jotta tunnisteiden nimet voidaan automaattisesti kartoittaa, sekä asiakas että palvelin vaativat/etc / idmapd: n.,conf-tiedostolla on sama sisältö oikeilla verkkotunnuksilla. Lisäksi, tämän tiedoston pitäisi olla seuraavat rivit Kartoitus jakso:
-
Nobody-User = nobodyNobody-Group = nogroup
Kuitenkin, asiakas voi olla eri vaatimukset Kukaan ei-Käyttäjä ja ei Kukaan-Ryhmä. Esimerkiksi RedHatin muunnelmissa se on nfsnobody molemmille. cat / etc /passwd ja cat/etc / – ryhmän tulisi näyttää ”nobody” – tilit.
näin palvelin ja asiakas eivät tarvitse käyttäjiä jakamaan samaa UID / GUIDIA.,
niille, jotka käyttävät LDAP-todennus, lisää seuraavat rivit asiakkaan idmapd.conf:
Method = nsswitch
Tämä aiheuttaa idmapd tietää katsomaan nsswitch.conf määrittää, missä se pitäisi etsiä kirjautumistietoja (ja jos sinulla on LDAP-todennus jo töissä, nsswitch ei pitäisi vaatia lisäselvityksiä).
viedä meidän hakemistoja paikallinen verkko 192.168.1.0/24 lisäämme seuraavat kaksi riviä /etc/exports
Portmap Lukitus
valinnainen
Lisää seuraava rivi /etc/hosts.,deny:
rpcbind mountd nfsd statd lockd rquotad : ALL
estämällä kaikki asiakkaat ensin, vain asiakkaat/etc / isännät.allow will be allowed to access the server.
Lisää nyt seuraava rivi/etc / isännille.salli:
rpcbind mountd nfsd statd lockd rquotad : list of IP addresses
Missä ”luettelo IP-osoitteet” merkkijono on, sinun täytyy tehdä IP-osoitteiden luettelo, joka koostuu palvelimen ja kaikki asiakkaat. Nämä on oltava IP-osoitteet, koska rajoitus portmap (se ei pidä isäntänimiä). Huomaa, että jos sinulla on NIS perustettu, vain lisätä nämä samalla rivillä.,
Huomautus: Varmista, että luettelo sallituista IP-osoitteista sisältää localhost-osoite (127.0.0.1) kuin käynnistyskomentosarjat viime versioissa Ubuntu käyttää rpcinfo komento löytää NFSv3 tukea, ja tämä poistetaan käytöstä, jos localhost ei voi yhdistää.,unt täydellinen vienti-puu yhdellä komennolla:
Voimme myös asentaa viety alipuu kanssa:
-
# mount -t nfs -o proto=tcp,port=2049 <nfs-server-IP>:/users /home/users
pelastaa meidät retyping tämän jälkeen jokaisen uudelleenkäynnistyksen me lisää seuraava rivi /etc/fstab:
-
<nfs-server-IP>:/ /mnt nfs auto 0 0
Jos asennuksen jälkeen tiedostossa /proc/mounts näkyy <nfs-server-IP – >:// (kaksi kauttaviivaa), sitten sinun täytyy ehkä määrittää, kaksi kauttaviivaa /etc/fstab, tai muuten umount saattaa valittaa, että se ei voi löytää mount.,
automaattivaihtoehto kiinnittyy käynnistettäessä. Kuitenkin tämä ei toimi, jos asiakas käyttää wifi-yhteys onnistui käyttäjätasolla (sisäänkirjautumisen jälkeen), koska verkko ei ole käytettävissä käynnistyksen aikana. Ubuntu 12.04 LTS: ssä ja myöhemmin wifi-yhteyksiä hallitaan järjestelmätasolla oletuksena, joten NFS-osakkeiden automaattisen asennuksen käynnistysaikaan pitäisi toimia hyvin.
Ubuntu Server ei tule mitään init.d / netfs tai muut skriptit tehdä tämän puolestasi.
Portmap Lukitus
valinnainen
Lisää seuraava rivi /etc/hosts.,deny:
rpcbind : ALL
estämällä kaikki asiakkaat ensin, vain asiakkaat/etc / isännät.allow will be allowed to access the server.
Lisää nyt seuraava rivi/etc / isännille.salli:
rpcbind : NFS server IP address
Missä ”NFS-palvelimen IP-osoite” on laitteen IP-osoite palvelimelle. Tämän täytyy olla numeerista! Näin portmap toimii.
NFS-Palvelin
Asennusta edeltävät Asetukset
Mikään seuraavista asennusta edeltävät toimenpiteet ovat ehdottomasti tarpeen.
Käyttöoikeudet
NFS käyttöoikeudet perustuvat käyttäjän ID (UID)., Nesteitä tahansa käyttäjät asiakkaan on vastattava niitä palvelimessa, jotta käyttäjillä on pääsy. Tyypillisiä tapoja tehdä tämä on:
- Manuaalinen salasana, tiedostojen synkronointi
-
Käyttää LDAP-palvelinta,
-
Käyttö NIS
Se on myös tärkeää huomata, että sinun täytyy olla varovainen järjestelmissä, joissa pääasiallinen käyttäjä on root access – käyttäjä voi muuttaa UID on järjestelmä mahdollistaa itselleen pääsyn kenenkään tiedostoja. Tällä sivulla oletetaan, että hallintoryhmä on ainoa ryhmä, jolla on juurihoito ja että heihin kaikkiin luotetaan., Kaikki muu edustaa kehittyneempää kokoonpanoa, eikä sitä käsitellä täällä.
Ryhmän Käyttöoikeudet
NFS: llä, käyttäjän pääsy tiedostoja, määräytyy hänen/hänen jäsenyys ryhmien asiakas, ei palvelimeen. On kuitenkin tärkeä rajoitus: enintään 16 ryhmät välitetään asiakkaalta palvelimelle, ja, jos käyttäjä on jäsen yli 16 ryhmien asiakas, joitakin tiedostoja tai hakemistoja voi olla yllättäen saavuttamattomissa.
isäntänimet
valinnainen, jos DNS
: n avulla lisätään mikä tahansa asiakkaan nimi ja IP-osoitteet/etc / isännille. Todellinen (ei 127.,0.0.1) palvelimen IP-osoitteen pitäisi olla jo täällä. Tämä varmistaa, että NFS toimii edelleen, vaikka DNS menee alas. Voit luottaa DNS Jos haluat, se on sinusta kiinni.
VERKKO
valinnainen – suorita vaiheet vain, jos käytät NIS
Huomautus: Tämä toimii vain, jos käytät NIS. Muuten, et voi käyttää netgroups, ja pitäisi määrittää yksittäisten IP: n tai hostnames /etc / vienti. Lue vikojen osio man netgroupista.
Muokkaa /etc/netgroup ja lisää rivi luokitella asiakkaita. (Tämä vaihe ei ole tarpeen, mutta on mukavuutta).,
myclients (client1,,) (client2,,)
luonnollisesti lisää asiakkaita voidaan lisätä. asiakkaani voi olla mitä haluat; tämä on netgroup nimi.
Suorita tämä komento uudelleen YP-tietokanta:
sudo make -C /var/yp
Portmap Lukitus
valinnainen
Lisää seuraava rivi /etc/hosts.deny:
rpcbind mountd nfsd statd lockd rquotad : ALL
estämällä kaikki asiakkaat ensin, vain asiakkaat/etc / isännät.allow will be allowed to access the server.
Lisää nyt seuraava rivi/etc / isännille.,salli:
rpcbind mountd nfsd statd lockd rquotad : list of IP addresses
Missä ”luettelo IP-osoitteet” merkkijono on, sinun täytyy tehdä IP-osoitteiden luettelo, joka koostuu palvelimen ja kaikki asiakkaat. Nämä on oltava IP-osoitteet, koska rajoitus portmap (se ei pidä isäntänimiä). Huomaa, että jos sinulla on NIS perustettu, vain lisätä nämä samalla rivillä.,
Asennusta ja Kokoonpano
Asenna NFS-Palvelin
sudo apt-get install rpcbind nfs-kernel-server
Osaketta
Muokkaa /etc/exports ja lisää osakkeita:
/home @myclients(rw,sync,no_subtree_check)/usr/local @myclients(rw,sync,no_subtree_check)
edellä mainitut osakkeet /home ja /usr/local kaikille asiakkaille asiakkaani netgroup.
edellä mainitut osakkeet /koti ja/usr / paikallinen kahdelle asiakkaalle, joilla on kiinteät ip-osoitteet. Parhaiten käytetään vain koneilla, joilla on staattiset ip-osoitteet.
/home 192.168.0.0/255.255.255.0(rw,sync,no_subtree_check)/usr/local 192.168.0.0/255.255.255.0(rw,sync,no_subtree_check)
edellä mainitut osakkeet /home ja /usr/local kaikille asiakkaille yksityisen verkoston, jotka kuuluvat nimetyn ip-osoitteen välillä.,
rw tekee osakkeen luettavaksi / kirjoitettavaksi, ja sync vaatii palvelinta vastaamaan pyyntöihin vasta, kun mahdolliset muutokset on huuhdottu levylle. Tämä on turvallisin vaihtoehto (async on nopeampi, mutta vaarallinen. On erittäin suositeltavaa, että luet miesvientiä.
Kun olet asettanut /etc/vienti, viennin osakkeet:
sudo exportfs -ra
Sinun kannattaa tehdä tämä komento, kun /etc/exports on muutettu.,
Käynnistä Palvelut
Jos /etc/default/portmap oli muuttunut, portmap täytyy käynnistää uudelleen:
sudo service portmap restart
NFS-kernel-server edellyttää myös uudelleen:
sudo service nfs-kernel-server restart
Turvallisuus Huomautus
Syrjään UID kysymyksiä edellä, on huomattava, että hyökkääjä voi mahdollisesti naamiaiset kuin kone, joka saa map share, jonka avulla ne voivat luoda mielivaltainen Nesteitä käyttää tiedostoja. Yksi mahdollinen ratkaisu tähän on IPSec, KS.myös jäljempänä oleva NFS-ja IPSec-kohta., Voit perustaa kaikki verkkotunnuksen jäsenet puhumaan vain toisilleen IPSec, joka tehokkaasti todentaa, että asiakas on, kuka se sanoo on.
IPSec toimii salaamalla palvelimelle lähetettävän liikenteen palvelimen avaimella, ja palvelin lähettää takaisin kaikki asiakkaan avaimella salatut vastaukset. Liikenne puretaan vastaavilla avaimilla. Jos asiakkaalla ei ole avaimia, joita asiakkaalla pitäisi olla, se ei voi lähettää tai vastaanottaa tietoja.
vaihtoehto Ipsecille on fyysisesti erilliset verkot., Tämä edellyttää erillistä Verkkokytkintä ja erillisiä ethernet-kortteja sekä kyseisen verkon fyysistä turvallisuutta.
NFS-Asiakas
Asennus
sudo apt-get install rpcbind nfs-common
Portmap Lukitus
valinnainen
Lisää seuraava rivi /etc/hosts.deny:
rpcbind : ALL
estämällä kaikki asiakkaat ensin, vain asiakkaat/etc / isännät.allow will be allowed to access the server.
Lisää nyt seuraava rivi/etc / isännille.salli:
rpcbind : NFS server IP address
Missä ”NFS-palvelimen IP-osoite” on laitteen IP-osoite palvelimelle. Tämän täytyy olla numeerista!, Näin portmap toimii.
isäntänimet
valinnainen, jos DNS
lisää palvelimen nimi/etc / isännille. Tämä varmistaa, että NFS kiinnikkeet toimivat edelleen, vaikka DNS menee alas. Voit luottaa DNS Jos haluat, se on sinusta kiinni.
ratsut
tarkista, toimiiko kaikki
sinun pitäisi yrittää asentaa se nyt., Perus malli, voit käyttää on:
sudo mount ServerIP:/folder/already/setup/to/be/shared /home/username/folder/in/your/local/computer
esimerkiksi:
sudo mount 192.168.1.42:/home/music /home/poningru/music
Mount käynnistyksen
NFS kiinnikkeet voi olla joko automaattisesti asennettu, kun käyttää autofs: ää tai voi olla setup staattinen kiinnikkeet käyttämällä rivejä tiedostossa /etc/fstab. Molemmat on selitetty alla.
Automaattiasentajacomment
Asenna abuse:
sudo apt-get install autofs
seuraava kokoonpano esimerkiksi asettaa kotiin hakemistoja automount pois NFS-palvelin, kun kirjaudut sisään. Muita hakemistoja voidaan asentaa automatisoimaan myös käytön yhteydessä.,
Lisää seuraava rivi/etc / auton loppuun.mestari:
/home /etc/auto.home
Nyt luoda /etc/auto.koti ja aseta seuraavat:
* solarisbox1.company.com.au,solarisbox2.company.com.au:/export/home/&
Uudelleenkäynnistys abuse, jotta kokoonpano:
sudo service autofs start
Staattinen Kiinnikkeet
Ennen perustamalla kiinnikkeet, varmista, että hakemistoja, jotka toimivat liitoskohdat ovat jo luotu.
/etc/fstab, lisätä rivejä osakkeista, kuten:
servername:dir /mntpoint nfs rw,hard,intr 0 0
rw-kiinnikkeet sitä lukea/kirjoittaa., On selvää, jos palvelin jakaa sen vain lukea, asiakas ei voi asentaa sitä mitään muuta kuin että. Kova kiinnikkeet jakaa niin, että jos palvelin ei ole käytettävissä, ohjelma odottaa, kunnes se on saatavilla. Vaihtoehto on pehmeä. intr: n avulla voit keskeyttää / tappaa prosessin. Muuten se ei välitä sinusta. Dokumentaatio näitä löytyy Mount vaihtoehtoja nfs osassa man mount.
tiedostojärjestelmät voidaan nyt asentaa mount / mountpoint-tai mount-a-asentimella varustamaan kaikki tavaratilan kohdalle asennettavat.,
Huomautuksia
Minimalistinen NFS perustaa
edellä mainitut vaiheet ovat hyvin kattavia. Vähintään useita vaiheita tarvitaan perustaa NFS on lueteltu täällä:
http://www.ubuntuforums.org/showthread.php?t=249889
Käyttää Ryhmien kanssa NFS Osakkeita
Kun käytät ryhmien NFS osakkeita (NFSv2 tai NFSv3), pitää mielessä, että tämä ei ehkä toimi, jos käyttäjä on jäsenenä yli 16 ryhmää. Tämä johtuu NFS-protokollan rajoituksista., Voit löytää lisää tietoa Launchpad (”Permission denied, kun käyttäjä kuuluu ryhmään, joka omistaa ryhmä kirjoitettavissa tai setgid hakemistoja asentaa nfs: n kautta”) ja tässä artikkelissa: ”Mikä juttu 16 ryhmän tunnus rajoitus NFS?”
IPSec Huomautuksia
Jos käytät IPSec, oletuksena shutdown järjestyksessä Reipas/Dapper aiheuttaa asiakkaan ripustaa, kun se on sammutettu, koska IPSec menee alas ennen kuin NFS ei., Korjata sen, tehdä:
sudo update-rc.d -f setkey removesudo update-rc.d setkey start 37 0 6 S .
vika on jätetty tässä: https://launchpad.net/distros/ubuntu/+source/ipsec-tools/+bug/37536
Vianetsintä
Asennus NFS osakkeita salattu kotona ei toimi käynnistyksen
Asennus NFS jakaa sisällä salatun home directory toimii vain, kun olet onnistuneesti kirjautunut sisään ja kotona on purettu. Tämä tarkoittaa, että /etc/fstab: n käyttäminen NFS: n osakkeiden kiinnittämiseen bootiin ei toimi – koska kotiasi ei ole purettu asennuksen yhteydessä., Siellä on yksinkertainen tapa kiertää tämä käyttäen Symbolisia linkkejä:
- Luoda vaihtoehtoinen directory to mount NFS osakkeita:
$ sudo mkdir /nfs$ sudo mkdir /nfs/music
-
Muokkaa /etc/fstab-to mount NFS jakaa sen sijaan, että directory:
nfsServer:musiikki /nfs/musiikki nfs-auto 0 0
- Luoda symbolinen linkki sisälle kotiisi, osoittaa todellinen mount sijainti (tässä tapauksessa poistaa ”Music” hakemisto on jo olemassa siellä ensin):
$ rmdir /home/user/Music$ ln -s /nfs/music/ /home/user/Music