V časti 2 tejto série sa budem podrobne zaoberať vytvorením bodu pripojenia NFS na klientovi Windows 10. Zatiaľ sa zamerajme na server Ubuntu ponúkajúci úložisko NFS a klienta Ubuntu, ktorý sa k nemu pokúša pripojiť.
Inštalácia
Môj server NFS bude založený na Ubuntu 18.04 LTS. Môžete použiť svoje obľúbené linuxové distro alebo FreeBSD alebo akýkoľvek iný operačný systém, ktorý podporuje OpenZFS. Môj dôvod pre použitie Ubuntu 18.04 je, že je veľmi populárny a výrazne by znížil prekážku vstupu.
NFS má byť k dispozícii iba v mojej sieti LAN, ktorá má masku podsiete 255.255.255.0 a 192.168.0.1 ako predvolenú bránu. V jednoduchej angličtine to znamená, že všetky zariadenia pripojené k mojej domácej sieti (WiFi a Ethernet atď.) Budú mať adresy IP v rozsahu od 192.168.0.2 až 192.168.0.254.
Server NFS bude nakonfigurovaný tak, aby umožňoval prístup k serveru NFS iba zariadeniam, ktoré majú iba vyššie uvedenú adresu IP. Tým by sa zabezpečilo, že k mojim súborom majú prístup iba zariadenia, ktoré sú pripojené k mojej sieti LAN a okolitý svet k nim nemá prístup. Ak máte otvorené „nastavenie Wi-Fi“ alebo ak je zabezpečenie koncového bodu smerovača pochybné, nezaručuje to nijaké zabezpečenie.
Neodporúčal by som prevádzkovať NFS cez verejný internet bez ďalších bezpečnostných opatrení.
Nakoniec, príkazy spúšťané na serveri NFS majú výzvu, server $ a príkazy, ktoré sa majú spustiť na strane klienta, majú výzvu klienta $
Vytváranie fondu OpenZFS a datasetu
1. Vytvára sa zpool
Ak už máte spustený zpool, preskočte tento krok. Na mojom serveri NFS so systémom Ubuntu 18.04 LTS server, najskôr nainštalujem OpenZFS.
server $ sudo apt nainštalovať zfsutils-linuxĎalej uvedieme zoznam všetkých dostupných blokových zariadení, aby sme videli nové disky (a oddiely) čakajúce na formátovanie pomocou zfs.
$ lsblkMENO MAJ: MIN. VEĽKOSŤ RM TYP ROUN MOUNTPOINT
slučka0 7: 0 0 89.5M 1 očko / patentka / jadro / 6130
loop1 7: 1 0 86.9M 1 očko / patentka / jadro / 4917
loop2 7: 2 0 91.1M 1 očko / patentka / jadro / 6259
sda 8: 0 0 50G 0 disk
├─sda1 8: 1 0 1M 0 diel
└─sda2 8: 2 0 50G 0 diel /
sdb 8:16 0 931G 0 disk
sdc 8:32 0 931G 0 disk
sr0 11: 0 1 1024M 0 rom
Typický príklad je uvedený vyššie, ale vaša konvencia pomenovania sa môže veľmi líšiť. Budete musieť použiť svoj vlastný úsudok a buďte pri tom veľmi opatrní. Nechcete omylom naformátovať disk s operačným systémom. Napríklad oddiel sda1 má ako prípojný bod jednoznačne koreňový súborový systém, takže sa ho nie je rozumné dotknúť. Ak používate nové disky, je pravdepodobné, že nebudú mať prípojný bod ani žiadny iný oddiel.
Keď poznáte názov svojich zariadení, pomocou príkazu zpool create naformátujeme niekoľko týchto blokových zariadení (nazývaných sdb a sdc) na zpool s jediným vdev, ktorý je zložený z dvoch zrkadlených diskov.
server $ sudo zpool vytvoriť tank zrkadlo sdb sdcserver $ sudo zpool status tank
stav nádrže zpool
bazén: nádrž
štát: ONLINE
skenovanie: žiadny požadovaný
konfigurácia:
NÁZOV ŠTÁT ČÍTAJTE NAPÍŠTE CKSUM
nádrž ONLINE 0 0 0
zrkadlo-0 ONLINE 0 0 0
sdb ONLINE 0 0 0
sdc ONLINE 0 0 0
chyby: Žiadne známe chyby údajov
Vpred môžete pridať disky do sád dvoch (nazývaných vdev), aby ste zväčšili veľkosť tohto zpoolu, nové disky sa zobrazia ako mirror-1, mirror-2 atď. Nemusíte vytvárať svoj zpool tak, ako som to robil ja, môžete použiť zrkadlenie na viacerých diskoch, môžete použiť striping bez nadbytočnosti, ale s lepším výkonom, alebo môžete použiť RAIDZ. Viac informácií sa dozviete tu.
Na konci dňa záleží na tom, že sme vytvorili zpool s názvom tank. Podľa ktorého bude zdieľaný NFS žiť. Vytvorme množinu údajov, ktorá sa bude zdieľať. Najskôr sa uistite, či je bazén s názvom „nádrž“ namontovaný. Predvolený bod pripojenia je „/ tank“ .
server $ sudo zfs pripojiť nádržserver $ sudo zfs create tank / nfsshare #vytvorte nový súbor údajov v hornej časti bazéna
Nastavenie povolení
Pri zdieľaní adresára NFS nemá superuser v klientskom systéme prístup k ničomu v zdieľanom priečinku. Zatiaľ čo superuser na strane klienta je schopný na klientskom počítači robiť čokoľvek, pripojenie NFS nie je technicky súčasťou klientskeho počítača. Povolenie operácií v mene superusera na strane klienta mapovaného ako superuser na strane servera by preto mohlo viesť k problémom so zabezpečením. V predvolenom nastavení NFS mapuje akcie superužívateľa na strane klienta na nikoho: používateľa a skupinu používateľov. Ak máte v úmysle získať prístup k pripojeným súborom ako root, potom by mala mať rovnaká povolenia aj množina údajov na našom serveri NFS,
server $ sudo chown nikto: nogroup / tank / nfsshareServer NFS vykoná akúkoľvek akciu rootom klienta ako nikto, takže vyššie uvedené povolenie umožní operáciám prejsť.
Ak používate iné (bežné) používateľské meno, je často výhodné mať na oboch stranách používateľa s rovnakým presným používateľským menom.
Vytvára sa zdieľanie NFS
Po vytvorení Zpool by ste mali nainštalovať balík servera nfs z vášho správcu balíkov:
server $ sudo apt nainštalovať nfs-kernel-serverServer NFS tradične používa súbor / etc / export na získanie zoznamu schválených klientov a súborov, ku ktorým budú mať prístup. Na dosiahnutie toho istého však použijeme zabudovanú funkciu ZFS.
Stačí použiť príkaz:
server $ sudo zfs set sharenfs = ”on” / tank / nfssharePredtým som narážal na poskytnutie prístupu iba určitým adresám IP. Môžete to urobiť nasledovne:
server $ sudo zfs set sharenfs = "[chránený e-mailom] / 24" tank / nfsshare„Rw“ znamená oprávnenie na čítanie a zápis, za ktorým nasleduje rozsah adries IP. Uistite sa, že sú na bráne firewall otvorené porty číslo 111 a 2049. Ak používate ufw, môžete to skontrolovať spustením:
stav servera $ ufwPoznačte si IP vášho servera v LAN pomocou príkazu ifconfig alebo ip addr. Hovorme tomu server.ip
Montáž na stranu klienta
Po vytvorení zdieľania ho môžete pripojiť na svojom klientskom počítači spustením príkazu:
klient $ mount -t server nfs.ip: / tank / nfsshare / mntTýmto sa pripojí zdieľaný priečinok NFS do priečinka / mnt, ale rovnako ľahko by ste si mohli vybrať akýkoľvek iný bod pripojenia podľa vášho výberu.
Záver
Zdieľanie súborov je pravdepodobne najdôležitejším aspektom správy systému. Zlepšuje vaše chápanie zásobníka, sietí, používateľských povolení a privilégií. Rýchlo si uvedomíte dôležitosť zásady najmenšieho oprávnenia - to znamená, že používateľovi poskytnete k svojej práci iba ten najvyšší možný prístup, ktorý potrebuje.
Dozviete sa tiež o interoperabilite medzi rôznymi operačnými systémami. Používatelia systému Windows majú prístup k súborom NFS, takže k nim majú prístup aj používatelia počítačov Mac a BSD. Ak pracujete so sieťou strojov, ktoré majú svoje vlastné konvencie a ľudovú reč, nemôžete sa obmedziť na jeden OS. Takže do toho a experimentujte so svojím zdieľaním NFS. Dúfam, že si sa niečo naučil.