Kuidas passiivset režiimi lubada. Näide passiivsest ühendusest. Kaks andmeedastusrežiimi FTP-s

FTP režiimid

FTP-protokolli kasutades luuakse kaks ühendust kliendi ja serveri vahel - juhtühendus (selle kaudu saadetakse käsud) ja andmeside (selle kaudu edastatakse faile). Juhtimisühendus on aktiivse ja passiivse režiimi puhul sama. Klient algatab TCP-ühenduse dünaamilisest pordist (1024-65535) FTP-serveri porti number 21 ja ütleb: "Tere! Ma tahan teiega ühenduse luua. Siin on minu nimi ja parool." Edasised toimingud sõltuvad valitud FTP-režiimist (aktiivne või passiivne).

Aktiivses režiimis, kui klient ütleb "Tere!" see ütleb serverile ka pordi numbri (dünaamilisest vahemikust 1024–65535), et server saaks andmeühenduse loomiseks kliendiga ühenduse luua. FTP-server loob ühenduse määratud kliendi pordinumbriga, kasutades andmeedastuseks TCP-porti number 20. Kliendi jaoks on selline ühendus sissetulev, seega on tulemüüri või NAT-i taga asuvate klientidega aktiivses režiimis töötamine sageli keeruline või nõuab lisaseadeid.

Passiivses režiimis teatab server pärast seda, kui klient ütleb "Tere!", kliendile TCP-pordi numbri (dünaamilisest vahemikust 1024–65535), millega ta saab andmeühenduse loomiseks ühenduse luua. Sel juhul, nagu hästi näha, osutuvad sellises ühenduses olevad pordid nii kliendi kui ka serveri poolel meelevaldseteks. Passiivses režiimis saab klient oma tulemüüri kaudu hõlpsalt serveriga töötada, kuid sageli selleks, et server passiivset režiimi toetaks, tuleb tulemüür serveri poolel vastavalt seadistada.

Peamine erinevus aktiivse FTP režiimi ja passiivse FTP režiimi vahel on pool, mis avab ühenduse andmeedastuseks. Aktiivses režiimis peab klient suutma seda ühendust FTP-serverist vastu võtta. Passiivses režiimis algatab klient selle ühenduse alati ise ja server peab selle vastu võtma.

FTP on teenus, mis põhineb ainult TCP-l (Transmission Control Protocol). FTP on ebatavaline selle poolest, et see kasutab kahte porti, "andme" porti ja "käskude" porti (tuntud ka kui juhtport). Traditsiooniliselt on see port 21 käskude jaoks ja port 20 andmete jaoks. Kuid olenevalt režiimist ei ole andmeport alati 20.

IN aktiivne režiim FTP-klient loob ühenduse suvalisest privilegeerimata pordist (N > 1024) FTP-serveri käsupordiga 21. Seejärel hakkab klient kuulama porti N+1 ja saadab FTP-serverile FTP-käsu PORT N+1. Vastuseks loob server ühenduse määratud kliendi andmepordiga oma kohalikust andmepordist 20.

IN passiivne režiim FTP-klient algatab mõlemad ühendused serveriga, lahendades probleemi tulemüüridega, mis filtreerivad kliendi sissetulevate andmete porti. FTP-ühenduse avamisel avab klient kohapeal kaks privilegeerimata porti (N > 1024 ja N+1). Esimene port võtab ühendust pordi 21 serveriga, kuid selle asemel, et anda välja PORT-käsk ja lasta serveril vastata oma andmepordiga ühenduse loomisega, annab klient PASV-käsu. Selle tulemusena avab server suvalise privilegeerimata pordi (P > 1024) ja saadab kliendile käsu PORT P. Seejärel loob klient andmete edastamiseks ühenduse pordist N+1 serverisse P.

FTP on ainult TCP-põhine teenus. FTP-l pole UDP-komponenti. FTP on ebatavaline teenus, kuna see kasutab kahte porti, "andme" porti ja "käskude" porti (tuntud ka kui juhtport). Tavaliselt on need port 21 käsupordi jaoks ja port 20 andmepordi jaoks. Segadus algab aga siis, kui leiame, et olenevalt režiimist ei ole andmeport alati pordis 20.

Aktiivne FTP

Aktiivses režiimis FTP ühendub klient juhuslikust privilegeerimata pordist (N > 1023) FTP-serveri käsupordiga, pordiga 21. Seejärel hakkab klient porti N+1 kuulama ja saadab FTP käsu PORT N+1 FTP-server ühendub seejärel oma kohalikust andmepordist, milleks on port 20, tagasi kliendi määratud andmepordiga.

Serveripoolse tulemüüri seisukohast tuleb aktiivse režiimi FTP toetamiseks avada järgmised sidekanalid:

FTP-serveri port 21 pordidesse >
FTP-serveri port 20 portidesse > 1023 (server algatab andmeühenduse kliendi andmepordiga)
FTP-serveri port 20 portidest > 1023 (klient saadab ACK-id serveri andmeporti)

Sammus 1 võtab kliendi käsuport ühendust serveri käsupordiga ja saadab käsu PORT 1027. Seejärel saadab server sammus 2 tagasi kliendi käsupordile ACK-i. Sammus 3 algatab server ühenduse oma kohalikul andmepordil kliendi varem määratud andmeporti. Lõpuks saadab klient tagasi ACK-i, nagu on näidatud toimingus 4.

Aktiivse režiimi FTP põhiprobleem langeb tegelikult kliendi poolele. FTP-klient ei loo tegelikku ühendust serveri andmepordiga – see lihtsalt ütleb serverile, millist porti see kuulab, ja server loob ühenduse määratud pordiga kliendipoolsest tulemüürist olla väline süsteem, mis loob ühenduse sisemise kliendiga – see on tavaliselt blokeeritud.

Passiivne FTP

Kliendiga ühenduse loomise serveri probleemi lahendamiseks töötati välja FTP-ühenduste jaoks erinev meetod. Seda nimetati passiivseks režiimiks või PASV-ks pärast kliendi poolt kasutatud käsku, et öelda serverile, et see on passiivses režiimis.

Passiivses režiimis FTP klient algatab mõlemad ühendused serveriga, lahendades tulemüüride probleemi, mis filtreerivad serverist kliendile sissetuleva andmepordiühenduse. FTP-ühenduse avamisel avab klient kohapeal kaks juhuslikku privilegeerimata porti (N > 1023 ja N+1). Esimene port võtab ühendust pordi 21 serveriga, kuid selle asemel, et anda PORT-käsku ja lubada serveril uuesti oma andmepordiga ühenduse luua, annab klient PASV-käsu. Selle tulemuseks on see, et server avab seejärel juhusliku privilegeerimata pordi (P > 1023) ja saadab kliendile tagasi käsu PORT P. Seejärel loob klient andmete edastamiseks ühenduse pordist N+1 serveri pordiga P.

