Linux

Kuidas seadistada FTP-server VSFTPD-ga Ubuntu 20-s.04

Kuidas seadistada FTP-server VSFTPD-ga Ubuntu 20-s.04

Selles artiklis kirjeldatakse, kuidas installida ja konfigureerida FTP-server Ubuntu 20-s.04, mida kasutate failide jagamiseks oma seadmete vahel.

FTP (File Transfer Protocol) on standardne võrguprotokoll, mida kasutatakse failide edastamiseks kaugvõrku ja kaugvõrku. Linuxi jaoks on saadaval mitu avatud lähtekoodiga FTP-serverit. Kõige tuntumad ja laialdasemalt kasutatavad on PureFTPd, ProFTPD ja vsftpd . Paigaldame stabiilse, turvalise ja kiire FTP-serveri vsftpd (väga turvaline Ftp-deemon). Samuti näitame teile, kuidas seadistada server nii, et see piiraks kasutajaid nende kodukataloogiga ja krüptiks kogu edastuse SSL / TLS abil.

Kuigi FTP on väga populaarne protokoll, peaksite turvalisema ja kiirema andmeedastuse jaoks kasutama SCP või SFTP .

Vsftpd installimine Ubuntu 20-sse.04 #

Pakett vsftpd on saadaval Ubuntu hoidlates. Selle installimiseks käivitage järgmised käsud:

sudo apt värskendussudo apt install vsftpd

Kui installimisprotsess on lõpule jõudnud, käivitub ftp-teenus automaatselt. Selle kinnitamiseks printige teenuse olek:

sudo systemctl olek vsftpd

Väljund peaks näitama, et vsftpd teenus on aktiivne ja töötab:

● vsftpd.teenus - vsftpd FTP-server on laaditud: laaditud (/ lib / systemd / system / vsftpd.teenus; lubatud; hankija eelseadistus: lubatud) aktiivne: aktiivne (töötab) alates teisipäevast 2021-03-02 15:17:22 UTC; 3 s tagasi .. 

Vsftpd # seadistamine

Vsftpd serveri konfiguratsioon on salvestatud / etc / vsftpd.konf faili.

Enamik serveri seadeid on failis hästi dokumenteeritud. Kõigi saadaolevate valikute leidmiseks külastage vsftpd dokumentatsiooni lehte.

Järgmistes jaotistes tutvume mõningate oluliste sätetega, mis on vajalikud vsftpd turvalise installimise konfigureerimiseks.

Alustage vsftpd konfiguratsioonifaili avamisega:

sudo nano / etc / vsftpd.konf

1. FTP juurdepääs nr

Lubame FTP-serverile juurdepääsu ainult kohalikele kasutajatele. Otsige anonüümne_enable ja local_enable ja kontrollige, kas teie konfiguratsioon vastab allolevatele ridadele:

/ etc / vsftpd.konf
anonüümne_enable = EI local_enable = JAH 

2. Üleslaadimise lubamine #

Leidke ja kommenteerige kirjuta_luba direktiiv lubada failisüsteemi muudatusi, näiteks failide üleslaadimist ja eemaldamist:

/ etc / vsftpd.konf
write_enable = JAH 

3. Chrooti vangla #

Kui soovite, et kohalikud FTP-kasutajad ei pääseks juurde failidele väljaspool oma kodukatalooge, tühjendage lne algusega chroot_local_user:

/ etc / vsftpd.konf
chroot_local_user = JAH 

Kui chroot on lubatud, keeldub vsftpd turvalisuse huvides vaikimisi failide üleslaadimisest, kui kasutajate lukustatud kataloog on kirjutatav.

Kui chroot on lubatud, kasutage üleslaadimise lubamiseks ühte järgmistest lahendustest:

4. Passiivsed FTP-ühendused #

Vaikimisi kasutab vsftpd aktiivset režiimi. Passiivse režiimi kasutamiseks määrake pordide minimaalne ja maksimaalne vahemik:

