FTP

Kā konfigurēt FTP ar TLS Ubuntu

Kā konfigurēt FTP ar TLS Ubuntu
FTP (File Transfer Protocol) galvenokārt izmanto failu pārsūtīšanai starp datoriem. FTP darbojas klienta-servera arhitektūrā, kurā klients pieprasa failu no servera un serveris atdod klientam nepieciešamo failu. Klienta mašīnā saziņai ar serveri tiek izmantota FTP klienta lietojumprogramma. Pārlūkprogrammā ir iespējams arī piekļūt FTP serverim. Pēc noklusējuma FTP sazinās pa nedrošu kanālu, bet ir iespējams konfigurēt FTP datu pārsūtīšanai pa drošu kanālu. Šajā apmācībā jūs uzzināsiet, kā konfigurēt FTP serveri ar TLS un pēc tam izmantot FileZilla kā klienta lietojumprogrammu, lai izveidotu savienojumu ar FTP serveri.

VSFTPD instalēšana

VSFTPD (Very Secure FTP Daemon) ir programmatūra, ko izmanto, lai konfigurētu FTP serverī. Šajā apmācībā VSFTPD tiks izmantots, lai konfigurētu FTP serveri mašīnā. Pirms VSFTPD instalēšanas atjauniniet servera krātuves, izsniedzot šādu komandu.

[e-pasts aizsargāts]: ~ $ sudo apt-get update -y

Pēc tam instalējiet VSFTPD, izmantojot šādu komandu.

[e-pasts aizsargāts]: ~ $ sudo apt-get install vsftpd -y

Visbeidzot, pārbaudiet instalāciju, pārbaudot vsftpd versiju ar šādu komandu.

[e-pasts aizsargāts]: ~ $ vsftpd -v

Ja instalēšana ir veiksmīga, iepriekš minētā komanda izvada vsftpd versiju.

FTP aktīvajā režīmā

Aktīvajā režīmā FTP klients sāk sesiju, izveidojot TCP vadības savienojumu no jebkura nejauša klienta datora porta uz servera 21. portu. Pēc tam klients nejaušā X pieslēgvietā sāk klausīties datu savienojumu un, izmantojot TCP Control savienojumu, informē serveri, ka klients gaida datu savienojumu X pieslēgvietā. Pēc tam serveris izveido datu savienojumu no sava 20. porta līdz klienta datora portam X.

Problēma var rasties, ja klients atrodas aiz ugunsmūra un X ports ir bloķēts. Šajā gadījumā serveris nespēj izveidot datu savienojumu ar klientu. Lai izvairītos no šīs problēmas, FTP serveri lielākoties izmanto pasīvajā režīmā, par kuru mēs vēlāk runāsim šajā rakstā. Pēc noklusējuma VSFTPD izmanto pasīvo režīmu, tāpēc mums tas būs jāmaina uz aktīvo režīmu.

Vispirms atveriet VSFTPD konfigurācijas failu.

[aizsargāts pa e-pastu]: ~ $ sudo nano / etc / vsftpd.konf

Pievienojiet šādu rindiņu faila beigās.

pasv_enable = NĒ

Pārliecinieties arī, ka opcija 'connect_from_port_20' ir iestatīta uz 'YES."Šī opcija nodrošina datu savienojuma izveidi servera 20. portā.

Pēc tam izveidojiet direktoriju, kuru FTP serveris izmantos failu glabāšanai. Šajā apmācībā mēs konfigurēsim '/ home / ubuntu / ftp /' kā saknes ceļu FTP serverim.

[aizsargāts pa e-pastu]: ~ $ sudo mkdir / home / ubuntu / ftp

Tagad norādiet šo direktoriju konfigurācijas failā, mainot opciju “local_root”. Šis parametrs konfigurēs servera saknes ceļu.

local_root = / home / ubuntu / ftp

Opcijai "write_enable" jābūt iespējotai, lai lietotāji varētu rakstīt FTP serverī.

Katru reizi, kad maināt konfigurācijas failu, vienmēr restartējiet serveri.

[e-pasts aizsargāts]: ~ $ sudo systemctl restart vsftpd

Paroles iestatīšana lietotājam

FTP klients izveido savienojumu ar serveri, izmantojot lietotājvārdu un paroli. Iekārtā iestatiet sava lietotāja paroli, izmantojot šādu komandu.

[e-pasts aizsargāts]: ~ $ sudo passwd ubuntu

