Android

Πώς να εγκαταστήσετε και να διαμορφώσετε ένα διακομιστή nfs σε centos 8

Howto Install Hadoop Using Ambari on Ubuntu

Howto Install Hadoop Using Ambari on Ubuntu

Πίνακας περιεχομένων:

Anonim

Το Σύστημα αρχείων δικτύου (NFS) είναι ένα πρωτόκολλο κατανεμημένου συστήματος αρχείων που σας επιτρέπει να μοιράζεστε απομακρυσμένους καταλόγους μέσω δικτύου. Με το NFS, μπορείτε να συνδέσετε απομακρυσμένους καταλόγους στο σύστημά σας και να εργαστείτε με τα αρχεία στο απομακρυσμένο μηχάνημα σαν να ήταν τοπικά αρχεία.

Το πρωτόκολλο NFS δεν είναι κρυπτογραφημένο από προεπιλογή και σε αντίθεση με τη Samba, δεν παρέχει έλεγχο ταυτότητας χρήστη. Η πρόσβαση στον διακομιστή περιορίζεται από τις διευθύνσεις IP ή τα ονόματα κεντρικών υπολογιστών των πελατών.

Σε αυτό το σεμινάριο, θα ακολουθήσετε τα απαραίτητα βήματα για τη δημιουργία ενός διακομιστή NFSv4 στο CentOS 8. Θα σας δείξουμε επίσης πώς να προσαρτήσετε ένα σύστημα αρχείων NFS στον πελάτη.

Προϋποθέσεις

Υποθέτουμε ότι έχετε ένα διακομιστή που εκτελεί CentOS 8 στον οποίο θα δημιουργήσουμε τον διακομιστή NFS και άλλα μηχανήματα που θα λειτουργούν ως πελάτες NFS. Ο διακομιστής και οι πελάτες πρέπει να είναι σε θέση να επικοινωνούν μεταξύ τους μέσω ενός ιδιωτικού δικτύου. Εάν ο παροχέας φιλοξενίας σας δεν προσφέρει ιδιωτικές διευθύνσεις IP, μπορείτε να χρησιμοποιήσετε τις δημόσιες διευθύνσεις IP και να διαμορφώσετε το τείχος προστασίας διακομιστών ώστε να επιτρέπεται η κυκλοφορία στη θύρα 2049 μόνο από αξιόπιστες πηγές.

Οι μηχανές σε αυτό το παράδειγμα έχουν τις ακόλουθες διευθύνσεις IP:

NFS Server IP: 192.168.33.148 NFS Clients IPs: From the 192.168.33.0/24 range

Ρύθμιση του διακομιστή NFS

Αυτή η ενότητα εξηγεί τον τρόπο εγκατάστασης των απαραίτητων πακέτων, τη δημιουργία και την εξαγωγή των καταλόγων NFS και τη διαμόρφωση του τείχους προστασίας.

Εγκατάσταση του διακομιστή NFS

Το πακέτο "nfs-utils" παρέχει τα βοηθητικά προγράμματα και τους δαίμονες NFS για τον διακομιστή NFS. Για να το εγκαταστήσετε, εκτελέστε την ακόλουθη εντολή:

sudo dnf install nfs-utils

Μόλις ολοκληρωθεί η εγκατάσταση, ενεργοποιήστε και ξεκινήστε την υπηρεσία NFS πληκτρολογώντας:

sudo systemctl enable --now nfs-server

Από προεπιλογή, στις εκδόσεις CentOS 8 NFS 3 και 4.x είναι ενεργοποιημένη, η έκδοση 2 είναι απενεργοποιημένη. Το NFSv2 είναι αρκετά παλιό τώρα και δεν υπάρχει λόγος να το ενεργοποιήσετε. Για να επαληθεύσετε την εκτέλεση της ακόλουθης εντολής cat :

sudo cat /proc/fs/nfsd/versions

-2 +3 +4 +4.1 +4.2