/ etc / vsftpd.konf
pasv_min_port = 30000 pasv_max_port = 31000 

Passiivsete FTP-ühenduste jaoks saate kasutada mis tahes porti. Kui passiivne režiim on lubatud, avab FTP klient ühenduse teie valitud vahemikus juhusliku pordi serveriga.

5. Kasutaja sisselogimise numbri piiramine

Saate konfigureerida vsftpd lubama sisselogimist ainult teatud kasutajatel. Selleks lisage faili lõppu järgmised read:

/ etc / vsftpd.konf
userlist_enable = JAH userlist_file = / etc / vsftpd.user_list userlist_deny = EI 

Kui see valik on lubatud, peate selgesõnaliselt määrama, millised kasutajad saavad sisse logida, lisades kasutajale nimed / etc / vsftpd.kasutaja_loend fail (üks kasutaja rea ​​kohta).

6. Edastuste kindlustamine SSL / TLS-iga #

FTP-edastuste krüptimiseks SSL / TLS-iga peab teil olema SSL-sertifikaat ja FTP-server selle kasutamiseks konfigureerima.

Võite kasutada olemasolevat SSL-sertifikaati, millele on alla kirjutanud usaldusväärne sertifikaadiasutus, või luua ise allkirjastatud sertifikaadi.

Kui teil on domeen või alamdomeen, mis osutab FTP-serveri IP-aadressile, saate kiiresti genereerida tasuta Let's Encrypt SSL-i sertifikaadi.

Loome 2048-bitise privaatvõtme ja ise allkirjastatud SSL-sertifikaadi, mis kehtib kümme aastat:

sudo openssl req -x509 -sõlmed -päevad 3650 -newkey rsa: 2048 -keyout / etc / ssl / private / vsftpd.pem -out / etc / ssl / private / vsftpd.pem

Nii privaatne võti kui ka sertifikaat salvestatakse samasse faili.

Kui SSL-sertifikaat on loodud, avage vsftpd konfiguratsioonifail:

sudo nano / etc / vsftpd.konf

Leidke rsa_cert_file ja rsa_private_key_file direktiivid, muuta nende väärtused pam faili tee ja määrake ssl_enable direktiiv kuni JAH:

/ etc / vsftpd.konf
rsa_cert_file = / etc / ssl / private / vsftpd.pem rsa_private_key_file = / etc / ssl / private / vsftpd.pem ssl_enable = JAH 

Kui pole teisiti määratud, kasutab FTP-server turvaliste ühenduste loomiseks ainult TLS-i.

Taaskäivitage vsftpd teenus #

Kui olete redigeerimise lõpetanud, peaks vsftpd konfiguratsioonifail (välja arvatud kommentaarid) välja nägema umbes selline:

/ etc / vsftpd.konf
kuulata = EI kuulata_ipv6 = JAH anonüümne_enable = EI kohalik_enable = JAH kirjutamine_enable = JAH dirmessage_enable = YES use_localtime = YES xferlog_enable = YES connect_from_port_20 = YES chroot_local_user = YES secure_chroot_dir_p = / var / run / vs / var / jookse / privaatne / vsftpd.pem rsa_private_key_file = / etc / ssl / private / vsftpd.pem ssl_enable = JAH user_sub_token = $ USER local_root = / home / $ USER / ftp pasv_min_port = 30000 pasv_max_port = 31000 userlist_enable = YES userlist_file = / etc / vsftpd.user_list userlist_deny = EI 

Muudatuste jõustumiseks salvestage fail ja taaskäivitage vsftpd-teenus:

sudo systemctl taaskäivitage vsftpd

Tulemüüri avamine #

Kui kasutate UFW tulemüüri, peate lubama FTP-liikluse.

Sadama avamiseks 21 (FTP käsuport), port 20 (FTP-andmepord) ja 30000-31000 (Passiivse pordi vahemik), käivitage järgmised käsud:

sudo ufw lubage 20: 21 / tcpsudo ufw lubab 30000: 31000 / tcp

