Symlink Tutorial in Linux .
Cuprins:
- Cerințe preliminare
- Configurați serverul NFS
- Instalarea serverului NFS
- Crearea sistemelor de fișiere
- Exportarea sistemelor de fișiere
- Configurare firewall
- Configurați clienții NFS
- Instalarea clientului NFS
- Montarea sistemelor de fișiere
- Testarea accesului NFS
- Demontarea sistemului de fișiere NFS
- Concluzie
Network File System (NFS) este un protocol de sistem de fișiere distribuit care vă permite să partajați directoarele la distanță printr-o rețea. Cu NFS, puteți monta directoare la distanță pe sistemul dvs. și puteți lucra cu fișierele de pe mașina de la distanță, ca și cum ar fi fișiere locale.
Protocolul NFS nu este criptat în mod implicit și spre deosebire de Samba, nu oferă autentificarea utilizatorului. Accesul la server este restricționat de adresele IP sau nume de gazdă ale clienților.
În acest tutorial, vom examina modul de configurare a unui server NFSv4 pe Ubuntu 18.04. Vă vom arăta, de asemenea, cum să montați un sistem de fișiere NFS pe client.
Cerințe preliminare
Acest exemplu presupune că aveți un server care rulează Ubuntu 18.04 și altul care rulează orice altă distribuție Linux. Serverul și clienții ar trebui să poată comunica între ei printr-o rețea privată. Dacă furnizorul dvs. de găzduire nu oferă adrese IP private, puteți utiliza adrese IP publice și configurați firewall-ul serverului pentru a permite traficul pe portul
2049
numai din surse de încredere.
Mașinile din acest exemplu au următoarele IP-uri:
NFS Server IP: 192.168.33.10 NFS Clients IPs: From the 192.168.33.0/24 range
Configurați serverul NFS
Vom începe prin instalarea și configurarea serverului NFS.
Instalarea serverului NFS
Actualizați indexul pachetelor și instalați pachetul server NFS:
sudo apt update
sudo apt install nfs-kernel-server
După terminarea instalării, serviciile NFS vor începe automat.
În mod implicit, pe Ubuntu 18.04 versiunea 2 NFS este dezactivată. Versiunile 3 și 4 sunt activate. Puteți verifica acest lucru executând următoarea comandă
cat
:
sudo cat /proc/fs/nfsd/versions
-2 +3 +4 +4.1 +4.2
NFSv2 este destul de vechi acum și nu există niciun motiv pentru a-l activa.
Opțiunile de configurare a serverului NFS sunt setate în fișierele
/etc/default/nfs-kernel-server
și
/etc/default/nfs-common
. Setările implicite sunt suficiente în cazul nostru.
Crearea sistemelor de fișiere
Atunci când configurați un server NFSv4, este o bună practică să utilizați un director rădăcină global NFS și să legați directoarele reale la punctul de montaj partajat. În acest exemplu, vom folosi directorul
/srv/nfs4
ca rădăcină NFS.
Vom împărtăși două directoare (
/var/www
și
/opt/backups
), cu setări diferite de configurare, pentru a explica mai bine cum pot fi configurate monturile NFS.
/var/www/
este deținut de utilizator și grupul
www-data
și
/opt/backups
sunt deținute de
root
.
Creați sistemul de fișiere de export utilizând comanda
mkdir
:
sudo mkdir -p /srv/nfs4/backups
sudo mkdir -p /srv/nfs4/www
Montați directoarele reale:
sudo mount --bind /opt/backups /srv/nfs4/backups
sudo mount --bind /var/www /srv/nfs4/www
Pentru a face suporturile de legare permanente, deschideți
/etc/fstab
:
sudo nano /etc/fstab
și adăugați următoarele linii:
/ Etc / fstab
/opt/backups /srv/nfs4/backups none bind 0 0 /var/www /srv/nfs4/www none bind 0 0
Exportarea sistemelor de fișiere
Următorul pas este definirea sistemelor de fișiere care vor fi exportate de serverul NFS, opțiunile de partajare și clienții cărora li se permite accesul la aceste sisteme de fișiere. Pentru aceasta, deschideți
/etc/exports
:
sudo nano /etc/exports
Fișierul
/etc/exports
conține, de asemenea, comentarii care descriu modul de export a unui director.
În cazul nostru, trebuie să exportăm directoarele
www
și
backups
și să permitem accesul numai de la clienți în rețeaua
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)
Prima linie conține
fsid=0
care definește directorul rădăcină NFS
/srv/nfs
. Accesul la acest volum NFS este permis doar clienților din subrețea
192.168.33.0/24
. Opțiunea
crossmnt
este necesară pentru a partaja directoare care sunt subdirectoare ale unui director exportat.
În a doua linie se arată cum se pot specifica mai multe reguli de export pentru un sistem de fișiere.
/srv/nfs4/backups
directorul
/srv/nfs4/backups
și permite accesul numai de citire la întregul interval
192.168.33.0/24
și accesul atât la citire cât și la scriere la
192.168.33.3
. Opțiunea de
sync
spune NFS să scrie modificări pe disc înainte de a răspunde.
Ultima linie ar trebui să fie explicativă. Pentru mai multe informații despre toate opțiunile disponibile, tipul
man exports
în terminalul dvs.
Salvați fișierul și exportați acțiunile:
sudo exportfs -ra
Trebuie să rulați comanda de mai sus de fiecare dată când modificați
/etc/exports
. Dacă există erori sau avertismente, acestea vor fi afișate pe terminal.
Pentru a vizualiza exporturile active actuale și starea lor, utilizați:
sudo exportfs -v
Rezultatul va include toate acțiunile cu opțiunile lor. După cum vedeți, există și opțiuni pe care nu le-am definit în
/etc/exports
. Acestea sunt opțiuni implicite și dacă doriți să le schimbați, va trebui să setați în mod explicit opțiunile respective.
/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)
Pe Ubuntu,
root_squash
este activat implicit. Aceasta este una dintre cele mai importante opțiuni privind securitatea NFS. Împiedică utilizatorii root conectați de la clienți să aibă privilegii root pe acțiunile montate. Acesta va
UID
și
GID
rădăcină către
nobody
/
nogroup
UID
/
GID
.
Pentru ca utilizatorii de pe mașinile client să aibă acces, NFS se așteaptă ca utilizatorul și ID-ul clientului să se potrivească cu cele de pe server. O altă opțiune este utilizarea funcției de idmapping NFSv4 care traduce ID-urile de utilizator și de grup la nume și invers.
Asta e. În acest moment, ați configurat un server NFS pe serverul dvs. Ubuntu. Acum puteți trece la pasul următor și configurați clienții și vă puteți conecta la serverul NFS.
Configurare firewall
Presupunând că utilizați
UFW
pentru a gestiona firewallul pentru a permite accesul din subrețea
192.168.33.0/24
trebuie să rulați următoarea comandă:
sudo ufw allow from 192.168.33.0/24 to any port nfs
Pentru a verifica execuția modificării:
sudo ufw status
Ieșirea ar trebui să arate că traficul pe portul
2049
este permis:
To Action From -- ------ ---- 2049 ALLOW 192.168.33.0/24 22/tcp ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6)
Configurați clienții NFS
Acum, când serverul NFS este configurat și partajele sunt exportate la pasul următor, configurați clienții și montați sistemele de fișiere la distanță.
Puteți monta, de asemenea, cota NFS pe macOS și mașini Windows, dar ne vom concentra pe sistemele Linux.
Instalarea clientului NFS
Pe aparatele client trebuie să instalăm doar instrumentele necesare pentru montarea unui sistem de fișiere NFS la distanță.
-
Instalați clientul NFS pe Debian și Ubuntu
Numele pachetului care include programe pentru montarea sistemelor de fișiere NFS pe distribuții bazate pe Debian este
nfs-common
. Pentru a instala, rulați:sudo apt update
sudo apt install nfs-common
Instalați clientul NFS pe CentOS și Fedora
Pe Red Hat și derivatele sale instalați pachetul
nfs-utils
:sudo yum install nfs-utils
Montarea sistemelor de fișiere
Vom lucra pe aparatul client cu IP
192.168.33.110
care are acces de citire și scriere la sistemul de fișiere
/srv/nfs4/www
și acces de citire numai la sistemul de fișiere
/srv/nfs4/backups
.
Creați două directoare noi pentru punctele de montare. Puteți crea aceste directoare în orice locație doriți.
sudo mkdir -p /backups
sudo mkdir -p /srv/www
Montați sistemele de fișiere exportate cu comanda
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
Unde este
192.168.33.10
este IP-ul serverului NFS. Puteți utiliza, de asemenea, numele de gazdă în locul adresei IP, dar acesta trebuie rezolvat de către mașina client. Acest lucru se face de obicei prin maparea numelui de gazdă către IP în
/etc/hosts
.
Când montați un sistem de fișiere NFSv4, trebuie să comutați directorul rădăcină NFS, deci în loc de
/srv/nfs4/backups
trebuie să utilizați
/backups
.
Verificați dacă sistemele de fișiere la distanță sunt montate cu succes folosind fie comanda mount sau
df
:
df -h
Comanda va imprima toate sistemele de fișiere montate. Ultimele două linii sunt acțiunile montate:
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
Pentru a face ca suporturile să fie permanente la repornire, deschideți
/etc/fstab
:
sudo nano /etc/fstab
și adăugați următoarele linii:
/ 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
Pentru a găsi mai multe informații despre opțiunile disponibile la montarea unui sistem de fișiere NFS, tastați
man nfs
în terminalul dvs.
O altă opțiune pentru a monta sistemele de fișiere la distanță este să folosiți instrumentul
autofs
sau să creați o unitate systemd.
Testarea accesului NFS
Să testăm accesul la acțiuni prin crearea unui nou fișier pentru fiecare dintre ele.
În primul rând, încercați să creați un fișier de testare în directorul
/backups
folosind comanda
touch
:
sudo touch /backups/test.txt
Sistemul
/backup
fișiere
/backup
este exportat doar în citire și, așa cum este de așteptat, veți vedea un mesaj de eroare
Permission denied
Permis:
touch: cannot touch '/backups/test': Permission denied
În continuare, încercați să creați un fișier de testare în directorul
/srv/www
ca rădăcină folosind comanda
sudo
:
sudo touch /srv/www/test.txt
Din nou, veți vedea mesajul
Permission denied
.
touch: cannot touch '/srv/www': Permission denied
Presupunând că aveți o utilizare
www-data
pe mașina client cu același
UID
și
GID
ca pe serverul de la distanță (ceea ce ar trebui să fie cazul, de exemplu, dacă ați instalat nginx pe ambele mașini), puteți testa pentru a crea un fișier ca utilizator.
www-data
cu:
sudo -u www-data touch /srv/www/test.txt
Comanda nu va afișa nicio ieșire ceea ce înseamnă că fișierul a fost creat cu succes.
Pentru verificare, listați fișierele din directorul
/srv/www
:
ls -la /srv/www
Rezultatul arăta fișierul nou creat:
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
Demontarea sistemului de fișiere NFS
sudo umount /backups
Dacă punctul de montaj este definit în
/etc/fstab
, asigurați-vă că eliminați linia sau comentați-l adăugând
#
la începutul liniei.
Concluzie
În acest tutorial, v-am arătat cum să configurați un server NFS și cum să montați sistemele de fișiere la distanță pe mașinile client. Dacă implementați NFS în producție și partajarea de date sensibile, este o idee bună să activați autentificarea kerberos.
Ca alternativă la NFS, puteți utiliza SSHFS pentru a monta directoarele la distanță pe o conexiune SSH. SSHFS este criptat implicit și mult mai ușor de configurat și utilizat.
Simțiți-vă liber să lăsați un comentariu dacă aveți întrebări.
terminal Ubuntu nfs mountCum se instalează și se configurează un server nfs pe Centos 8
În acest tutorial, veți parcurge pașii necesari pentru a configura un server NFSv4 pe CentOS 8. Vă vom arăta, de asemenea, cum să montați un sistem de fișiere NFS pe client.
Cum se instalează și se configurează redis pe ubuntu 18.04
Redis este un depozit de structuri de date în memorie open-source. Poate fi folosit ca bază de date, broker de cache și mesaje și acceptă diferite structuri de date, cum ar fi Strings, Hashes, Liste, seturi, etc. Acest tutorial descrie cum să instalați și configurați Redis pe un server Ubuntu 18.04.
Cum se instalează și se configurează nagios pe ubuntu 18.04
Nagios este unul dintre cele mai populare sisteme de monitorizare open source. Nagios păstrează un inventar al întregii dvs. infrastructuri IT și vă asigură că rețelele, serverele, aplicațiile, serviciile și procesele sunt în funcțiune.