Οι επιλογές διαμόρφωσης του διακομιστή NFS ορίζονται στα αρχεία /etc/nfsmount.conf και /etc/nfs.conf . Οι προεπιλεγμένες ρυθμίσεις είναι αρκετές για το σεμινάριο μας.

Δημιουργία συστημάτων αρχείων

Κατά τη διαμόρφωση ενός διακομιστή NFSv4, είναι μια καλή πρακτική να χρησιμοποιείτε έναν γενικό κατάλογο ριζικού NFS και να δεσμεύετε να προσαρμόσετε τους πραγματικούς καταλόγους στο σημείο αναφοράς κοινής χρήσης. Σε αυτό το παράδειγμα, θα χρησιμοποιήσουμε τον /srv/nfs4 διευθυντή ως root της NFS.

Για να εξηγήσουμε καλύτερα πώς μπορούν να διαμορφωθούν τα υποστηρίγματα του NFS, θα μοιραστούμε δύο καταλόγους ( /var/www και /opt/backups ) με διαφορετικές ρυθμίσεις διαμόρφωσης.

Το /var/www/ ανήκει στον χρήστη και η ομάδα apache και /opt/backups ανήκει στο root .

Δημιουργήστε το σύστημα αρχείων εξαγωγής χρησιμοποιώντας την mkdir :

sudo mkdir -p /srv/nfs4/{backups, www}

Τοποθετήστε τους πραγματικούς καταλόγους:

sudo mount --bind /opt/backups /srv/nfs4/backups sudo mount --bind /var/www /srv/nfs4/www

Για να καταστήσετε τις mount binds μόνιμες, προσθέστε τις ακόλουθες καταχωρίσεις στο αρχείο /etc/fstab :

sudo nano /etc/fstab / etc / fstab

/opt/backups /srv/nfs4/backups none bind 0 0 /var/www /srv/nfs4/www none bind 0 0

Εξαγωγή των συστημάτων αρχείων

Το επόμενο βήμα είναι να ορίσετε τα συστήματα αρχείων που θα εξαχθούν από το διακομιστή NFS, τις επιλογές κοινόχρηστων εφαρμογών και τους υπολογιστές-πελάτες που έχουν πρόσβαση σε αυτά τα συστήματα αρχείων. Για να το ανοίξετε, ανοίξτε το αρχείο /etc/exports :

sudo nano /etc/exports

Εξάγετε τους καταλόγους www και backups και επιτρέψτε την πρόσβαση μόνο από πελάτες στο δίκτυο 192.168.33.0/24 :

/ etc / exports

/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)

Η πρώτη γραμμή περιέχει fsid=0 που καθορίζει τον ριζικό κατάλογο NFS /srv/nfs . Η πρόσβαση σε αυτόν τον τόμο NFS επιτρέπεται μόνο στους πελάτες από το 192.168.33.0/24 υποδίκτυο. Η επιλογή crossmnt απαιτείται για την κοινή χρήση καταλόγων που είναι υπο-καταλόγους ενός εξαγόμενου καταλόγου.

Η δεύτερη γραμμή δείχνει τον τρόπο καθορισμού πολλαπλών κανόνων εξαγωγής για ένα σύστημα αρχείων. Εξάγει τον κατάλογο /srv/nfs4/backups και επιτρέπει μόνο πρόσβαση ανάγνωσης σε ολόκληρη την περιοχή 192.168.33.0/24 , και η πρόσβαση ανάγνωσης και εγγραφής στο 192.168.33.3 . Η επιλογή sync λέει στο NFS να γράψει αλλαγές στο δίσκο πριν απαντήσει.

Η τελευταία γραμμή πρέπει να είναι αυτονόητη. Για περισσότερες πληροφορίες σχετικά με όλες τις διαθέσιμες επιλογές, πληκτρολογήστε man exports στο τερματικό σας.

Αποθηκεύστε το αρχείο και εξαγάγετε τα κοινόχρηστα στοιχεία:

sudo exportfs -ra