Serveripoolse tulemüüri seisukohast tuleb passiivse režiimi FTP toetamiseks avada järgmised sidekanalid:
FTP-serveri port 21 kõikjalt (klient algatab ühenduse)
FTP-serveri port 21 portidesse > 1023 (server vastab kliendi juhtpordile)
FTP-serveri pordid > 1023 kõikjalt (klient algatab andmeühenduse serveri määratud juhusliku pordiga)
FTP-serveri pordid > 1023 kaugportidesse > 1023 (server saadab ACK-id (ja andmeid) kliendi andmeporti)

Järgmine diagramm peaks aitama administraatoritel meeles pidada, kuidas iga FTP-režiim töötab:
Aktiivne FTP:
käsk: klient > 1023 -> server 21
andmed: klient >1023<- server 20

Passiivne FTP:
käsk: klient > 1023 -> server 21
andmed: klient >1023 -> server >1023

Kiire kokkuvõte aktiivsete vs. plusside ja miinuste kohta. passiivne FTP on samuti korras:

Aktiivne FTP on kasulik FTP-serveri administraatorile, kuid kahjustab kliendipoolset administraatorit. FTP-server üritab luua ühendusi kliendi juhuslike kõrgete portidega, mille kliendipoolse tulemüür peaaegu kindlasti blokeerib. Passiivne FTP on kliendile kasulik, kuid FTP-serveri administraatorile kahjulik. Klient loob mõlemad ühendused serveriga, kuid üks neist on juhuslik kõrge pordiga, mille serveripoolne tulemüür peaaegu kindlasti blokeerib.

Õnneks on mõningane kompromiss. Kuna FTP-servereid kasutavad administraatorid peavad muutma oma serverid juurdepääsetavaks suurimale arvule klientidele, peavad nad peaaegu kindlasti toetama passiivset FTP-d. Serveri kõrgetasemeliste portide kokkupuudet saab minimeerida, määrates FTP-serveri jaoks piiratud pordivahemiku. Seega saab serveri poolel tulemüüriga seada kõik peale selle portide vahemiku. Kuigi see ei kõrvalda serveri jaoks kõiki riske, vähendab see seda tohutult.

FTP-protokolli on kasutatud pikka aega ja see on esmapilgul äärmiselt lihtne. See lihtsus on aga ilmne ja paljudel tekib probleeme FTP-ühenduse loomisega, eriti kui server või klient on tulemüüri või NAT-i taga. Seetõttu räägime täna FTP-protokolli funktsioonidest erinevates režiimides.

FTP-protokoll on vanim võrguprotokoll (loodud 1971. aastal), kuid sellest hoolimata kasutatakse laialdaselt tänapäevani. Protokolli oluline omadus on see, et see kasutab mitut ühendust: üks juhtkäskude jaoks, ülejäänud andmete jaoks. Lisaks saab andmeedastuseks avada mitu ühendust, millest igaühes saab faile mõlemas suunas edastada. Selle funktsiooniga on seotud mitmeid probleeme.

Sõltuvalt andmeedastuse ühenduse loomise meetodist eristatakse aktiivseid ja passiivseid FTP töörežiime. Aktiivses režiimis loob server ise andmeühenduse kliendiga, passiivses režiimis vastupidi. Vaatame neid režiime üksikasjalikumalt.

Aktiivne režiim

Enamikul juhtudel piisab NAT-i taga oleva FTP-serveri normaalseks tööks 21 pordi edastamisest juhtimisseansi jaoks, 20 aktiivse režiimi jaoks (kui seda kasutatakse), samuti andmete dünaamiliste portide määramiseks ja edastamiseks. ülekandmine.

Veel üks oluline punkt: kui edastate mitme FTP-serveri pordid, peaksite igaühel neist määrama oma dünaamiliste portide vahemiku ja edastama samadele välisliidese pordinumbritele. Miks? Kuna pordi numbri edastab server juhtkäsuga ja ei tea edastamisest midagi, siis kui serveri poolt edastatud pordi number ei ühti välisliidese pordi numbriga, ei saa klient luua ühendus. Juhtpordi ja aktiivse režiimi pordi saab edastada mis tahes välistesse portidesse.

Loodame, et see artikkel aitab teil paremini mõista FTP-protokolli mehhanismi ning läheneda teadlikult konfiguratsiooni- ja diagnostikaprotsessile.

Selles jaotises käsitletakse lühidalt FTP-protokolli ajalugu ja tehnilisi üksikasju. Vaadake üksikasju spetsifikatsioonidest.

Ajalooline teave

Kiiresti areneva Interneti taustal tundub FTP-protokoll mitte lihtsalt vana, vaid tõeliselt arhailine. Protokolli spetsifikatsioonide esialgsed kavandid pärinevad 1971. aastast ja praegune spetsifikatsioon algas 1985. aastal. Viimase kahe aastakümne jooksul ei ole protokoll oma olemuselt muutunud.

Tol ajal kasutasid Internetti peamiselt ülikoolid ja uurimiskeskused. Kasutajaskond oli väike, enamik neist teadis üksteist ja kõik tegid koostööd. Internet oli sõbralik võrk ja seal polnud turvaprobleeme.

Need päevad on möödas ja palju on muutunud. Tehnoloogiline areng on edenenud kiiremini, kui keegi oleks osanud arvata, samas kui peale on kasvanud uus põlvkond kasutajaid. Internet on nüüdseks üldlevinud nähtus, mis võimaldab miljonitel inimestel üksteisega mitmel erineval viisil suhelda. Peamine käegakatsutav muutus: Internet on muutunud vaenulikuks. Võrgu juurdepääsetavus ja avatus on meelitanud ligi pahatahtlikke kasutajaid, kes kasutavad aktiivselt ära teiste vigu ja kogenematust.

Selle sündmuste arengu kõrvalmõjuks olid järgmised nähtused:

  • NAT-ruuterid. Enamik võrku kasutab IPv4, millel on piiratud aadressiruum (IPv6 on loodud selle probleemi lahendamiseks). NAT-ruuterid võimaldavad paljude seadmetega süsteemidel jagada sama IP-aadressi.
  • Isiklikud tulemüürid kasutajate kaitsmiseks operatsioonisüsteemide ja rakenduste defektide eest.

Enamasti on need nähtused vastuolus protokolli toimimisega. Olukorda halvendavad puudused ruuterites ja tulemüürides endis.

Õigesti konfigureeritud FTP pakub aga usaldusväärset ja tõestatud meetodit failide edastamiseks.

Tehniline informatsioon

