Server

Sådan oprettes FTP-server på CentOS

Sådan oprettes FTP-server på CentOS

Opsætning af en FTP-server (File Transfer Protocol) på din Linux-pc giver dig mulighed for at overføre filer mellem dit system og en ekstern maskine. Vi viser dig, hvordan du opretter en FTP-server på CentOS.

Linux har allerede masser af open source FTP-servere, som du kan bruge til jobbet. Dette inkluderer populære servere som PureFTPd, ProFTPD samt vsftpd.

Du har tilladelse til at bruge en hvilken som helst af FTP-serverne, som du vil. I denne vejledning installerer og bruger vi dog vsftpd, forkortelse for Very Secure FTP Daemon. Det er en hurtig, stabil og sikker FTP-server, der hjælper dig med at overføre filer til og fra et eksternt system i en smule.

Opsætning af FTP-server på CentOS

Så uden videre, lad os komme i gang:

Installation af vsftpd

Først skal vi installere vsftpd på CentOS. For at gøre dette skal du indtaste følgende kommando i terminalen:

$ sudo dnf installerer vsftpd

Installation af vsftpd på CentOS

Med vsftpd installeret på dit CentOS-system, skal du konfigurere det, så det starter og starter automatisk. Dette kan gøres ved hjælp af følgende kommando:

$ sudo systemctl aktiver vsftpd - nu

Når det er gjort, skal du kontrollere vsftpd-servicestatus ved at indtaste denne kommando:

$ sudo systemctl status vsftpd

En outputskærm svarende til nedenstående vises. Du skal se, at vsftpd ikke er "Aktiv" på dit CentOS-system.

vsftpd aktiv og kører på CentOS

Opsætning vsftpd

Når vsftpd er aktiv og kører på dit system, skal du konfigurere serverindstillingerne. For at gøre det skal du få adgang til / etc / vsftpd / vsftpd.conf konfigurationsfil. Dette kan gøres ved at åbne konfigurationsfilen i nano-editoren ved at indtaste følgende kommando i terminalen:

$ sudo nano / etc / vsftpd / vsftpd.konf

Med filen nu åbnet i editoren, er der flere ændringer, du skal foretage for at konfigurere vsftpd på dit system. Lad os gå over dem en efter en.

1. Konfigurer FTP-adgang

Lad os først konfigurere FTP-serveren, så den kun giver adgang til de lokale brugere. For at gøre dette skal du finde direktiverne anonym_enable og local_enable i filen og redigere dem som vist på billedet nedenfor:

FTP-adgangsindstillinger

Som du kan se, skal du indstille anonym_enable = NEJ og local_enable = YES.

2. Aktivér uploads

Dernæst skal du konfigurere FTP-serveren, så den kan uploade og slette filer.

For at gøre dette skal du finde directive-direktivet og ændre det til YES, som vist på billedet.

Mulighed for at aktivere vsftpd-uploads

3. Begræns brugerlogins

Når du er færdig, vil du begrænse det samlede antal brugerlogins i.e., du vil kun have, at visse brugere skal logge ind på din FTP-server. For at gøre dette skal du først finde denne linje i .conf-fil - userlist_enable = JA. Derefter tilføjes disse to linjer i filen:

userlist_file = / etc / vsftpd / user_list userlist_deny = NEJ

Brug billedet nedenfor som reference:

Indstillinger for at begrænse brugerlogins

Du kan også vælge at aktivere denne mulighed. Hvis du gør det, skal du eksplicit angive, hvilke brugere du vil give adgang til FTP-serveren. For at tillade brugerne skal du tilføje deres brugernavne til / etc / vsftpd / user_list-filen med kun et brugernavn i hver linje.

4. Opsætning af passive FTP-forbindelser

Du vil måske også oprette passive FTP-forbindelser.

Som sådan vil vi her vise dig, hvordan du kan specificere minimums- og maksimumsområderne for portene ved at tilføje et par linjer inde i .conf-fil.

