Poslužitelj

Kako postaviti FTP poslužitelj na CentOS

Kako postaviti FTP poslužitelj na CentOS

Postavljanje FTP (File Transfer Protocol) poslužitelja na vašem Linux PC-u omogućit će vam prijenos datoteka između vašeg sustava i udaljenog stroja. Pokazat ćemo vam kako postaviti FTP poslužitelj na CentOS.

Linux već ima tonu FTP poslužitelja otvorenog koda koje možete koristiti za posao. To uključuje popularne poslužitelje poput PureFTPd, ProFTPD, kao i vsftpd.

Možete koristiti bilo koji od FTP poslužitelja kako želite. Međutim, u ovom uputstvu instalirat ćemo i koristiti vsftpd, skraćenicu od Very Secure FTP Daemon. To je brz, stabilan i siguran FTP poslužitelj koji će vam pomoći u trenu za prijenos datoteka na udaljeni sustav i iz njega.

Postavljanje FTP poslužitelja na CentOS

Dakle, bez daljnjega, krenimo:

Instaliranje vsftpd

Prvo, trebat ćemo instalirati vsftpd na CentOS. Da biste to učinili, u terminal unesite sljedeću naredbu:

$ sudo dnf instaliraj vsftpd

Instaliranje vsftpd na CentOS

Kada je vsftpd instaliran na vašem CentOS sustavu, trebali biste ga konfigurirati tako da se automatski pokreće i pokreće. To se može učiniti pomoću sljedeće naredbe:

$ sudo systemctl enable vsftpd --now

Kada je to gotovo, provjerite status usluge vsftpd unošenjem ove naredbe:

$ sudo systemctl status vsftpd

Pojavit će se izlazni zaslon sličan onome u nastavku. Trebali biste vidjeti da vsftpd nije "aktivan" na vašem CentOS sustavu.

vsftpd aktivan i pokrenut na CentOS-u

Postavljanje vsftpd

Kad je vsftpd aktivan i pokrenut na vašem sustavu, morat ćete konfigurirati postavke poslužitelja. Da biste to učinili, trebat ćete pristupiti / etc / vsftpd / vsftpd.konfiguracijska datoteka conf. To se može učiniti otvaranjem konfiguracijske datoteke u nano uređivaču unošenjem sljedeće naredbe u terminal:

$ sudo nano / etc / vsftpd / vsftpd.konf

S datotekom koja je sada otvorena u uređivaču, morate izvršiti nekoliko promjena da biste postavili vsftpd na vašem sustavu. Krenimo s njima jedan po jedan.

1. Konfigurirajte FTP pristup

Prvo, konfigurirajmo FTP poslužitelj tako da dopušta pristup samo lokalnim korisnicima. Da biste to učinili, u datoteci ćete morati pronaći direktive anonimni_enable i local_enable i urediti ih kako je prikazano na donjoj slici:

Postavke FTP pristupa

Kao što vidite, morat ćete postaviti anonimno_enable = NE i local_enable = DA.

2. Omogući prijenose

Dalje, morat ćete konfigurirati FTP poslužitelj kako bi omogućio prijenos i brisanje datoteka.

Da biste to učinili, morat ćete pronaći direktivu write_enable i promijeniti je u DA, kao što je prikazano na slici.

Opcija za omogućavanje vsftpd prijenosa

3. Ograniči korisničke prijave

Kada završite, morat ćete ograničiti ukupan broj korisničkih prijava i.e., želite samo određene korisnike da se prijave na vaš FTP poslužitelj. Da biste to učinili, prvo pronađite ovaj redak u .conf datoteka - userlist_enable = DA. Nakon toga u datoteku dodajte ova dva retka:

userlist_file = / etc / vsftpd / user_list userlist_deny = NE

Koristite donju sliku kao referencu:

Postavke za ograničavanje korisničkih prijava