Peamine erinevus FTP ja teiste protokollide vahel on sekundaarsete ühenduste kasutamine failiedastuseks. FTP-serveriga ühenduse loomisel tekib nn. juhtühendus, mille kaudu edastatakse protokolli käske ja vastuseid nendele käskudele. Faili või kataloogi kirje ülekandmiseks peab klient saatma juhtühenduse kaudu käsud, mille järel a andmesideühendus.

Selle ühenduse loomiseks on kaks võimalust: aktiivne ja passiivne režiim.

Passiivses režiimis, mis on soovitatav režiim, saadab klient serverile PASV-käsu, millele server vastab aadressiga. Seejärel saadab klient käsu faili või kataloogiloendi ülekandmiseks ja loob teisese ühenduse serverilt saadud aadressil.

Aktiivses režiimis avab klient kohalikus seadmes pesa ja saadab pesa aadressi serverile käsuga PORT. Pärast failiedastus- või loendikäsu saatmist loob server ühenduse kliendi määratud aadressiga.

Mõlemal juhul kantakse fail/loend üle andmesideühenduse.

Väljuvate ühenduste loomine nõuab ruuterite/tulemüüride jaoks vähem parameetrite määramist kui sissetulevate ühenduste loomine. Passiivses režiimis on ühendus kliendilt väljuv ja serverisse sissetulev. Aktiivses režiimis vahetavad klient ja server rolle – kliendi jaoks sissetulev ühendus ja serveri jaoks väljaminev ühendus.

Pange tähele, et erinevus on ainult ühendamise järjekorras, pärast andmesideühenduse loomist saab andmeid kas alla laadida või üles laadida.

Tüüpiline võrgukonfiguratsioon võib välja näha järgmine:

Seega peavad passiivses režiimis ruuter ja serveripoolne tulemüür olema konfigureeritud sissetulevaid ühendusi vastu võtma ja edastama. Omakorda serveri poolel peaks olema lubatud ainult väljaminevad ühendused ja enamikul juhtudel on väljaminevad ühendused lubatud.

Samamoodi peavad aktiivses režiimis olema kliendi poolel ruuter ja tulemüür konfigureeritud sissetulevaid ühendusi vastu võtma ja edastama. Ilmselgelt tuleks serveri poolel lubada ainult väljuvaid ühendusi.

Sest server teenindab tavaliselt paljusid kliente, siis on palju lihtsam konfigureerida ruuterit ja serveripoolset tulemüüri üks kord passiivseks režiimiks, kui konfigureerida iga kliendi jaoks kliendi ruuter/tulemüür aktiivses režiimis. Seetõttu on soovitatav passiivne režiim.

NAT-ruuterid

Enamikul lairiba kasutajatel on NAT-ruuter, mis asub nende arvuti ja võrgu vahel. See võib olla iseseisev seade (võimalik, et juhtmevaba ruuter) või DSL- või kaabelmodemi sisseehitatud ruuter. NAT-keskkonnas on kõik ruuteri taga olevad seadmed kohalik võrk(LAN), on igal võrgus oleval seadmel kohalik IP-aadress (neli väikest numbrit, mis on eraldatud punktidega). NAT-ruuteril on omakorda oma kohalik IP-aadress, aga ka väline IP-aadress globaalses võrgus tuvastamiseks. Kohalikud aadressid kehtivad ainult LAN-is, neil pole kaugseadme jaoks tähendust. Näide:

Oletame, et server asub NAT-ruuteri taga. Simuleerime olukorda, kus klient loob ühenduse passiivses režiimis, kuid serverile ei anta ruuteri välist IP-aadressi. Sel juhul saadab server kliendile oma kohaliku aadressi, misjärel võib juhtuda kaks asja:

  • Kui klient ei asu NAT-is, katkeb ühendus, kuna Serveri aadress ei kehti.
  • Kui klient asub NAT-is, võib serveri aadress kattuda kliendi enda võrgus oleva seadme aadressiga.

Ilmselgelt passiivne režiim mõlemal juhul ei tööta.

Seega, kui server asub NAT-ruuteri taga, tuleb sellele passiivse režiimi toimimiseks anda ruuteri IP-aadress. Mõlemal juhul saadab server kliendile ruuteri välisaadressi. Klient loob ühenduse ruuteriga, mis omakorda edastab ühenduse serverile.

Tulemüürid

Eesmärk isiklik tulemüür eesmärk on kaitsta kasutajat kasutatavate operatsioonisüsteemi või rakenduste turvaaukude eest. Pahatahtlikud rakendused, nagu ussid, kasutavad sageli neid turvaauke teie süsteemi võrgu kaudu nakatamiseks. Tulemüürid aitavad selliseid juhtumeid vältida.

Eriti FTP kasutamisel võivad tulemüüri kasutajad saada selliseid sõnumeid:

Trooja Netbus on blokeeritud pordis 12345, mida kasutab FileZilla.exe protsess

Peaaegu kõigil juhtudel on see sõnum valehäire. Iga rakendus saab Interneti kaudu suhtlemiseks valida mis tahes pordi. Võib juhtuda, et FileZilla valib pordi, mis juhtub olema troojalase või muu pahatahtliku programmi vaikeport. Ametlikult veebisaidilt alla laaditud FileZilla distributsioon ei sisalda viiruseid.

Nutikad ruuterid, tulemüürid ja andmete sabotaaž

Mõned ruuterid või tulemüürid on üsna nutikad. Nad analüüsivad ühendusi ja FTP-ühenduse tuvastamisel asendavad vaikselt kliendi ja serveri vahel edastatud andmed. Selline käitumine on andmete sabotaaž ja võib põhjustada probleeme, kui kasutaja pole seda käitumist selgesõnaliselt lubanud.

Toome näite. Oletame, et klient on NAT-ruuteri taga ja üritab serveriga ühendust luua. Oletame ka, et klient ei tea, et ta on NAT-i taga ja kasutab aktiivset režiimi. Klient saadab serverile PORT-käsu oma kohaliku, mittemarsruutitava IP-aadressiga:

PORT 10,0,0,1,12,34

See käsk käsib serveril luua ühenduse aadressiga 10.0.0.1 pordis 12*256+34 = 3106

Pärast seda asendab NAT-ruuter vaikselt käsu, sealhulgas välise IP-aadressi, ja loob ka ajutise pordi FTP-seansi edastamiseks, võib-olla isegi mõnes teises pordis:

PORT 123,123,123,123,24,55

See käsk käsib serveril pordis 24*256+55 = 6199 ühenduse luua aadressiga 123.123.123.123

See käitumine võimaldab NAT-ruuteril lubada valesti konfigureeritud kliendil kasutada aktiivset režiimi.