Iepriekš minētā komanda pieprasīs lietotāja ubuntu paroli.

Ugunsmūra konfigurēšana aktīvam režīmam

Ja FTP tiek izmantots aktīvajā režīmā, FTP serveris saziņai ar klientu izmantos divas ostas, 21. un 22. portu. 21. ports tiek izmantots komandu nodošanai klientam, un ports 20 tiek izmantots datu pārsūtīšanai uz jebkuru klienta nejaušu portu. Mēs izmantosim ufw, lai konfigurētu ugunsmūri serverī. Instalējiet ufw, izmantojot šādu komandu.

[aizsargāts ar e-pastu]: ~ $ sudo apt-get install ufw

Tagad servera pusē mēs atvērsim 20., 21. un 22. portu (SSH savienojumam).

[aizsargāts ar e-pastu]: ~ $ sudo ufw atļaut no jebkura uz jebkuru portu proto TCP

Iespējojiet un pārbaudiet ufw statusu, izmantojot šādas komandas.

[aizsargāts ar e-pastu]: ~ $ sudo ufw iespējot
[e-pasts aizsargāts]: ~ $ sudo ufw statuss

PIEZĪME: ja konfigurējat FTP serveri mākonī, drošības grupā būs jāļauj arī 20., 21. un 22. ports.

BRĪDINĀJUMS: Pirms iespējojat ufw attālajā sistēmā, vienmēr iespējojiet 22. portu kopā ar nepieciešamajiem portiem. Pēc noklusējuma UFW bloķē trafiku no 22. porta, tāpēc jūs nevarēsit piekļūt savam attālajam serverim, izmantojot SSH, ja iespējosit ufw, neatļaujot datplūsmu no 22. porta.

FTP klienta instalēšana

Tagad mūsu serveris ir konfigurēts aktīvajā režīmā, un mēs tam varam piekļūt no klienta puses. Klienta lietojumprogrammai mēs izmantosim FileZilla, ftp klienta lietojumprogrammu. Instalējiet FileZilla, izmantojot šādu komandu.

[e-pasts aizsargāts]: ~ $ sudo apt-get install filezilla -y

Atveriet FTP klienta lietojumprogrammu un ievadiet FTP servera publisko IP adresi un citus akreditācijas datus.

Noklikšķinot uz “Quickconnect”, jūs izveidosiet savienojumu ar FTP serveri un automātiski nokļūsit direktorijā, kas norādīts konfigurācijas faila “/ home / ubuntu / ftp” opcijā “local_root”.

Problēmas aktīvajā režīmā

Izmantojot FTP aktīvajā režīmā, rodas problēmas, kad klients atrodas aiz ugunsmūra. Pēc sākotnējo vadības komandu ievadīšanas, kad serveris nejauši izvēlētā portā izveido datu savienojumu ar klientu, portu var bloķēt klienta ugunsmūris, izraisot datu pārsūtīšanas kļūmi. FTP var izmantot pasīvā režīmā, lai atrisinātu šīs ugunsmūra problēmas.

FTP pasīvajā režīmā

Pasīvā režīmā klients izveido vadības savienojumu ar serveri servera 21. portā. Pēc tam klients nosūta īpašu komandu PASV, lai informētu serveri, ka datu savienojumu serveris izveidos klients. Atbildot uz to, klients saņem servera IP un nejaušu porta numuru (šis porta numurs tiks konfigurēts serverī). Klients izmanto šo IP un porta numuru, lai izveidotu datu savienojumu ar serveri. Pasīvajā režīmā gan datu, gan vadības savienojumus izveido klients, lai ugunsmūris netraucētu saziņu starp klientu un serveri.

Atveriet FTP konfigurācijas failu iecienītākajā redaktorā.

[aizsargāts pa e-pastu]: ~ $ sudo nano / etc / vsftpd.konf

Iestatiet failā opciju 'pasv_enable' uz 'YES', lai serveris varētu sazināties ar klientu pasīvajā režīmā. Iestatiet arī opciju "local_root", lai norādītu servera saknes direktoriju, un iestatiet opciju "write_enable" uz "YES", lai lietotāji varētu augšupielādēt failus serverī.

Kā iepriekš tika apspriests, datu savienojumu izveido klients, un serveris nosūta klientam savu publisko IP un nejaušu portu, lai izveidotu datu savienojumu. Šo izlases portu serverī var norādīt no konfigurācijas failā esošo portu diapazona.