Opsætning af passive FTP-forbindelser

Alt hvad du skal gøre er at rulle ned til slutningen af ​​filen og tilføje disse to linjer som vist på billedet.

pasv_min_port = 30000 pasv_max_port = 31000

Vi diskuterer også, hvordan du kan åbne området i din firewall senere i denne vejledning.

5. Konfigurer sikre transmissioner ved hjælp af SSL / TLS

Endelig kommer der spørgsmålet om at sikre FTP-forbindelsen ved hjælp af SSL / TLS. For at gøre dette skal du have et SSL-certifikat og konfigurere din FTP-server til at bruge det.

Af hensyn til denne vejledning genererer vi dog et selvsigneret SSL-certifikat ved hjælp af OpenSSL-værktøjet og derefter bruger det til at kryptere vores FTP-transmission.

Så først og fremmest skal du bruge OpenSSL til at generere et nyt SSL-certifikat. Du kan gøre dette ved at indtaste følgende kommando i terminalen:

sudo openssl req -x509 -noder -dage 3650 -nykey rsa: 2048 -keyout / etc / vsftpd / vsftpd.pem -out / etc / vsftpd / vsftpd.pem

Oprettelse af et selvsigneret OpenSSL-certifikat i CentOS

Kørsel af ovenstående kommando genererer en 2048-bit privat nøgle samt et selvsigneret certifikat. Begge disse er gyldige i ti år og gemmes i den samme fil.

Når du har oprettet dit nye SSL-certifikat, skal du åbne vsftpd-konfigurationsfilen ved hjælp af den forrige kommando:

sudo nano / etc / vsftpd / vsftpd.konf

Rul ned og tilføj følgende linjer som vist på billedet:

rsa_cert_file = / etc / vsftpd / vsftpd.pem rsa_private_key_file = / etc / vsftpd / vsftpd.pem ssl_enable = JA

Konfiguration af SSL-indstillinger for vsftpd

Og det er det. Du har konfigureret SSL-certifikatet til din FTP-server.

6. Afslut

Når du er færdig, skal du kontrollere vsftpd-konfigurationsfilen for at se, om alle følgende indstillinger er som de er:

anonym_enable = NEJ local_enable = JA write_enable = JA local_umask = 022 dirmessage_enable = JA xferlog_enable = JA connect_from_port_20 = JA xferlog_std_format = JA lyt = NEJ listen_ipv6 = JA pam_service_name = vsftpd brugerliste = bruger_liste = bruger_liste = bruger pasv_max_port = 31000 rsa_cert_file = / etc / vsftpd / vsftpd.pem rsa_private_key_file = / etc / vsftpd / vsftpd.pem ssl_enable = JA

Når du har sørget for, at alle ovenstående ændringer er foretaget i filen, skal du gemme den. Når du er gemt, skal du genstarte vsftpd-tjenesten ved hjælp af følgende kommando:

$ sudo systemctl genstart vsftpd

Konfigurer Firewall

Hvis du har en firewall aktiveret sammen med FTP-serveren, skal du konfigurere firewallen, så den tillader FTP-transmissioner.

For at gøre dette skal du indtaste følgende kommandoer i terminalen:

$ sudo firewall-cmd --permanent --add-port = 20-21 / tcp

Ovenstående kommando åbner port 21 - som er FTP-kommandoporten, og port 20 - som er FTP-dataporten.

Du bliver også nødt til at indtaste denne kommando:

$ sudo firewall-cmd --permanent --add-port = 30000-31000 / tcp

Denne kommando åbner 30000-31000 passive porteintervaller, som vi tidligere har konfigureret.

Tillader vsftpd-serveren at passere gennem CentOS-firewall

Når du er færdig, skal du genindlæse firewallen ved hjælp af følgende kommando:

$ firewall-cmd --indlæs

Sådan oprettes en ny FTP-bruger