Miks ei ole selline käitumine vastuvõetav? Kui seda funktsiooni kasutatakse vaikimisi, ilma kasutaja nõusolekuta, tekib sellest palju probleeme. FTP-ühendus põhimõtteliselt toimib, kuid kui triviaalsed kasutusjuhtumid on ammendatud, siis edastamine ebaõnnestub, jättes probleemi diagnoosimiseks vähe võimalusi.

  • NAT-ruuter eeldab pimesi, et mõned ühendused kuuluvad FTP-le, tuginedes sellistele andmetele nagu sihtpordid või serveri vastused:
    • Vaatamata automaatsele tuvastamisele (sellist juhtumit nimetatakse valehäire). Kuigi see on ebatõenäoline, on võimalik, et PORT-käsu süntaks võib tulevastes FTP-protokolli versioonides muutuda. NAT-ruuter muudab käsku PORT muutes kasutaja teadmata parameetreid, mida ta ei toeta, mis põhjustab ühenduse katkemise.
    • Ruuteri protokolli definitsioon ei pruugi FTP-d ära tunda. Oletame, et ruuter jälgib ainult sihtporti ja kui see port on 21, tuvastatakse see FTP-na. Aktiivse režiimi ühendused valesti konfigureeritud kliendilt pordis 21 oleva serveriga töötavad, kuid ühendused teiste mittestandardsete portide serveritega mitte.
  • Ilmselgelt ei saa NAT-ruuter ühendust muuta, kui FTP-seanss on krüptitud, jättes kasutaja kahjumisse, sest... Töötavad ainult krüptimata ühendused.
  • Oletame, et NAT-ruuteri taga olev klient saadab "PORT 10,0,0,1,12,34". Kuidas saab NAT-ruuter teada, et klient on valesti konfigureeritud? Samuti on õigesti konfigureeritud kliendil võimalik algatada FXP (server-to-server) edastus serveri, millega ta on ühendatud, ja seadme vahel, mis asub serveri kohtvõrgus.

Nagu näeme, võivad NAT-ruuteris vaikimisi lubatud protokollispetsiifilised funktsioonid põhjustada palju probleeme. Hea NAT-ruuter töötab alati ja täielikult protokolliga, ilma protokolli enda kohta teabeta. Erandiks võib olla juhtum, kui kasutaja on seda funktsiooni selgesõnaliselt kasutanud ja on teadlik kõigist võimalikest tagajärgedest.

Selles alapeatükis vaatlesime NAT-ruuteri kombinatsiooni kliendi poolel aktiivses režiimis, sama arutluskäik kehtib ka NAT-i taga oleva serveri ja PASV-käsu vastuste puhul.

FileZilla kliendi seadistamine

Ilmselt peab mis tahes serveriga ühenduse loomiseks teie tulemüür lubama FileZillal seda teha. Enamik tavalisi FTP-servereid kasutab porti 21, SFTP-servereid porti 22 ja FTP üle SSL/TLS (kaudne režiim) on vaikimisi porti 990. Pordinumbrid ei ole kõvasti kodeeritud, seega on kõige parem lubada väljuvad ühendused mis tahes pordis.

Sest Internetis on palju valesti konfigureeritud servereid või servereid, mis ei toeta mõlemat edastusrežiimi. Soovitatav on kasutada mõlemat edastusrežiimi.

Passiivne režiim

Klient ei saa käskida serveril valida passiivses režiimis andmete edastamiseks port, seega peate passiivse režiimi kasutamiseks lubama väljuvad ühendused mis tahes arvuti pordis.

Aktiivne režiim

Aktiivses režiimis avab klient pesa ja ootab, et ühendus serverist edastaks.

Vaikimisi küsib FileZilla klient operatsioonisüsteemilt IP-aadressi ja tasuta pordi numbrit. See konfiguratsioon töötab ainult siis, kui on olemas otseühendus Internetiga ilma NAT-ruuteriteta ja teie tulemüür peab samuti võimaldama ühenduste loomist kõigis portides, mis on üle 1024.

Kui teil on NAT-ruuter, peate teatama FileZillale välise IP-aadressi, vastasel juhul ei tööta aktiivse režiimi ühendused väljaspool kohalikku võrku asuvate serverite puhul:

  • Staatilise IP-aadressi saab määrata FileZilla sätete dialoogis.
  • Kui teie IP-aadress on dünaamiline, on teil võimalus lubada FileZillal hankida iga kord, kui selle käivitate, automaatselt spetsiaalselt saidilt välise IP-aadressi. Teilt ei edastata sellele saidile muud teavet peale teie kasutatava FileZilla kliendi versiooni.

Kui te ei soovi lubada sissetulevaid ühendusi kõigis portides või teie arvuti asub NAT-ruuteri taga, paluge FileZillal kasutada aktiivses režiimis ühenduste jaoks kindlat portide valikut. See vahemik tuleb avada ka teie tulemüürile. Kui teil on NAT-ruuter, peate need pordid edastama kohalikku arvutisse, kuhu FileZilla on installitud. Saate üle kanda mitut porti või iga pordi eraldi, see sõltub teie ruuteri mudelist.

TCP

FileZilla serveri seadistamine ja testimine

Serveri seadistamine kordab enamasti kliendi seadistamist, peamine erinevus seisneb selles, et serveri puhul muutuvad aktiivsed ja passiivsed režiimid rollid.

Oluline on märkida, et serveri töö kontrollimine toimub enamikul juhtudel ekslikult NAT-ruuterite omanikud. Kohalikus võrgus olles saate serverit testida ainult kohaliku IP-aadressi abil. Välisaadressi kasutamine kohalikus võrgus ei tööta enamikul juhtudel ühel järgmistest põhjustest.

  • Ruuter blokeerib võimaliku rünnakuna juurdepääsu oma välisele aadressile kohalikust võrgust
  • Ruuter edastab ühenduse teie Interneti-teenuse pakkujale, kes blokeerib selle võimaliku rünnakuna.

Isegi kui teil õnnestus ühendus luua, pole teil mingit garantiid, et välisvõrgu kasutaja saab seda teha ja lisaks faile teie serverisse üles laadida. Ainus usaldusväärne vahend serveri toimimise kontrollimiseks on ühendus väljaspool teie kohalikku võrku.

Aktiivne režiim

Veenduge, et FileZilla serveril oleks lubatud luua väljuvaid ühendusi mis tahes pordis, kuna selles režiimis määrab klient pordi, millega ühenduse luua.

Ühenduse kohalikul poolel proovib FileZilla server kasutada juhtühenduse jaoks pordi väärtust, mis on üks väiksem kui pordi väärtus (näiteks port 20, kui server aktsepteerib pordi 21 ühendusi). Kuid see ei ole alati võimalik, seega ei tohiks te alati sellele funktsioonile loota.