Datu savienojums starp serveri un klientu tiks izveidots ostā starp 1024 un 1048. Pēc konfigurācijas faila maiņas restartējiet FTP serveri.

[e-pasts aizsargāts]: ~ $ sudo systemctl restart vsftpd

Ugunsmūra konfigurēšana pasīvā režīmā

Ja FTP izmantosim pasīvajā režīmā, datu savienojums tiks izveidots jebkurā portā no 1024 līdz 1048, tāpēc ir jāļauj visām šīm ostām FTP serverī.

[aizsargāts ar e-pastu]: ~ $ sudo ufw atļaut no jebkura uz jebkuru portu proto TCP

Pēc visu ugunsmūra portu atļaušanas aktivizējiet ufw, izpildot šādu komandu.

[aizsargāts ar e-pastu]: ~ $ sudo ufw iespējot

Pirms ugunsmūra iespējošanas vienmēr atļaujiet portiem serverī; pretējā gadījumā jūs nevarēsit piekļūt savam serverim, izmantojot SSH kā ufw, kas pēc noklusējuma bloķē 22. portu.

Savienojuma pārbaude

Tagad mēs esam iestatījuši FTP serveri pasīvā režīmā un varam pārbaudīt ftp savienojumu ar klienta lietojumprogrammu. Lai to izdarītu, atveriet FileZilla savā sistēmā.

Pēc resursdatora, lietotājvārda, paroles un porta ievadīšanas tagad varat izveidot savienojumu ar serveri. Tagad, kad esat izveidojis savienojumu ar FTP serveri, kas darbojas pasīvajā režīmā, varat augšupielādēt failus serverī.

SSL sertifikātu konfigurēšana ar FTP serveri

Pēc noklusējuma FTP serveris izveido savienojumu starp klientu un serveri, izmantojot nenodrošinātu kanālu. Šāda veida saziņu nevajadzētu izmantot, ja vēlaties koplietot slepenus datus starp klientu un serveri. Lai sazinātos pa drošu kanālu, ir jāizmanto SSL sertifikāti.

SSL sertifikātu ģenerēšana

Mēs izmantosim SSL sertifikātus, lai izveidotu drošu komunikāciju starp klientu un serveri. Mēs ģenerēsim šos sertifikātus, izmantojot openssl. Šī komanda ģenerēs SSL sertifikātus jūsu serverim.

[aizsargāts pa e-pastu]: ~ $ sudo openssl req -x509 -nodes -day 365 -newkey rsa: 2048 -keyout / etc / ssl / private / vsftpd.pem -out / etc / ssl / private / vsftpd.pem

Palaidot iepriekš minēto komandu, jums tiks uzdoti daži jautājumi. Pēc tam, kad atbildēsiet uz šiem jautājumiem, tiks ģenerēti sertifikāti. Sertifikātus var pārbaudīt terminālī.

[aizsargāts pa e-pastu]: ~ $ sudo ls / etc / ssl / private /

Sertifikātu izmantošana konfigurācijas failā

Tagad mūsu sertifikāti ir gatavi lietošanai. Mēs konfigurēsim 'vsftpd.conf failu, lai saziņai izmantotu SSL sertifikātus. Atveriet konfigurācijas failu ar šādu komandu.

[aizsargāts pa e-pastu]: ~ $ sudo nano / etc / vsftpd.konf

Failu beigās pievienojiet šādas rindas. Šīs izmaiņas nodrošinās, ka FTP serveris izmanto jaunizveidotos SSL sertifikātus, lai droši sazinātos ar klientu.

ssl_enable = JĀ
force_local_data_ssl = NĒ
force_local_logins_ssl = NĒ
ssl_tlsv1 = JĀ
ssl_sslv2 = NĒ
ssl_sslv3 = NĒ
rsa_cert_file = / etc / ssl / private / vsftpd.pem
rsa_private_key_file = / etc / ssl / private / vsftpd.pem

Lai lietotu šīs izmaiņas, restartējiet FTP serveri.

[e-pasts aizsargāts]: ~ $ sudo systemctl restart vsftpd

Pēc servera restartēšanas mēģiniet izveidot savienojumu ar serveri, izmantojot klienta FileZilla lietojumprogrammu. Šoreiz klienta lietojumprogramma jums jautās, vai uzticēties šiem sertifikātiem.

