FileZilla Server Tutorial - Setup FTP Server
Indholdsfortegnelse:
- Forudsætninger
- Konfigurer NFS-serveren
- Installation af NFS-serveren
- Oprettelse af filsystemer
- Eksport af filsystemerne
- Firewall-konfiguration
- Konfigurer NFS-klienter
- Installation af NFS-klienten
- Montering af filsystemer
- Test af NFS-adgang
- Afmontering af NFS-filsystem
- Konklusion
Network File System (NFS) er en distribueret filsystemprotokol, der giver dig mulighed for at dele eksterne mapper over et netværk. Med NFS kan du montere eksterne biblioteker på dit system og arbejde med filerne på fjernmaskinen, som om de var lokale filer.
NFS-protokollen er ikke krypteret som standard, og i modsætning til Samba giver den ikke brugergodkendelse. Adgang til serveren er begrænset af klienternes IP-adresser eller hostnavne.
I denne selvstudie gennemgår du de trin, der er nødvendige for at opsætte en NFSv4-server på CentOS 8. Vi viser dig også, hvordan du monterer et NFS-filsystem på klienten.
Forudsætninger
Vi antager, at du har en server, der kører CentOS 8, hvorpå vi konfigurerer NFS-serveren og andre maskiner, der fungerer som NFS-klienter. Serveren og klienterne skal være i stand til at kommunikere med hinanden via et privat netværk. Hvis din hostingudbyder ikke tilbyder private IP-adresser, kan du bruge de offentlige IP-adresser og konfigurere server firewall til kun at tillade trafik i port
2049
fra pålidelige kilder.
Maskinerne i dette eksempel har følgende IP'er:
NFS Server IP: 192.168.33.148 NFS Clients IPs: From the 192.168.33.0/24 range
Konfigurer NFS-serveren
Dette afsnit forklarer, hvordan du installerer de nødvendige pakker, opretter og eksporterer NFS-mapper og konfigurerer firewall.
Installation af NFS-serveren
Pakken “nfs-utils” indeholder NFS-hjælpeprogrammer og dæmoner til NFS-serveren. For at installere det køres følgende kommando:
sudo dnf install nfs-utils
Når installationen er afsluttet, skal du aktivere og starte NFS-tjenesten ved at skrive:
sudo systemctl enable --now nfs-server
Som standard er CentOS 8 NFS version 3 og 4.x aktiveret, version 2 er deaktiveret. NFSv2 er temmelig gammel nu, og der er ingen grund til at aktivere det. For at verificere det, køres følgende
cat
:
sudo cat /proc/fs/nfsd/versions
-2 +3 +4 +4.1 +4.2
Indstillinger for NFS-serverkonfiguration er indstillet i
/etc/nfsmount.conf
og
/etc/nfs.conf
. Standardindstillingerne er tilstrækkelige til vores tutorial.
Oprettelse af filsystemer
Når du konfigurerer en NFSv4-server, er det en god praksis at bruge et globalt NFS-rodkatalog og binde montering af de faktiske mapper til delingsmonteringspunktet. I dette eksempel vil vi bruge
/srv/nfs4
direktøren som NFS-rod.
For bedre at forklare, hvordan NFS-monteringerne kan konfigureres, deler vi to mapper (
/var/www
og
/opt/backups
) med forskellige konfigurationsindstillinger.
/var/www/
ejes af brugeren og
apache
og
/opt/backups
ejes af
root
.
Opret eksportfilsystemet ved hjælp af kommandoen
mkdir
:
sudo mkdir -p /srv/nfs4/{backups, www}
Monter de faktiske mapper:
sudo mount --bind /opt/backups /srv/nfs4/backups
sudo mount --bind /var/www /srv/nfs4/www
For at gøre bindemonteringerne permanente skal du tilføje følgende poster til filen
/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
Eksport af filsystemerne
Det næste trin er at definere de filsystemer, der eksporteres af NFS-serveren, delingsindstillingerne og de klienter, der har adgang til disse filsystemer. Åbn dette for at åbne filen
/etc/exports
:
sudo nano /etc/exports
Eksporter mapperne
www
og
backups
og lad kun adgang fra klienter på
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)
Den første linje indeholder
fsid=0
som definerer NFS-rodmappen
/srv/nfs
. Adgangen til dette NFS-volumen er kun tilladt for klienterne fra undernettet
192.168.33.0/24
.
crossmnt
kræves for at dele kataloger, der er underkataloger i et eksporteret bibliotek.
Den anden linje viser, hvordan man specificerer flere eksportregler for et filsystem. Det eksporterer biblioteket
/srv/nfs4/backups
og giver kun læseadgang til hele
192.168.33.0/24
, og både læse- og skriveadgang til
192.168.33.3
.
sync
fortæller NFS at skrive ændringer til disken, inden de svarer.
Den sidste linje skal være selvforklarende. For at få flere oplysninger om alle de tilgængelige indstillinger, skriv
man exports
i din terminal.
Gem filen og eksporter delingene:
sudo exportfs -ra
Du skal køre kommandoen ovenfor hver gang du ændrer filen
/etc/exports
. Hvis der er fejl eller advarsler, vises de på terminalen.
Hvis du vil se den aktuelle aktive eksport og deres tilstand, skal du bruge:
sudo exportfs -v
Outputet vil omfatte alle aktier med deres optioner. Som du kan se, er der også indstillinger, som vi ikke har defineret i filen
/etc/exports
. Dette er standardindstillinger, og hvis du vil ændre dem, skal du indstille disse indstillinger eksplicit.
/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
er en af de vigtigste muligheder for NFS-sikkerhed. Det forhindrer, at root-brugere, der er tilsluttet fra klienterne, har root-privilegier på de monterede aktier. Det vil kortlægge root
UID
og
GID
til
nobody
/
nogroup
UID
/
GID
.
For at brugere på klientmaskiner skal have adgang, forventer NFS, at klientens bruger- og gruppe-ID'er matcher dem på serveren. En anden mulighed er at bruge NFSv4-idmapping-funktionen, der oversætter bruger- og gruppe-ID'er til navne og omvendt.
Det er det. På dette tidspunkt har du konfigureret en NFS-server på din CentOS-server. Du kan nu gå til næste trin og konfigurere klienterne og oprette forbindelse til NFS-serveren.
Firewall-konfiguration
FirewallD er standard firewall-løsningen på Centos 8.
NFS-tjenesten inkluderer foruddefinerede regler for at give adgang til NFS-serveren.
De følgende kommandoer tillader permanent adgang fra undernettet
192.168.33.0/24
:
sudo firewall-cmd --new-zone=nfs --permanent
sudo firewall-cmd --zone=nfs --add-service=nfs --permanent
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
Konfigurer NFS-klienter
Nu hvor NFS-serveren er konfigureret og eksporten af dele, konfigureres det næste trin klienterne og monterer de eksterne filsystemer.
Du kan også montere NFS-andelen på macOS- og Windows-maskiner, men vi vil fokusere på Linux-systemer.
Installation af NFS-klienten
På klientens maskiner skal du installere de nødvendige værktøjer til at montere eksterne NFS-filsystemer.
-
Installer NFS-klient på Debian og Ubuntu
Navnet på pakken, der inkluderer programmer til montering af NFS-filsystemer på Debian-baserede distributioner er
nfs-common
. Sådan installeres det:sudo apt update
sudo apt install nfs-common
Installer NFS-klient på CentOS og Fedora
På Red Hat og dets derivater installerer pakken
nfs-utils
:sudo yum install nfs-utils
Montering af filsystemer
Vi arbejder på klientmaskinen med IP
192.168.33.110
, der har læse- og skriveadgang til filsystemet
/srv/nfs4/www
og
/srv/nfs4/www
adgang til filsystemet
/srv/nfs4/backups
.
Opret to nye mapper til monteringspunkterne. Du kan oprette disse mapper, hvor som helst, du ønsker.
sudo mkdir -p /backups
sudo mkdir -p /srv/www
Monter de eksporterede filsystemer med
mount
kommandoen:
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
Hvor
192.168.33.148
er IP-adressen for NFS-serveren. Du kan også bruge værtsnavnet i stedet for IP-adressen, men det skal løses af klientmaskinen. Dette gøres normalt ved at kortlægge værtsnavnet til IP i filen
/etc/hosts
.
Når du installerer et NFSv4-filsystem, skal du udelade NFS-rodmappen, så i stedet for
/srv/nfs4/backups
skal du bruge
/backups
.
Kontroller, at de eksterne filsystemer er monteret med succes ved hjælp af enten kommandoen mount eller
df
:
df -h
Kommandoen udskriver alle monterede filsystemer. De sidste to linjer er de monterede aktier:
… 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
For at gøre monteringen permanent ved genstart skal du åbne filen
/etc/fstab
:
sudo nano /etc/fstab
og tilføj følgende linjer:
/ 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
For at finde mere information om de tilgængelige indstillinger, når du monterer et NFS-filsystem, skal du skrive
man nfs
på din terminal.
En anden mulighed for at montere de eksterne filsystemer er at bruge enten
autofs
værktøjet eller at oprette en systemd-enhed.
Test af NFS-adgang
Lad os teste adgangen til aktierne ved at oprette en ny fil i hver af dem.
Forsøg først at oprette en testfil til
/backups
biblioteket ved hjælp af
touch
kommandoen:
sudo touch /backups/test.txt
Fil / systemet til
/backup
eksporteres som skrivebeskyttet, og som forventet vil du se en
Permission denied
fejlmeddelelse:
touch: cannot touch '/backups/test': Permission denied
Prøv derefter at oprette en testfil til
/srv/www
biblioteket som en rod ved hjælp af kommandoen
sudo
:
sudo touch /srv/www/test.txt
Igen vil du se meddelelsen om
Permission denied
.
touch: cannot touch '/srv/www': Permission denied
root_squash
/var/www
ejes af
apache
brugeren, og denne deling er indstillet til
root_squash
, der kortlægger rodbrugeren til gruppen
nobody
og
nogroup
, der ikke har skrivetilladelser til fjerndelingen.
Hvis man antager, at der findes en bruger-
apache
på klientmaskinen med den samme
UID
og
GID
som på fjernserveren (hvilket skulle være tilfældet, hvis du for eksempel installerede apache på begge maskiner), kan du teste for at oprette en fil som bruger-
apache
med:
sudo -u apache touch /srv/www/test.txt
Kommandoen viser ingen output, hvilket betyder, at filen blev oprettet med succes.
Hvis du vil bekræfte det, vises filerne i
/srv/www
biblioteket:
ls -la /srv/www
Outputet skal vise den nyligt oprettede fil:
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
Afmontering af NFS-filsystem
sudo umount /backups
Hvis monteringspunktet er defineret i filen
/etc/fstab
, skal du sørge for at fjerne linjen eller kommentere den ved at tilføje
#
i starten af linjen.
Konklusion
I denne tutorial har vi vist dig, hvordan du indstiller en NFS-server, og hvordan man installerer de eksterne filsystemer på klientmaskinerne. Hvis du implementerer NFS i produktion og deler fornuftige data, er det en god ide at aktivere kerberos-godkendelse.
Som et alternativ til NFS kan du bruge SSHFS til at montere fjernkataloger over en SSH-forbindelse. SSHFS er krypteret som standard og meget lettere at konfigurere og bruge.
Du er velkommen til at give en kommentar, hvis du har spørgsmål.
centos nfs monteringsterminalSådan installeres og konfigureres redis på centos 7
Redis er en open source i hukommelsesdatastruktur butik. Det kan bruges som en database, cache og meddelelsesmægler og understøtter forskellige datastrukturer såsom Strings, Hashes, Lister, Sets osv.
Sådan installeres og konfigureres nagios på centos 7
Nagios er et af de mest populære open source overvågningssystemer. Nagios holder oversigt over hele din IT-infrastruktur og sikrer, at dine netværk, servere, applikationer, tjenester og processer er i gang. Denne tutorial beskriver, hvordan man installerer og konfigurerer Nagios Core på en CentOS 7-server.
Sådan installeres og konfigureres blæksprutte-proxy på centos 7
Squid er en fuldt udstyret cache-proxy, der understøtter populære netværksprotokoller som HTTP, HTTPS, FTP og mere. Denne tutorial forklarer, hvordan du indstiller Squid på CentOS 7