Πρέπει να εκτελέσετε την εντολή παραπάνω κάθε φορά που τροποποιείτε το αρχείο /etc/exports . Αν υπάρχουν σφάλματα ή προειδοποιήσεις, θα εμφανίζονται στο τερματικό.

Για να δείτε τις τρέχουσες ενεργές εξαγωγές και την κατάστασή τους, χρησιμοποιήστε:

sudo exportfs -v

Η έξοδος θα περιλαμβάνει όλες τις μετοχές με τις επιλογές τους. Όπως μπορείτε να δείτε, υπάρχουν και επιλογές που δεν έχουμε ορίσει στο αρχείο /etc/exports . Αυτές είναι οι προεπιλεγμένες επιλογές και αν θέλετε να τις αλλάξετε, θα πρέπει να ορίσετε ρητά αυτές τις επιλογές.

/srv/nfs4/backups 192.168.33.3(sync, wdelay, hide, no_subtree_check, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4/www 192.168.33.110(sync, wdelay, hide, no_subtree_check, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4 192.168.33.0/24(sync, wdelay, hide, crossmnt, no_subtree_check, fsid=0, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4/backups 192.168.33.0/24(sync, wdelay, hide, no_subtree_check, sec=sys, ro, secure, root_squash, no_all_squash)

root_squash είναι μια από τις πιο σημαντικές επιλογές που αφορούν την ασφάλεια του NFS. Αποτρέπει τους χρήστες root που είναι συνδεδεμένοι από τους υπολογιστές-πελάτες να έχουν δικαιώματα root για τα ενσωματωμένα κοινόχρηστα στοιχεία. Θα χαρτογραφήσει το root UID και το GID σε nobody / nogroup UID / GID .

Για να έχουν πρόσβαση οι χρήστες στις μηχανές-πελάτες, το NFS αναμένει ότι ο χρήστης και η αναγνωριστική ομάδα του πελάτη θα ταιριάζουν με εκείνους του διακομιστή. Μια άλλη επιλογή είναι να χρησιμοποιήσετε τη δυνατότητα idmapping NFSv4 που μεταφράζει αναγνωριστικά χρήστη και ομάδας σε ονόματα και αντίστροφα.

Αυτό είναι. Σε αυτό το σημείο, έχετε δημιουργήσει ένα διακομιστή NFS στον κεντρικό υπολογιστή σας CentOS. Τώρα μπορείτε να προχωρήσετε στο επόμενο βήμα και να διαμορφώσετε τους υπολογιστές-πελάτες και να συνδεθείτε με το διακομιστή NFS.

Διαμόρφωση τείχους προστασίας

Το FirewallD είναι η προεπιλεγμένη λύση τείχους προστασίας στο Centos 8.

Η υπηρεσία NFS περιλαμβάνει προκαθορισμένους κανόνες για την πρόσβαση στον διακομιστή NFS.

Οι ακόλουθες εντολές θα επιτρέπουν μόνιμα την πρόσβαση από το 192.168.33.0/24 υποδίκτυο:

sudo firewall-cmd --new-zone=nfs --permanent sudo firewall-cmd --zone=nfs --add-service=nfs --permanent sudo firewall-cmd --zone=nfs --add-source=192.168.33.0/24 --permanent sudo firewall-cmd --reload

Ρύθμιση των πελατών NFS

Τώρα που ο διακομιστής NFS είναι εγκατεστημένος και τα αρχεία εξάγονται, το επόμενο βήμα διαμορφώνει τους υπολογιστές-πελάτες και προσαρμόζει τα απομακρυσμένα συστήματα αρχείων.

Μπορείτε επίσης να προσαρτήσετε το κοινόχρηστο στοιχείο NFS σε μηχανές MacOS και Windows, αλλά θα επικεντρωθούμε σε συστήματα Linux.

Εγκατάσταση του προγράμματος-πελάτη NFS

Στις μηχανές του πελάτη, εγκαταστήστε τα εργαλεία που απαιτούνται για την τοποθέτηση απομακρυσμένων συστημάτων αρχείων NFS.

  • Εγκαταστήστε το πρόγραμμα-πελάτη NFS σε Debian και Ubuntu

    Το όνομα του πακέτου που περιλαμβάνει προγράμματα για την τοποθέτηση συστημάτων αρχείων NFS στις διανομές που βασίζονται στο Debian είναι nfs-common . Για να την εγκαταστήσετε:

    sudo apt update sudo apt install nfs-common

    Εγκαταστήστε το πρόγραμμα-πελάτη NFS σε CentOS και Fedora

    Σχετικά με το Red Hat και τα παράγωγά του εγκαταστήστε το πακέτο nfs-utils :

    sudo yum install nfs-utils

Εγκατάσταση συστημάτων αρχείων

Θα εργαστούμε στο μηχάνημα πελάτη με IP 192.168.33.110 , το οποίο έχει πρόσβαση ανάγνωσης και εγγραφής στο σύστημα αρχείων /srv/nfs4/www και πρόσβαση μόνο για ανάγνωση στο σύστημα αρχείων /srv/nfs4/backups .

Δημιουργήστε δύο νέους καταλόγους για τα σημεία συναρμολόγησης. Μπορείτε να δημιουργήσετε αυτούς τους καταλόγους σε οποιαδήποτε θέση θέλετε.

sudo mkdir -p /backups sudo mkdir -p /srv/www

Τοποθετήστε τα εξαγόμενα συστήματα αρχείων με την εντολή mount :

sudo mount -t nfs -o vers=4 192.168.33.148:/backups /backups sudo mount -t nfs -o vers=4 192.168.33.148:/www /srv/www

Όπου το 192.168.33.148 είναι η διεύθυνση IP του διακομιστή NFS. Μπορείτε επίσης να χρησιμοποιήσετε το όνομα κεντρικού υπολογιστή αντί για τη διεύθυνση IP, αλλά πρέπει να επιλύεται από το μηχάνημα-πελάτη. Αυτό γίνεται συνήθως με τη χαρτογράφηση του ονόματος του host στο IP στο αρχείο /etc/hosts .

Κατά την τοποθέτηση ενός συστήματος αρχείων NFSv4, πρέπει να παραλείψετε τον ριζικό κατάλογο NFS, οπότε αντί για /srv/nfs4/backups πρέπει να χρησιμοποιήσετε /backups .

Βεβαιωθείτε ότι τα απομακρυσμένα συστήματα αρχείων είναι εγκατεστημένα με επιτυχία χρησιμοποιώντας είτε την εντολή mount ή df :

df -h

Η εντολή θα εκτυπώσει όλα τα εγκατεστημένα συστήματα αρχείων. Οι τελευταίες δύο γραμμές είναι οι τοποθετημένες μετοχές:

… 192.168.33.148:/backups 9.7G 1.2G 8.5G 13% /backups 192.168.33.148:/www 9.7G 1.2G 8.5G 13% /srv/www

Για να κάνετε τις mounts μόνιμες κατά την επανεκκίνηση, ανοίξτε το αρχείο /etc/fstab :

sudo nano /etc/fstab

και προσθέστε τις ακόλουθες γραμμές:

/ etc / fstab

192.168.33.148:/backups /backups nfs defaults, timeo=900, retrans=5, _netdev 0 0 192.168.33.148:/www /srv/www nfs defaults, timeo=900, retrans=5, _netdev 0 0

Για να βρείτε περισσότερες πληροφορίες σχετικά με τις διαθέσιμες επιλογές κατά την τοποθέτηση ενός συστήματος αρχείων NFS, πληκτρολογήστε man nfs στο τερματικό σας.

Μια άλλη επιλογή για την εγκατάσταση των απομακρυσμένων συστημάτων αρχείων είναι να χρησιμοποιήσετε είτε το εργαλείο autofs είτε να δημιουργήσετε μια συστημένη μονάδα.

Έλεγχος πρόσβασης NFS

Ας δοκιμάσουμε την πρόσβαση στις μετοχές, δημιουργώντας ένα νέο αρχείο σε κάθε ένα από αυτά.

Αρχικά, προσπαθήστε να δημιουργήσετε ένα αρχείο δοκιμής στον κατάλογο /backups χρησιμοποιώντας την εντολή touch :

sudo touch /backups/test.txt

Το /backup σύστημα αρχείων /backup εξάγεται ως μόνο για ανάγνωση και, όπως αναμένεται, θα δείτε ένα μήνυμα σφάλματος Permission denied :

touch: cannot touch '/backups/test': Permission denied

Στη συνέχεια, προσπαθήστε να δημιουργήσετε ένα αρχείο δοκιμής στον κατάλογο /srv/www ως root χρησιμοποιώντας την εντολή sudo :

sudo touch /srv/www/test.txt

Και πάλι, θα δείτε το μήνυμα Permission denied .

touch: cannot touch '/srv/www': Permission denied

Ο κατάλογος /var/www ανήκει στον χρήστη apache και αυτό το κοινόχρηστο στοιχείο έχει την επιλογή επιλογής root_squash , η οποία χαρτογραφεί τον χρήστη ρίζας στην ομάδα χρηστών και ομάδων nogroup που δεν έχουν δικαιώματα εγγραφής στο απομακρυσμένο κοινόχρηστο στοιχείο.

Υποθέτοντας ότι υπάρχει apache χρήστης στο μηχάνημα-πελάτη με το ίδιο UID και GID όπως στον απομακρυσμένο διακομιστή (που θα έπρεπε να συμβαίνει, για παράδειγμα, εάν εγκαταστήσατε apache και στις δύο μηχανές), μπορείτε να δοκιμάσετε να δημιουργήσετε ένα αρχείο ως χρήστη apache με:

sudo -u apache touch /srv/www/test.txt

Η εντολή δεν θα εμφανίσει έξοδο, πράγμα που σημαίνει ότι το αρχείο δημιουργήθηκε με επιτυχία.

Για να την επαληθεύσετε, ορίστε τα αρχεία στον κατάλογο /srv/www :

ls -la /srv/www

Η έξοδος πρέπει να εμφανίζει το αρχείο που δημιουργήθηκε πρόσφατα:

drwxr-xr-x 3 apache apache 4096 Jun 23 22:18. drwxr-xr-x 3 root root 4096 Jun 23 22:29.. -rw-r--r-- 1 apache apache 0 Jun 23 21:58 index.html -rw-r--r-- 1 apache apache 0 Jun 23 22:18 test.txt

Αποσύνδεση του συστήματος αρχείων NFS

sudo umount /backups

Αν το σημείο προσάρτησης έχει οριστεί στο αρχείο /etc/fstab , βεβαιωθείτε ότι έχετε αφαιρέσει τη γραμμή ή το σχολιάσει προσθέτοντας # στην αρχή της γραμμής.

συμπέρασμα

Σε αυτό το σεμινάριο, σας παρουσιάσαμε πώς να ρυθμίσετε ένα διακομιστή NFS και πώς να προσαρμόσετε τα απομακρυσμένα συστήματα αρχείων στις μηχανές-πελάτες. Εάν υλοποιείτε το NFS στην παραγωγή και μοιράζεστε λογικά δεδομένα, είναι καλή ιδέα να ενεργοποιήσετε τον έλεγχο ταυτότητας Kerberos.

Ως εναλλακτική λύση για το NFS, μπορείτε να χρησιμοποιήσετε το SSHFS για να συνδέσετε απομακρυσμένους καταλόγους μέσω σύνδεσης SSH. Το SSHFS είναι κρυπτογραφημένο από προεπιλογή και πολύ πιο εύκολο στη διαμόρφωση και τη χρήση.

Μη διστάσετε να αφήσετε ένα σχόλιο εάν έχετε οποιεσδήποτε ερωτήσεις.

centos nfs