Passiivne režiim

Serveri seadistamine kordab sel juhul praktiliselt kliendi seadistamist aktiivses režiimis.

Passiivses režiimis avab server pistikupesa ja ootab kliendilt ühendust.

Vaikimisi küsib FileZilla server operatsioonisüsteemilt arvuti IP-aadressi ja vaba pordi. See konfiguratsioon töötab ainult siis, kui arvuti on otse Internetiga ühendatud ilma NAT-ruuteriteta ja tulemüür on seatud lubama sissetulevaid ühendusi kõigis portides, mis on suuremad kui 1024.

Kui teil on NAT-ruuter, peate teatama FileZilla serverile oma välise IP-aadressi, vastasel juhul töötavad passiivse režiimi ühendused ainult kohalikus võrgus:

  • Staatilise IP-aadressi saab määrata FileZilla serveri sätete dialoogis.
  • Kui teie IP-aadress on dünaamiline, saate lubada FileZilla serveril hankida igal käivitamisel automaatselt välise IP-aadressi spetsiaalselt saidilt. Teilt ei edastata sellele saidile muud teavet kui kasutatud FileZilla serveri versiooni.

Kui te pole oma valikus kindel, kasutage teist võimalust.

Kui te ei soovi sissetulevaid ühendusi kõigis portides lubada või teie arvuti asub NAT-ruuteri taga, öelge FileZilla serverile, et see kasutaks aktiivses režiimis ühenduste jaoks kindlat portide valikut. See vahemik tuleb avada ka teie tulemüürile. Kui teil on NAT-ruuter, peate need pordid edastama kohalikku arvutisse, kuhu FileZilla server on installitud. Saate üle kanda mitut porti või iga pordi eraldi, see sõltub teie ruuteri mudelist.

Saadaolevad pordid on vahemikus 1 kuni 65535, alla 1024 olevad pordid on reserveeritud muude protokollide jaoks. Aktiivse FTP-režiimi jaoks on parim valik pordi number, mis on võrdne või suurem kui 50000. TCP-protokolli (FTP-kihi all olev protokoll, mida kasutatakse andmeedastuseks) ülesehituse tõttu ei saa porti kohe uuesti kasutada. pärast iga ühendust. Seetõttu ei tohiks pordivahemik olla liiga kitsas, vastasel juhul ei saa te palju väikeseid faile üle kanda. Enamasti piisab 50 pordi vahemikust.

Probleemi lahendamine

Kahjuks on paljudel isiklikel tulemüüridel ja kohandatud ruuteritel omad puudused või mõnel juhul on need isegi võimelised saboteerima FTP-d (näiteks SMC Barricade v1.2).

Kõigepealt kasutage tarkvara uusimaid stabiilseid versioone, sealhulgas tulemüüri ja ruuteri püsivara.

Kui see ei aita, on teil võimalus proovida kustutada oma tulemüüri olukorra analüüsimiseks. Lihtsalt tulemüüri keelamine ei aita alati, sest... Mõnda tulemüüri ei saa täielikult keelata.

Võimalusel proovige Interneti-ühendust luua otse ilma ruuterita.

Kui proovite serverit seadistada ja see töötab teie kohalikus võrgus hästi, kuid väljaspool seda pole juurdepääsetav, proovige ühendusporti muuta. Mõned pakkujad ei luba oma klientidel servereid majutada ega blokeerida porte, mis on väiksemad kui 1024.

Teine võimalik probleem võib olla see, et teie FTP-server kasutab vaikeporti 21. Teie Interneti-teenuse pakkuja poolel võib olla tulemüür, mis võib ootamatult muuta PASV-käsu porti. Proovige kasutada teist porti kui oma FTP-serveri vaikeport.

Kui aeg-ajalt näete teadet “andmeühendust ei saa avada”, s.t. FTP-klient suudab hõlpsasti FTP-serveriga ühenduse luua piisav arv kordi, kuni saate selle teate, võimalikuks takistuseks võib olla klientarvuti viirusetõrje, mis on konfigureeritud blokeerima väljuvaid ühendusi teatud portide vahemikus. Kui server töötab passiivses režiimis, määratakse kliendi väljuvad pordid juhuslikult ja kui valite blokeeritud vahemikku jäävad pordid, saate veateate. Täpse diagnoosi saamiseks peaksite vaatama viirusetõrje logisid kliendi masinas, mis selle vea saab. Üldiselt võib seda tüüpi probleeme põhjustada igasugune tarkvara, mis võib blokeerida erinevaid väljuvaid porte.

Aegumine suurte failide edastamisel

Kui väikeste failide edastamine toimub probleemideta, kuid suurte failide allalaadimine katkeb ajalõpu tõttu, on selle põhjuseks valesti seadistatud ruuter ja/või tulemüür, mis asub kliendi ja serveri vahel.

Nagu eespool mainitud, kasutab FTP kahte TCP ühendust: juhtühendust käskude saatmiseks ja vastuste vastuvõtmiseks ning andmesideühendust. FTP tööpõhimõtte tõttu ei kasutata failiedastuse ajal juhtühendust.

TCP spetsifikatsioon ei määra tühikäiguühenduse salvestamise ajalimiiti. Eeldatakse, et ühendus kestab lõputult, kuni see selgesõnaliselt suletakse. Enamik ruutereid ja tulemüüre sulgeb aga teatud aja möödudes jõudeolevad ühendused automaatselt. Pealegi katkestatakse enamikul juhtudel ühendus osalejaid teavitamata. Pideva andmeedastuse korral FTP kaudu tähendab see, et juhtühendus võib katkeda, kuid sellest ei teavitata klienti ega serverit. Seega ootab server pärast kõigi andmete edastamist siiski, et kontrollühendust saab kasutada ja saadab selle kaudu kliendile ülekande kinnituse. Samuti on klient valmis juhtühendust kasutama ja ootab serverilt vastust. Aga sest juhtühendus suleti, seda vastust ei edastata kunagi, mille tulemuseks on ajalõpp.

Selle probleemi lahendamiseks pakub TCP spetsifikatsioon võimaluse saata pakette kasutamata ühenduse säilitamiseks, teavitades osalejaid, et ühendus tuleks edaspidiseks kasutamiseks salvestada. Kuid TCP spetsifikatsioon ütleb selgesõnaliselt, et selliseid pakette ei saa edastada sagedamini kui üks kord kahe tunni jooksul. Selleks on võrgu viivitusi arvesse võttes spetsifikatsiooniga määratud kasutamata ühenduse elueaks 2 tundi ja 4 minutit.