Lukustuse vältimiseks veenduge, et see oleks porti 22 on avatud:

sudo ufw lubab OpenSSH-d

UFW reeglite uuesti laadimine, keelates ja uuesti lubades UFW:

sudo ufw keelatasudo ufw lubada

Muudatuste käitamise kontrollimiseks toimige järgmiselt

sudo ufw olek
Olek: aktiivne Toimingule - ------ ---- 20: 21 / tcp ALLOW Anywhere 30000: 31000 / tcp ALLOW Anywhere OpenSSH ALLOW Anywhere 20: 21 / tcp (v6) ALLOW Anywhere (v6) 30000: 31000 / tcp (v6) LUBA kõikjal (v6) OpenSSH (v6) LUBA kõikjal (v6) 

FTP kasutaja nr loomine

FTP-serveri testimiseks loome uue kasutaja.

  1. Looge uus kasutaja nimega newftpuser:

    sudo adduser newftpuser
  2. Kasutaja lisamine lubatud FTP kasutajate loendisse:

    kaja "newftpuser" | sudo tee -a / etc / vsftpd.kasutaja_loend
  3. Looge FTP kataloogipuu ja määrake õiged õigused:

    sudo mkdir -p / home / newftpuser / ftp / uploadsudo chmod 550 / home / newftpuser / ftpsudo chmod 750 / home / newftpuser / ftp / uploadsudo chown -R newftpuser: / kodu / newftpuser / ftp

    Nagu eelmises osas räägiti, saab kasutaja oma failid faili üles laadida ftp / üleslaadimine kataloogi.

Sel hetkel on teie FTP-server täiesti töökorras. Peaksite saama serveriga ühenduse luua mis tahes FTP-kliendiga, mille saab konfigureerida TLS-krüptimise kasutamiseks, näiteks FileZilla .

Shelli juurdepääsu keelamine #

Vaikimisi on kasutaja loomisel SSH-i juurdepääs serverile, kui see pole sõnaselgelt määratletud. Shelli juurdepääsu keelamiseks looge uus kest, mis prindib sõnumi, mis ütleb kasutajale, et tema konto on piiratud ainult FTP-juurdepääsuga.

Käivitage järgmised käsud / bin / ftponly fail ja tee see käivitatavaks:

kaja -e '#!/ bin / sh \ necho "See konto on piiratud ainult FTP-juurdepääsuga."'| sudo tee -a / bin / ftponlysudo chmod a + x / bin / ftponly

Lisage uus kest rakenduses kehtivate kestade loendisse / etc / kestad fail:

kaja "/ bin / ftponly" | sudo tee -a / etc / shellid

Muutke kasutaja kest väärtuseks / bin / ftponly:

sudo usermod newftpuser -s / bin / ftponly

Sama käsu abil saate muuta kõigi kasutajate kestat, kellele soovite anda ainult FTP-juurdepääsu.

Järeldus #

Oleme teile näidanud, kuidas installida ja konfigureerida turvaline ja kiire FTP-server oma Ubuntu 20-sse.04 süsteem.

Kui teil on küsimusi või tagasisidet, jätke julgelt kommentaar.

5 parimat arkaadmängu Linuxile
Tänapäeval on arvutid tõsised mängimiseks kasutatavad masinad. Kui te ei saa uut rekordit, teate, mida ma mõtlen. Selles postituses saate teada mõnda ...
Lahing Wesnothi eest 1.13.6 Areng vabastati
Lahing Wesnothi eest 1.13.6 ilmus eelmisel kuul, on 1-s kuues arendusversioon.13.x-seeria ja see pakub mitmeid täiustusi, eelkõige kasutajaliidese ja ...
League of Legendsi installimine Ubuntu 14-le.04
Kui olete League of Legends fänn, siis on see teile võimalus proovida League of Legendsit. Pange tähele, et LOL-i toetab PlayOnLinux, kui olete Linuxi...