Također možete odabrati omogućiti ovu opciju. Ako to učinite, morat ćete izričito navesti kojim korisnicima želite dati pristup FTP poslužitelju. Da biste omogućili korisnicima, morat ćete dodati njihova korisnička imena u datoteku / etc / vsftpd / user_list sa samo jednim korisničkim imenom u svakom retku.

4. Postavljanje pasivnih FTP veza

Možda ćete htjeti postaviti i pasivne FTP veze.

Kao takvi, ovdje ćemo vam pokazati kako možete odrediti minimalni i maksimalni raspon portova dodavanjem nekoliko redaka unutar .conf datoteka.

Postavljanje pasivnih FTP veza

Sve što trebate je pomaknuti se do kraja datoteke i dodati ova dva retka, kao što je prikazano na slici.

pasv_min_port = 30000 pasv_max_port = 31000

Također ćemo razgovarati o tome kako kasnije možete otvoriti raspon u vatrozidu u ovom vodiču.

5. Konfigurirajte sigurne prijenose pomoću SSL / TLS-a

Konačno, dolazi pitanje osiguranja FTP veze pomoću SSL / TLS-a. Da biste to učinili, trebat ćete imati SSL certifikat i konfigurirati svoj FTP poslužitelj da ga koristi.

Međutim, radi ovog vodiča, generirat ćemo samopotpisani SSL certifikat pomoću alata OpenSSL, a zatim ćemo ga koristiti za šifriranje našeg FTP prijenosa.

Dakle, prvo najprije, morat ćete koristiti OpenSSL za generiranje novog SSL certifikata. To možete učiniti unošenjem sljedeće naredbe u terminal:

sudo openssl req -x509 -nodes -days 3650 -newkey rsa: 2048 -keyout / etc / vsftpd / vsftpd.pem -out / etc / vsftpd / vsftpd.pem

Stvaranje samopotpisanog OpenSSL certifikata u CentOS-u

Pokretanjem gornje naredbe generirat će se 2048-bitni privatni ključ, kao i samopotpisani certifikat. Obje vrijede deset godina i spremljene su u istu datoteku.

Nakon stvaranja novog SSL certifikata otvorite vsftpd konfiguracijsku datoteku pomoću prethodne naredbe:

sudo nano / etc / vsftpd / vsftpd.konf

Pomaknite se prema dolje i dodajte sljedeće redove kao što je prikazano na slici:

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

Konfiguriranje SSL postavki za vsftpd

I to je to. Uspješno ste konfigurirali SSL certifikat za svoj FTP poslužitelj.

6. Dovršiti

Kada završite, ponovno provjerite datoteku za konfiguraciju vsftpd da biste vidjeli jesu li sve sljedeće postavke takve kakve jesu:

anonymous_enable = NO local_enable = DA write_enable = DA local_umask = 022 dirmessage_enable = DA xferlog_enable = DA connect_from_port_20 = DA xferlog_std_format = DA slušati = NO listen_ipv6 = DA pam_service_name = vsftpd userlist_enable = DA userlist_file = / etc / vsftpd / USER_LIST userlist_deny = NO pasv_min_port-30000 pasv_max_port = 31000 rsa_cert_file = / etc / vsftpd / vsftpd.pem rsa_private_key_file = / etc / vsftpd / vsftpd.pem ssl_enable = DA

Nakon što se uvjerite da su u datoteku unesene sve gore navedene promjene, morat ćete je spremiti. Jednom spremljeni, ponovo pokrenite uslugu vsftpd pomoću sljedeće naredbe:

$ sudo systemctl ponovno pokrenite vsftpd

Konfigurirajte vatrozid

Ako vam je omogućen vatrozid zajedno s FTP poslužiteljem, tada morate konfigurirati vatrozid tako da omogućuje FTP prijenose.

Da biste to učinili, trebat ćete unijeti sljedeće naredbe u terminal:

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

Gornja naredba otvara port 21 - koji je FTP naredbeni port i port 20 - koji je FTP podatkovni port.