Ja jums ir uzticamas sertifikātu iestādes sertifikāti, šis brīdinājums nedrīkst parādīties. Mēs savus sertifikātus izveidojām, izmantojot openssl, kas nav uzticama sertifikātu pārvalde, tāpēc mūsu gadījumā tā lūdza sertifikāta autentifikāciju. Tagad mēs varam sazināties starp klientu un serveri, izmantojot drošu kanālu.

Anonīma konfigurācija

Jūs varat arī iespējot anonīmu pieteikšanos savā FTP serverī. Ja šī konfigurācija ir iespējota, jebkurš lietotājs var pieteikties FTP serverī ar jebkuru lietotājvārdu un paroli. Šie parametri konfigurācijas failā padarīs FTP serveri pieejamu anonīmi.

Iepriekš minētā konfigurācija nosaka anonīmu lietotāju saknes ceļu uz "/ home / ubuntu / ftp / anon", un tā nepieprasīs ievadīt paroli, kad anonīms lietotājs piesakās.

PIEZĪME: Pārliecinieties, vai FTP serverī ir ceļš '/ home / ubuntu / ftp / anon'.

Tagad restartējiet FTP serveri.

[e-pasts aizsargāts]: ~ $ sudo systemctl restart vsftpd

Pēc servera restartēšanas mēs mēģināsim izveidot savienojumu ar serveri, izmantojot Google Chrome pārlūku. Pārejiet uz šo URL.

ftp: // 3.8.12.52

Iepriekš minētais URL novirzīs jūs uz FTP servera saknes direktoriju, kā norādīts konfigurācijas failā. Ja anonīma pieteikšanās ir atspējota, mēģinot izveidot savienojumu ar FTP serveri, izmantojot pārlūkprogrammu, vispirms jums tiks lūgta autentifikācija un pēc tam jūs tiksit novirzīts uz servera saknes direktoriju.

Konfigurējiet vietējo piekļuvi

Mēs varam arī atļaut vai bloķēt vietējo piekļuvi FTP serverim, mainot konfigurācijas failu. Pašlaik mēs varam piekļūt savam FTP serverim lokāli, neizmantojot FTP klienta lietojumprogrammu, taču mēs varam bloķēt šo piekļuvi. Lai to izdarītu, mums ir jāpārveido parametrs 'local_enable'.

Vispirms restartējiet FTP serveri.

[e-pasts aizsargāts]: ~ $ sudo systemctl restart vsftpd

Pēc servera restartēšanas mēģiniet lokāli piekļūt FTP serverim, izmantojot komandrindas saskarni. Piesakieties savā attālajā serverī, izmantojot SSH.

[e-pasts aizsargāts]: ~ $ ssh ubuntu @ 3.8.12.52 -i

Tagad izdodiet šādu komandu, lai lokāli pieteiktos FTP serverī, izmantojot komandrindas saskarni.

[e-pasts aizsargāts]: ~ $ ftp localhost

Palaidot iepriekšminēto komandu, tā izmetīs 500 kļūdu.

Secinājums

Failu pārsūtīšanas protokols daudzus gadus tiek izmantots failu un dokumentu pārsūtīšanai internetā. VSFTPD ir viena no pakotnēm, kas tiek izmantota kā FTP serveris jūsu datorā. VSFTPD satur dažādas konfigurācijas, kuras varat izmantot, lai pielāgotu savu FTP serveri. Šajā apmācībā tika parādīts, kā labākai drošībai konfigurēt FTP serveri ar TLS. Lai uzzinātu vairāk par FTP konfigurācijām, apmeklējiet šo saiti.

http: // vsftpd.zvēri.org / vsftpd_conf.html

Kontrolējiet un pārvaldiet peles kustību starp vairākiem monitoriem sistēmā Windows 10
Dual Display Mouse Manager ļauj kontrolēt un konfigurēt peles kustību starp vairākiem monitoriem, palēninot tās kustību robežas tuvumā. Windows 10/8 ļ...
WinMouse ļauj jums pielāgot un uzlabot peles rādītāja kustību Windows datorā
Ja vēlaties uzlabot peles rādītāja noklusējuma funkcijas, izmantojiet bezmaksas programmatūru WinMouse. Tas pievieno vairāk funkciju, kas palīdzēs jum...
Peles kreisā klikšķa poga nedarbojas operētājsistēmā Windows 10
Ja ar klēpjdatoru vai galddatoru izmantojat īpašu peli, bet nedarbojas peles kreisās klikšķa poga kādu iemeslu dēļ operētājsistēmā Windows 10/8/7 šeit...