Introduction to Amazon Web Services by Leo Zhadanovsky
Sadržaj:
- Preduvjeti
- Postavljanje NFS poslužitelja
- Instaliranje NFS poslužitelja
- Izrada datotečnih sustava
- Izvoz datotečnih sustava
- Konfiguracija vatrozida
- Postavljanje NFS klijenata
- Instaliranje NFS klijenta
- Montaža datotečnih sustava
- Testiranje NFS pristupa
- Demontiranje datotečnog sustava NFS
- Zaključak
Mrežni datotečni sustav (NFS) je protokol distribuiranog datotečnog sustava koji vam omogućuje dijeljenje udaljenih direktorija preko mreže. Pomoću NFS-a možete montirati udaljene direktorije na vašem sustavu i raditi s datotekama na udaljenom računalu kao da su to lokalne datoteke.
NFS protokol nije šifriran prema zadanim postavkama i za razliku od Sambe, ne pruža provjeru autentičnosti korisnika. Pristup poslužitelju je ograničen od strane IP adresa klijenta ili imena hosta.
U ovom ćemo vodiču istražiti kako postaviti NFSv4 Server na Ubuntu 18.04. Također ćemo vam pokazati kako montirati NFS datotečni sustav na klijentu.
Preduvjeti
Ovaj primjer pretpostavlja da imate jedan poslužitelj s operativnim sustavom Ubuntu 18.04 i drugi koji pokreće bilo koju drugu distribuciju Linuxa. Poslužitelj i klijenti trebali bi biti u mogućnosti međusobno komunicirati preko privatne mreže. Ako vaš pružatelj hosting usluga ne nudi privatne IP adrese, možete koristiti javne IP adrese i konfigurirati vatrozid poslužitelja tako da dopušta promet na luci
2049
samo iz pouzdanih izvora.
Strojevi u ovom primjeru imaju sljedeće IP adrese:
NFS Server IP: 192.168.33.10 NFS Clients IPs: From the 192.168.33.0/24 range
Postavljanje NFS poslužitelja
Počet ćemo instaliranjem i konfiguriranjem NFS poslužitelja.
Instaliranje NFS poslužitelja
Osvježite indeks paketa i instalirajte paket NFS poslužitelja:
sudo apt update
sudo apt install nfs-kernel-server
Nakon što je instalacija dovršena, NFS usluge će se pokrenuti automatski.
Na Ubuntu 18.04 NFS verzija 2 je po defaultu onemogućena. Omogućene su verzije 3 i 4. To možete potvrditi pokretanjem sljedeće
cat
naredbe:
sudo cat /proc/fs/nfsd/versions
-2 +3 +4 +4.1 +4.2
NFSv2 je sada prilično star i nema razloga da to omogućite.
Opcije konfiguracije NFS poslužitelja postavljene su u
/etc/default/nfs-kernel-server
i
/etc/default/nfs-common
datotekama. Zadane postavke su u našem slučaju dostatne.
Izrada datotečnih sustava
Kada konfigurirate NFSv4 poslužitelj, dobra je praksa koristiti globalni korijenski direktorij NFS i povezati montiranje stvarnih direktorija na zajedničko mjesto ugradnje. U ovom ćemo primjeru upotrijebiti
/srv/nfs4
direktor kao NFS korijen.
Dijelit ćemo dvije direktorije (
/var/www
i
/opt/backups
), s različitim konfiguracijskim postavkama, kako bismo bolje objasnili kako se mogu konfigurirati NFS nosači.
/var/www/
je u vlasništvu korisnika, a grupa
www-data
i
/opt/backups
su u vlasništvu
root
.
Izradite izvozni datotečni sustav pomoću naredbe
mkdir
:
sudo mkdir -p /srv/nfs4/backups
sudo mkdir -p /srv/nfs4/www
Montirajte stvarne imenike:
sudo mount --bind /opt/backups /srv/nfs4/backups
sudo mount --bind /var/www /srv/nfs4/www
Da biste postavili vezanje stalnika trajnim, otvorite
/etc/fstab
datoteku:
sudo nano /etc/fstab
i dodajte sljedeće retke:
/ Etc / fstab
/opt/backups /srv/nfs4/backups none bind 0 0 /var/www /srv/nfs4/www none bind 0 0
Izvoz datotečnih sustava
Sljedeći je korak definiranje datotečnih sustava koje će izvoziti NFS poslužitelj, opcije dijeljenja i klijenti kojima je omogućen pristup tim datotečnim sustavima. Da biste to učinili, otvorite
/etc/exports
datoteku:
sudo nano /etc/exports
Datoteka
/etc/exports
export sadrži i komentare koji opisuju kako izvesti direktorij.
U našem slučaju moramo izvoziti
www
i
backups
i omogućiti pristup samo od klijenata na mreži
192.168.33.0/24
:
/srv/nfs4 192.168.33.0/24(rw, sync, no_subtree_check, crossmnt, fsid=0) /srv/nfs4/backups 192.168.33.0/24(ro, sync, no_subtree_check) 192.168.33.3(rw, sync, no_subtree_check) /srv/nfs4/www 192.168.33.110(rw, sync, no_subtree_check)
Prvi redak sadrži
fsid=0
koji definira NFS korijenski direktorij
/srv/nfs
. Pristup ovom NFS glasniku dostupan je samo klijentima iz podmreže
192.168.33.0/24
. Opcija
crossmnt
potrebna je za dijeljenje direktorija koji su podmape izvezenog direktorija.
U drugom retku prikazano je kako odrediti više pravila za izvoz za jedan datotečni sustav.
/srv/nfs4/backups
direktorij
/srv/nfs4/backups
i omogućuje pristup samo za čitanje u cijelom rasponu
192.168.33.0/24
, kao i pristup za čitanje i pisanje na
192.168.33.3
. Opcija
sync
govori NFS-u da napiše promjene na disk prije nego što odgovorite.
Posljednji redak trebao bi biti razumljiv. Za više informacija o svim dostupnim opcijama otkucajte
man exports
u svoj terminal.
Spremite datoteku i izvezite dionice:
sudo exportfs -ra
Morate pokrenuti naredbu iznad svake izmjene datoteke
/etc/exports
. Ako postoje pogreške ili upozorenja, one će se prikazati na terminalu.
Da biste pogledali trenutni aktivni izvoz i njihovo stanje, upotrijebite:
sudo exportfs -v
Izlaz će uključivati sve dionice sa svojim opcijama. Kao što vidite, postoje i opcije koje nismo definirali u datoteci
/etc/exports
. To su zadane opcije i ako ih želite promijeniti, morat ćete ih izričito postaviti.
/srv/nfs4/backups 192.168.33.3(rw, wdelay, root_squash, no_subtree_check, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4/www 192.168.33.110(rw, wdelay, root_squash, no_subtree_check, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4 192.168.33.0/24(rw, wdelay, crossmnt, root_squash, no_subtree_check, fsid=0, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4/backups 192.168.33.0/24(ro, wdelay, root_squash, no_subtree_check, sec=sys, ro, secure, root_squash, no_all_squash)
Na Ubuntuu je
root_squash
omogućen prema zadanim postavkama. Ovo je jedna od najvažnijih opcija koja se tiče sigurnosti NFS-a. Sprječava root korisnike povezane s klijentima da imaju korijenske povlastice na montiranim dionicama. To će preslikati korijenski
UID
i
GID
nobody
/
nogroup
UID
/
GID
.
Kako bi korisnici na klijentskim uređajima imali pristup, NFS očekuje da se korisnički ID i ID grupe podudaraju s onima na poslužitelju. Druga je mogućnost korištenje funkcije idmapiranja NFSv4 koja ID-ove korisnika i grupe prevodi u imena i obrnuto.
To je to. U ovom trenutku ste postavili NFS poslužitelj na vašem Ubuntu poslužitelju. Sada možete prijeći na sljedeći korak i konfigurirati klijente i povezati se s NFS serverom.
Konfiguracija vatrozida
Pod pretpostavkom da za upravljanje vatrozidom koristite
UFW
da biste omogućili pristup iz podmreže
192.168.33.0/24
trebate pokrenuti sljedeću naredbu:
sudo ufw allow from 192.168.33.0/24 to any port nfs
Da biste potvrdili pokretanje promjene:
sudo ufw status
Izlaz bi trebao pokazati da je promet u luci
2049
dopušten:
To Action From -- ------ ---- 2049 ALLOW 192.168.33.0/24 22/tcp ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6)
Postavljanje NFS klijenata
Sada kada je NFS poslužitelj podešen i dijele se izvezeni, sljedeći korak konfigurira klijente i montira udaljene datotečne sustave.
Također možete montirati NFS udio na macOS i Windows strojevima, ali fokusirat ćemo se na Linux sustave.
Instaliranje NFS klijenta
Na klijentskim strojevima moramo instalirati samo alate potrebne za montiranje udaljenih NFS datoteka.
-
Instalirajte NFS klijent na Debian i Ubuntu
Naziv paketa koji uključuje programe za montiranje NFS datoteka datoteka na Debianovoj distribuciji je
nfs-common
. Da biste ga instalirali pokrenite:sudo apt update
sudo apt install nfs-common
Instalirajte NFS klijent na CentOS i Fedora
Na Red Hat i njegove derivate instalirajte
nfs-utils
paket:sudo yum install nfs-utils
Montaža datotečnih sustava
Radit ćemo na klijentskom stroju s IP
192.168.33.110
koji ima pristup čitanju i
/srv/nfs4/www
datotečni sustav
/srv/nfs4/www
i samo za čitanje pristup datotečnom sustavu
/srv/nfs4/backups
.
Stvorite dvije nove direktorije za točke montiranja. Možete stvoriti ove direktorije na bilo kojoj lokaciji koju želite.
sudo mkdir -p /backups
sudo mkdir -p /srv/www
Montirajte izvezene datotečne sustave naredbom
mount
:
sudo mount -t nfs -o vers=4 192.168.33.10:/backups /backups
sudo mount -t nfs -o vers=4 192.168.33.10:/www /srv/www
Gdje je
192.168.33.10
IP NFS poslužitelja. Možete koristiti i naziv domaćina umjesto IP adrese, ali to treba razriješiti na klijentskom stroju. To se obično događa mapiranjem imena računala u IP u
/etc/hosts
datoteci.
Kada montirate NFSv4 datotečni sustav, morate izostaviti korijenski direktorij NFS, pa umjesto
/srv/nfs4/backups
morate koristiti
/backups
.
Provjerite jesu li udaljeni datotečni sustavi uspješno montirani pomoću naredbe mount ili
df
:
df -h
Naredba će ispisati sve montirane datotečne sustave. Posljednja dva retka su montirane dionice:
Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 38G 1.7G 36G 5% / devtmpfs 236M 0 236M 0% /dev tmpfs 244M 0 244M 0% /dev/shm tmpfs 244M 4.5M 240M 2% /run tmpfs 244M 0 244M 0% /sys/fs/cgroup /dev/sda2 1014M 87M 928M 9% /boot tmpfs 49M 0 49M 0% /run/user/1000 192.168.33.10:/backups 9.7G 1.2G 8.5G 13% /backups 192.168.33.10:/www 9.7G 1.2G 8.5G 13% /srv/www
Da bi nosači bili trajni pri ponovnom pokretanju, otvorite
/etc/fstab
datoteku:
sudo nano /etc/fstab
i dodajte sljedeće retke:
/ Etc / fstab
192.168.33.10:/backups /backups nfs defaults, timeo=900, retrans=5, _netdev 0 0 192.168.33.10:/www /srv/www nfs defaults, timeo=900, retrans=5, _netdev 0 0
Da biste saznali više informacija o dostupnim opcijama pri montaži NFS datotečnog sustava, upišite
man nfs
u svoj terminal.
Druga mogućnost za montiranje udaljenih datotečnih sustava je uporaba alata
autofs
ili stvaranje sistemske jedinice.
Testiranje NFS pristupa
Ispitajmo pristup dionicama kreirajući novu datoteku za svaku od njih.
Prvo pokušajte stvoriti testnu datoteku u direktorij
/backups
pomoću naredbe
touch
:
sudo touch /backups/test.txt
Datotečni sustav
/backup
izvezen je kao samo za čitanje i kao što se očekuje, vidjet ćete poruku o pogrešci s
Permission denied
dozvolom:
touch: cannot touch '/backups/test': Permission denied
Zatim pokušajte stvoriti testnu datoteku u
/srv/www
direktoriju kao korijen pomoću naredbe
sudo
:
sudo touch /srv/www/test.txt
Opet ćete vidjeti
Permission denied
.
touch: cannot touch '/srv/www': Permission denied
Pod pretpostavkom da na klijentskom računalu koristite
www-data
s istim
UID
i
GID
kao i na udaljenom poslužitelju (što bi trebalo biti slučaj ako ste, na primjer, instalirali nginx na oba stroja), možete testirati kako biste stvorili datoteku kao korisnik
www-data
s:
sudo -u www-data touch /srv/www/test.txt
Naredba neće prikazati izlaz, što znači da je datoteka uspješno stvorena.
Da biste ga potvrdili, navedite datoteke u direktoriju
/srv/www
:
ls -la /srv/www
Izlaz bi trebao pokazati novo stvorenu datoteku:
drwxr-xr-x 3 www-data www-data 4096 Jun 23 22:18. drwxr-xr-x 3 root root 4096 Jun 23 22:29.. -rw-r--r-- 1 www-data www-data 0 Jun 23 21:58 index.html -rw-r--r-- 1 www-data www-data 0 Jun 23 22:18 test.txt
Demontiranje datotečnog sustava NFS
sudo umount /backups
Ako je točka montiranja definirana u datoteci
/etc/fstab
, obavezno uklonite liniju ili komentirajte dodavanjem
#
na početku retka.
Zaključak
U ovom smo vodiču pokazali kako postaviti NFS poslužitelj i kako montirati udaljene datotečne sustave na klijentske uređaje. Ako implementirate NFS u proizvodnju i dijeljenje razumnih podataka, dobra je ideja omogućiti kerberos provjeru autentičnosti.
Kao alternativu NFS-u, možete koristiti SSHFS za postavljanje udaljenih direktorija preko SSH veze. SSHFS je zadano šifriran i puno je lakše za konfiguriranje i upotrebu.
Slobodno ostavite komentar ako imate bilo kakvih pitanja.
ubuntu nfs mount terminalKako instalirati i konfigurirati nfs poslužitelj na centos 8
U ovom ćete vodiču proći korake potrebne za postavljanje NFSv4 poslužitelja na CentOS 8. Također ćemo vam pokazati kako montirati NFS datotečni sustav na klijentu.
Kako instalirati i konfigurirati redis na ubuntu 18.04
Redis je skladište podataka s otvorenim kodom podataka u memoriji. Može se koristiti kao posrednik baze podataka, predmemoriranja i poruka te podržava različite strukture podataka kao što su Strings, Hashes, Liste, Setovi itd. Ovaj vodič opisuje kako instalirati i konfigurirati Redis na Ubuntu 18.04 poslužitelju.
Kako instalirati i konfigurirati nagios na ubuntu 18.04
Nagios je jedan od najpopularnijih sustava praćenja otvorenog koda. Nagios vodi popis vaše cjelokupne informatičke infrastrukture i osigurava da vaše mreže, poslužitelji, aplikacije, usluge i procesi rade i rade.