Nu hvor du har konfigureret din vsftpd-server på dit CentOS-system, er det tid til at oprette en ny FTP-bruger og teste den.

Lad os først oprette en ny FTP-bruger (newftpuser) ved hjælp af følgende kommando:

$ sudo adduser newftpuser

Derefter skal du indstille en adgangskode til den nye bruger. For at gøre dette skal du bruge denne kommando:

$ sudo passwd newftpuser

Sørg for, at adgangskoden er stærk og længere end otte tegn.

Oprettelse af en ny FTP-bruger

Når du har oprettet den nye bruger, skal du føje den til FTP-brugerlisten. Dette kan gøres ved at indtaste følgende kommando i terminalen:

$ echo "newftpuser" | sudo tee -a / etc / vsftpd / user_list

Endelig skal du oprette et FTP-katalogtræ, hvor du vil indstille alle de korrekte tilladelser. For at gøre dette skal du indtaste følgende række kommandoer i terminalen:

$ sudo mkdir -p / home / newftpuser / ftp / upload $ sudo chmod 550 / home / newftpuser / ftp $ sudo chmod 750 / home / newftpuser / ftp / upload $ sudo chown -R newftpuser: / home / newftpuser / ftp

Opret et FTP-katalogtræ

På nuværende tidspunkt er din FTP-server fuldt funktionel og klar til brug. Du kan nu oprette forbindelse til den ved hjælp af en hvilken som helst FTP-klient som FileZilla. Bare sørg for, at FTP-klienten også kan konfigureres til at bruge TLS-kryptering, da den bruges til at kryptere FTP-transmissioner.

Deaktiver shelladgang

En ting, du skal huske på, når du opretter en ny FTP-bruger, er, medmindre brugeren udtrykkeligt er angivet, vil brugeren have SSH-adgang til serveren.

Hvis du ønsker at deaktivere shelladgang fra brugeren, skal du oprette en ny shell, der udskriver en besked, der informerer brugeren om, at - “Denne konto er kun begrænset til FTP-adgang.”

For at gøre dette skal du indtaste følgende kommando i terminalen:

$ echo -e '#!/ bin / sh \ necho "Denne konto er kun begrænset til FTP-adgang."'| sudo tee -a / bin / ftponly $ sudo chmod a + x / bin / ftponly

Ovenstående kommando opretter shell / bin / ftponly og udfører den.

Derefter skal du tilføje den nye skal til listen over gyldige skaller, der er placeret inde i / etc / skaller fil. Dette gøres ved hjælp af følgende kommando:

$ echo "/ bin / ftponly" | sudo tee -a / etc / skaller

Og som det sidste trin er alt hvad du skal gøre, at ændre brugerskallen til / bin / ftponly ved hjælp af denne kommando:

$ sudo usermod newftpuser -s / bin / ftponly

For alle fremtidige FTP-brugere kan du også bruge den samme kommando til at ændre deres shell, så de kun kan have FTP-adgang.

Mus Efterlig museklik ved at svæve ved hjælp af Clickless Mouse i Windows 10
Efterlig museklik ved at svæve ved hjælp af Clickless Mouse i Windows 10
Brug af en mus eller et tastatur i den forkerte kropsholdning af overdreven brug kan resultere i mange sundhedsmæssige problemer, herunder stamme, kar...
Mus Føj musbevægelser til Windows 10 ved hjælp af disse gratis værktøjer
Føj musbevægelser til Windows 10 ved hjælp af disse gratis værktøjer
I de senere år har computere og operativsystemer udviklet sig meget. Der var et tidspunkt, hvor brugerne skulle bruge kommandoer til at navigere genne...
Mus Styr og administrer musebevægelse mellem flere skærme i Windows 10
Styr og administrer musebevægelse mellem flere skærme i Windows 10
Dual Display Mouse Manager lader dig kontrollere og konfigurere musebevægelse mellem flere skærme ved at bremse dens bevægelser nær grænsen. Windows 1...