Također ćete morati unijeti i ovu naredbu:

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

Ova naredba otvara raspon pasivnih priključaka 30000-31000, koji smo prethodno konfigurirali.

Omogućavanje vsftpd poslužitelju da prolazi kroz CentOS vatrozid

Kada završite, morat ćete ponovo učitati vatrozid pomoću sljedeće naredbe:

$ firewall-cmd --reload

Kako stvoriti novog FTP korisnika

Sada kada ste postavili svoj vsftpd poslužitelj na vašem CentOS sustavu, vrijeme je da stvorite novog FTP korisnika i testirate ga.

Prvo stvorimo novog FTP korisnika (newftpuser) pomoću sljedeće naredbe:

$ sudo adduser newftpuser

Dalje, morat ćete postaviti lozinku za novog korisnika. Da biste to učinili, upotrijebite ovu naredbu:

$ sudo passwd newftpuser

Provjerite je li lozinka jaka i dulja od osam znakova.

Stvaranje novog FTP korisnika

Nakon izrade novog korisnika morat ćete ga dodati na FTP popis korisnika. To se može učiniti unošenjem sljedeće naredbe u terminal:

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

Napokon, morat ćete stvoriti FTP stablo direktorija gdje ćete postaviti sva ispravna dopuštenja. Da biste to učinili, trebat ćete unijeti sljedeći niz naredbi u terminal:

$ 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

Stvorite stablo FTP direktorija

Do sada je vaš FTP poslužitelj potpuno funkcionalan i spreman za rad. Sada se s njim možete povezati pomoću bilo kojeg FTP klijenta poput FileZille. Samo se pobrinite da FTP klijent također može biti konfiguriran da koristi TLS šifriranje jer se koristi za šifriranje FTP prijenosa.

Onemogući pristup ljusci

Jedna stvar koju biste trebali imati na umu prilikom stvaranja novog FTP korisnika jest da će, osim ako nije izričito navedeno, korisnik imati SSH pristup poslužitelju.

Ako želite onemogućiti pristup ljusci od korisnika, morat ćete stvoriti novu ljusku koja će ispisati poruku koja obavještava korisnika da - „Ovaj je račun ograničen samo na FTP pristup."

Da biste to učinili, u terminal ćete morati unijeti sljedeću naredbu:

$ echo -e '#!/ bin / sh \ necho "Ovaj je račun ograničen samo na FTP pristup."'| sudo tee -a / bin / ftponly $ sudo chmod a + x / bin / ftponly

Gornja naredba će stvoriti / bin / ftponly ljusku i izvršiti je.

Dalje, morat ćete dodati novu ljusku na popis važećih školjki koje se nalaze unutar / itd. / ljuske datoteka. To se radi pomoću sljedeće naredbe:

$ echo "/ bin / ftponly" | sudo tee -a / itd / školjke

I kao posljednji korak, sve što trebate je promijeniti korisničku ljusku u / bin / ftponly pomoću ove naredbe:

$ sudo usermod newftpuser -s / bin / ftponly

Također, za sve buduće FTP korisnike, možete upotrijebiti istu naredbu za promjenu njihove ljuske tako da mogu imati samo FTP pristup.

Najbolje igre naredbenog retka za Linux
Naredbeni redak nije samo vaš najveći saveznik pri korištenju Linuxa - on također može biti izvor zabave jer ga možete koristiti za igranje mnogih zab...
Najbolje aplikacije za mapiranje gamepada za Linux
Ako volite igrati igre na Linuxu s gamepadom umjesto tipičnim sustavom za unos tipkovnice i miša, za vas postoji nekoliko korisnih aplikacija. Mnoge r...
Korisni alati za Linux igrače
Ako volite igrati igre na Linuxu, velika je vjerojatnost da ste možda koristili aplikacije i uslužne programe poput Wine, Lutris i OBS Studio za pobol...