Selle takistuseks on see, et paljud ruuterid ja tulemüürid katkestavad ühendused, mida pole kasutatud vähem kui 2 ja 4 minutit. See käitumine rikub TCP-protokolli spetsifikatsiooni RFC 5382 ütleb seda üsna selgelt. Teisisõnu, ruutereid ja tulemüüre, mis katkestavad ühenduse enne vajalikku hetke, ei saa tööks lugeda, sest neid ei saa kasutada pikaajaliseks andmeedastuseks FTP kaudu. Kahjuks ei hooli tarbijatele mõeldud ruuterite tootjad ja tulemüüride müüjad spetsifikatsioonidele vastavusest.

Selle probleemi lahendamiseks peate sellised tulemüürid eemaldama ja rikkis ruuteri asendama kvaliteetse ruuteriga.

FileZilla serveri seadistamine Windowsi tulemüüri all

Kui teil tekib Windowsi tulemüüri töötamise ajal probleeme FileZilla serveri seadistamisel (eriti kui sellise serveriga ühendust loov klient saab tõrketeate "Kaustaloendit ei saa hankida"), peate lisama FileZilla serveri Windowsi tulemüüri erandite loendisse. . Selleks peate tegema järgmised sammud:

  • Avage juhtpaneelilt Windowsi tulemüür
  • Kui kasutate Vistat, klõpsake nuppu "Muuda sätteid"
  • Valige vahekaart "Erandid".
  • Klõpsake "Lisa programm.."
  • ÄRGE valige loendist "FileZilla serveri liides", peate klõpsama nuppu "Vaata...".
  • Otsige üles FileZilla serveri installikataloog (tavaliselt "C:\Program Files\FileZilla Server\")
  • Valige "FileZilla server.exe" ja klõpsake nuppu Ava (jällegi ÄRGE VALIGE "FileZilla Server Interface.exe")
  • Valige loendist "FileZilla server.exe" ja klõpsake "OK".
  • Veenduge, et "FileZilla server.exe" oleks erandite loendis ja märkige vastav ruut
  • Akna sulgemiseks klõpsake "OK".

See tagab passiivse režiimi toimimise. Kui pärast seda ilmnevad endiselt ühenduse probleemid (võrgu sees või väljaspool), kontrollige ruuteri sätteid või proovige lisada pordi number Windowsi tulemüüri sätetesse vahekaardil „Erandid”.

Vaadake Microsofti artiklit 931130 KB, milles kirjeldatakse, kuidas FileZilla töötab marsruutimise ja kaugjuurdepääsu või rakenduse taseme lüüsiga.

Failiedastusprotokoll, mis standarditi esmakordselt 1970. aastate alguses, on rakenduskihi protokoll, mis kasutab andmete edastamiseks TCP transpordiprotokolli. FTP töötati välja ajal, mil kliendid ja serverid suhtlesid üksteisega otse, ilma vahendajateta ja minimaalsete takistustega.

FTP probleemid kaasaegsetes võrkudes

Kaasaegsetes võrkudes (NAT, tulemüür, koormuse tasakaalustaja) ei võimalda järgmised FTP funktsioonid sellel korralikult töötada:

  1. Kaks eraldi TCP/IP ühendust: andmete edastamiseks ja käskude edastamiseks;
  2. Andmesideühenduse saab luua juhusliku pordinumbriga;
  3. Andmeühendus võib tulla kas serverist kliendini või kliendilt serverisse;
  4. Andmeühenduse sihtkoha aadress (töörežiimi valik) lepitakse kliendi ja serveri vahel läbi käsuühenduse kaudu lennult;
  5. Käsuühendus on andmesideühenduse kaudu andmete edastamise ajal jõude.

Probleem 1 on tingitud asjaolust, et marsruutimisseade või tasakaalustaja peab säilitama kaks ühendust sama allika ja sihtkoha vahel.

Probleem 2 on tingitud asjaolust, et FTP ei saa töötada, kui sissetulevad pordid on rangelt piiratud ainult kindlalt teadaolevatega. Need. Tavarežiimis ei saa FTP töötada ainult avatud 21 sissetuleva pordiga, mida ühendus kasutab käskude saatmiseks, samuti vajab see andmete edastamiseks avatud suure väärtusega portide komplekti (49152-65534).

Probleemi 4 põhjustab asjaolu, et NAT-i kasutamisel on vaja käskude edastamiseks muuta ühenduspakettide sisu nii, et serveri sisemine aadress asendataks välise aadressiga ning suunata ümber ka välisele saabuvad paketid. aadress serveri siseaadressile.

Probleem 5 on tingitud asjaolust, et marsruutimisseadmed võivad käskude saatmiseks katkestada takerdunud ühendused.

Kaks andmeedastusrežiimi FTP-s

FTP toetab kahte töörežiimi: aktiivne ja passiivne. Need erinevad andmeedastuse ühenduse loomise mehhanismi poolest:

  • Aktiivses režiimis loob server ühenduse oma 20. pordist määratud kliendipordiga.
  • Passiivses režiimis loob klient oma juhuslikust pordist ühenduse määratud serveripordiga.

Seega peavad kõik kaasaegsed FTP-kliendid läbirääkimisi serveriga, kust andmeid edastatakse ja kes ühenduse algatab. Klient saab määrata kasutuse aktiivne režiim saates "PORT" käsu, mis käsib serveril luua ühenduse konkreetse kliendi IP ja pordiga ning alustada andmete saatmist. Või saab klient kasutada passiivne režiim saates serverile käsu “PASV”, mis annab serverile teada, et klient ootab serveri IP-d ja porti, et hakata andmeid vastu võtma.

Kuna klient loob algselt ühenduse serveriga, et luua ühendus käskude saatmiseks, siis oleks loogiline, kui klient looks ka andmeühenduse, s.t. saatis PASV käsu (samuti parandas FTP ja tulemüüri vahelise probleemi). Kuid see pole nii, millegipärast otsustasid FTP spetsifikatsiooni loojad, et eelistatud režiim peaks olema PORT ja PASV tugi pole kliendi poolel isegi vajalik.

FTP toetab sisselogimist ja parooli juurdepääsu, kuid see pole turvaline, kuna... need edastatakse selge tekstina. Veebibrauserit kasutades saate selle otse URL-ile edastada.

Ftp:// :@:/

Näide aktiivsetest ja passiivsetest andmeedastusrežiimidest seanssidest

Näide aktiivsest režiimist, kus klient ühendub anonüümselt ja teeb ühe aktiivse andmeedastuse (kataloogi sirvimine).

Klient: USER anonüümne
Server:
Klient: PASS NcFTP@
Server: 230 Anonüümselt sisse logitud.
Klient: PORT 192,168,1,2,7,138 Klient soovib, et server ühenduks pordiga 1930 ja IP-aadressiga 192.168.1.2.
Server: 200 PORT käsk õnnestus.
Klient: LOEND
Server: 150 ASCII-režiimi andmesideühenduse avamine /bin/ls jaoks. Server loob ühenduse pordist 21 pordiga 1930 ja IP-aadressiga 192.168.1.2.
Server: 226 Nimekiri on lõpetatud. Andmete edastamine õnnestus.
Klient: VÄLJA
Server: 221 Hüvasti.

Passiivse režiimi näide

Klient: USER anonüümne
Server: 331 Külaline sisselogimine ok, saatke paroolina oma e-posti aadress.
Klient: PASS NcFTP@
Server: 230 Anonüümselt sisse logitud.
Klient: PASV Klient küsib serverilt ühenduseteavet.
Server: 227 Passiivsesse režiimi sisenemine
(172,16,3,4,204,173)
Server vastab kliendile, et ta peab looma ühenduse pordiga 52397 ja IP-aadressiga 172.16.3.4.
Klient: LOEND
Server: 150 Andmeühendus aktsepteeritud
172.16.3.4:52397; ülekande algus.
Klient ühendas serveriga pordi 52397 ja IP-aadressi 172.16.3.4.
Server: 226 Nimekiri on lõpetatud. Andmete edastamine õnnestus.
Klient: VÄLJA
Server: 221 Hüvasti.

Eraprobleemid:

    PORT-režiim – FTP-klient NAT-i või tulemüüri taga

    Suurim probleem, millega aktiivset režiimi kasutavad FTP-kliendid silmitsi seisavad, on see, et server peab ise looma ühenduse kliendi IP-aadressiga. Kui selle teel on tulemüür, mis katkestab kõik sissetulevad ühendused, siis FTP seanssi ei toimu. Teine probleem on see, kui klient on NAT-i taga ja kasutab sisemist IP-aadressi. Kui klient edastab serverile oma siseaadressi, mõistab ta selle hukka ühenduse loomise võimatuse.

    Lahendus 1: FTP-klient peab olema konfigureeritud passiivset režiimi kasutama.

    Lahendus 2: konfigureerige NAT FTP-ühenduste jälgimiseks. Kui klient kasutab aktiivset režiimi, peab NAT-seade kliendi siseaadressi ümber kirjutama ja asendama selle seadme välisaadressiga. Seejärel edastatakse FTP-serverist andmete edastamise ühendus, olles saabunud seadme välisele NAT-aadressile, selle poolt NAT-i taga oleva FTP-kliendi siseaadressile.

    PASV-režiim – tulemüüri taga olev FTP-server

    Kui FTP-server on tulemüüri taga, tekib klientidel probleeme passiivse režiimi kasutamisel FTP-serveri lühiajalise pordiga ühenduse loomiseks. Kõige tavalisem probleem on see, kui tulemüür, mille taga FTP-server asub, lubab teadaolevate portidega vaid teatud hulga ühendusi ja blokeerib teised.

    Lahendus 1. Administraator saab avada tulemüüril portide rühma, mille kaudu võivad tekkida ühendused FTP-serveriga.

    Lahendus 2. Kui tulemüüri tugi on olemas, saab administraator konfigureerida pordid automaatselt avanema, et luua passiivne ühendus FTP-serveriga. See seadistus sarnaneb NAT-i taga oleva aktiivse kliendi jaoks kirjeldatuga. Seega, kui tulemüür jälgib FTP-serveri vastust passiivsele kliendipäringule, avab see ajutiselt vastuses määratud pordi ja ainult selle IP jaoks, kust passiivne päring pärineb.

    PASV-režiim – FTP-server NAT-i taga

    PASV FTP režiimis vastab server kliendile oma sisemise IP-aadressi ja pordiga, mis mõistab kliendi hukka ühenduse loomise võimatuse.

    Lahendus 1: konfigureerige NAT FTP-andmeühenduste jälgimiseks. Kui server saadab vastuse passiivses režiimis, peab NAT-seade serveri siseaadressi ümber kirjutama ja asendama selle seadme välisaadressiga. Seejärel edastatakse FTP-kliendilt andmeedastuse ühendus, olles saabunud seadme välisele NAT-aadressile, selle poolt NAT-i taga oleva FTP-serveri siseaadressile.

    PASV-režiim – FTP-server koormuse tasakaalustaja taga

    Tasakaalustaja esindab ühte IP-aadressi, mille ühendus suunatakse ümber ühte tasakaalustatud serveritest. Tasakaalustaja tekitab FTP jaoks kaks probleemi. Esimene tekib seetõttu, et FTP-serveri ja kliendi vahel luuakse mitu ühendust: üks käskude edastamiseks ja üks või mitu andmete edastamiseks. Passiivses režiimis peab tasakaalustaja suunama andmeühenduse samasse serverisse, kus on käsuühendus. Teine probleem on esimese tagajärg: kui FTP-server vastab passiivse vastusega, sisaldab see vastus FTP-serveri sisemist aadressi, mitte tasakaalustaja välist aadressi.

    Lahendus 1. Määrake igale tasakaalustaja taga olevale FTP-serverile seaduslik IP-aadress, millele on juurdepääs väljastpoolt. Sel juhul saab FTP-server iseseisvalt teenindada FTP-kliente passiivses režiimis, minnes tasakaalustajast mööda.

    Lahendus 2: konfigureerige tasakaalustaja, et jälgida andmeedastuse jaoks FTP-ühendusi. Kui server saadab vastuse passiivses režiimis, peab tasakaalustaja kirjutama ümber serveri sisemise aadressi ja asendama selle tasakaalustaja välisaadressiga. Seejärel edastatakse tasakaalustaja välisele aadressile saabunud FTP-kliendi andmeedastuse ühendus tasakaalustaja taga asuva FTP-serveri siseaadressile.

    Lahendus 3: Seadistage FTP-server nii, et selle vastused passiivses režiimis sisaldaksid tasakaalustaja, mitte serveri välist aadressi, ja lootke, et tasakaalustaja suunab ühenduse ootelserverisse.

    Lahendamatu probleem – tulemüürid mõlemas otsas

    Kui klient ja server on mõlemad tulemüüride taga, mis piiravad kõiki sissetulevaid ühendusi, välja arvatud teadaolevate portide rühma, algavad probleemid. Klient ei saa aktiivset režiimi kasutada, kuna server ei saa sellega ühendust luua ega saa kasutada passiivset režiimi, kuna ei saa ühendust FTP-serveriga.
    Sel juhul tuleb tulemüüri sätteid muuta ja parem on seda teha serveri poolel.

    FTP-server mittestandardses pordis

    Mõned marsruutimisseadmed on võimelised töötlema FTP-seansse ainult siis, kui need saabuvad serveri standardporti. Seega, kui FTP-server kuulab mittestandardset porti, peate konfigureerima marsruutimisseadme nii, et see teaks, et selle pordi taga on FTP-server, ja töötleb ühendusi õigesti.

    Kuid isegi siis võib kliendipoolne tulemüür takistada. See võib juhtuda, kui kliendipoolne tulemüür nõuab rangelt, et FTP-serveri FTP-andmeühendus pärineb pordist 20 (aktiivses režiimis). Kui FTP-server töötab pordis N, siis vastavalt FTP spetsifikatsioonile pärinevad selle andmeühendused pordist N - 1 ja kliendi tulemüür blokeerib need.

    Probleemid, mis on põhjustatud tulemüüridest, mis katkestavad FTP-seansid enneaegselt

    See probleem ilmneb kõige sagedamini suure faili edastamisel. Kui ühenduse parameetrites on kokku lepitud ja ülekandmine alanud, hakkab käsuühendus jõude seisma, kuni failiedastus on lõppenud. Kui marsruutimisseade ei ole FTP-st teadlik ja failiedastus võtab kauem aega kui sellel olev ühenduse aktiivsuse loendur, siis marsruutimisseadme seisukohast ühendus aegub ja katkeb ning sissetulevad paketid visatakse ära.

    Selle probleemi lahenduseks on seade, mis hoiab ühenduse käskude edastamiseks aktiivses olekus, kuigi selle kaudu pole pikka aega ühtegi paketti edastatud. Teine võimalus on lubada kliendi või serveri poolel TCP/IP protokolli pinus funktsioon “Keep Alive”, mis saadab teatud ajavahemike järel saadavuse kontrolli paketi ja kui sihtpool ei reageeri, siis sulgeb ühenduse normaalselt. Kui vastuvõttev pool vastab, loetakse tulemüüri poolelt ühendus aktiivseks.

  • Kasutage võimaluse korral passiivset režiimi (see on veebibrauserites vaikeseade)
  • Kui ühendus FTP-serveriga õnnestus, kuid kataloogide sirvimine või failide edastamine lõpeb ühenduse tõrkega, on tõenäoliselt probleem tulemüüri ühenduse aktiivsuse taimerites
  • Kasutage seadmeid, mis toetavad FTP funktsioone

Enne aktiivse ja passiivse FTP-režiimi erinevuse selgitamist tasub kindlaks teha, mis FTP ise on ja kuidas see töötab. Ingliskeelne lühend FTP tähistab Failiedastusprotokoll, mis vene keelde tõlgituna tähendab failiedastusprotokolli. See on loodud ühenduse loomiseks kliendi, st kasutaja ja kaugserveri vahel.

FTP-protokoll loob kahte tüüpi ühendusi kliendi ja serveri vahel. Üks neist on nn juhtühendus ja on mõeldud käskude edastamiseks ning teist kutsutakse andmesideühendus ja on mõeldud erinevate failide edastamiseks serverisse. Aktiivsetel või passiivsetel FTP töörežiimidel pole esimest tüüpi ühendusega, see tähendab juhtühendusega, midagi pistmist. Valiku nende kahe režiimi vahel teeb kasutaja andmesideühenduse loomisel.

Niisiis, mis on põhimõtteline erinevus?

Peamine erinevus FTP-protokolli aktiivse ja passiivse töörežiimi vahel seisneb selles, kes klient-server ühenduses loob ühenduse andmeedastuseks, ehk jämedalt öeldes, kes kellega ühenduse loob. Samuti erinevad pordid, kuhu andmeid edastatakse. Aktiivses töörežiimis loob klient kontrollühenduse serveriga, kuid andmeedastuseks ühenduse loob server ise. Passiivses režiimis algatab andmeühenduse ja ka kontrollühenduse serveriga ainult klient. See tähendab, et aktiivses režiimis loob server andmete edastamiseks ühenduse kliendiga ja passiivses režiimis loob klient ühenduse serveriga.

Vaatame neid režiime selgemalt.

Aktiivse ja passiivse FTP-režiimi erinevused

Uurime videovormingus, kuidas erinevad FTP-protokolli passiivsed ja aktiivsed töörežiimid üksteisest.

Nii aktiivses kui passiivses režiimis algab ühenduse loomine kliendilt päringu saatmisega aadressile . Esiteks luuakse juhtühendus. Selleks luuakse kliendile ajutine port numbriga vahemikus alates 1024 enne 65535 juhtühenduse loomiseks, samuti andmeedastuse port. Aktiivses režiimis toimub kõik järgmises järjekorras:

  1. 1024 65535 21 .
  2. 1036 ).
  3. Klient saadab käsu PORT, mis näitab aktiivse FTP režiimi kasutamist, teie IP-aadressi ja pordi numbrit andmeühenduse loomiseks, millega server ühenduse loob (näites port 1037 ).
  4. Server kinnitab käsu.
  5. Klient annab serverile FTP-ga töötamiseks käsud.
  6. Server loob andmesideühenduse. Selleks saadab ta päringu koos 20 sadamasse kliendi poolt neljandas lõigus määratud sadamasse ( 1037 ).
  7. Klient vastab päringule.
  8. Server kinnitab ühenduse ja lubab kliendil andmeid edastada.

Skemaatiliselt saab seda väljendada järgmiselt:

Passiivses režiimis on andmeühenduse loomise protseduur veidi erinev. Toimingud toimuvad järgmiselt:

  1. Klient saadab ajutisest pordist vahemikuga 1024 65535 serveri pordi numbri päring 21 .
  2. Server vastab kliendi ajutisele pordile (näites port 1036 ).
  3. Klient kinnitab ühenduse.
  4. Klient saadab käsu PASV, mis räägib passiivse FTP-režiimi kasutamisest.
  5. Server kinnitab passiivses režiimis toimimist, saadab oma IP-aadressi ja pordi numbri andmeühenduse loomiseks, millega klient ühendub (näites 2154 ).
  6. Andmepordist (näites 1037 ) klient saadab palve luua ühendus serveri poolt väljastatud pordiga ( 2154 ).
  7. Server kinnitab ühenduse.
  8. Klient loob ühenduse.
  9. Klient annab serverile käsud (juhtpordist pordini 21 , näites - sadamast 1036 sadama kohta 21 ), pärast mida on andmete edastamine võimalik.

Kujutame seda diagrammil:

Passiivne režiim on kliendi jaoks turvalisem. Soovitatav on seda kasutada, kui teil on tulemüür konfigureeritud. Aktiivse FTP-režiimi kasutamine tulemüüri kaudu võib põhjustada vigu, kuna tulemüür ei luba serveril kliendiga ühendust luua. Seetõttu on selliste vigade vältimiseks soovitatav kasutada andmeedastuseks passiivset FTP-režiimi.