Protocolul ftp este folosit pentru a transfera ceva. Exemple de servicii de fișiere de rețea: FTP și NFS. Ce se înțelege prin server FTP

protocol FTP este inclusă în standardele de internet și este folosită pentru a transmite cantități mari de informații. Primele specificații care conțin acest protocol au apărut în 1971. De atunci, capacitățile FTP s-au extins semnificativ și este greu de imaginat cum ar putea utilizatorii să se descurce fără el dacă ar trebui să descarce sau să încarce mai mulți gigaocteți de fișiere necesare în stocarea online. De cât timp ar dura mutarea site-ului mașină locală la server, sau invers? Desigur, puteți folosi un arhivator, dar ce se întâmplă dacă serverul nu acceptă această funcție? E înfricoșător chiar să-ți imaginezi. Deci, FTP este un instrument destul de util.

Termenul „protocol” înseamnă un format convenit pentru schimbul de informații între două dispozitive. Și el însuși ca „protocol de transfer de fișiere”, care poate fi tradus ca „protocol de transfer de fișiere”. Protocolul FTP utilizează un canal TCP. Schimbul este construit pe principiul client-server. Este imposibil de transmis folosind acest protocol, deoarece nu are protecție a datelor și textul clar este transmis către server. Desigur, de obicei trebuie să vă autentificați pentru a vă conecta la un server FTP, dar nu vă bazați prea mult pe acest lucru, deoarece ID-ul de utilizator și parola sunt partajate în text clar.

Protocolul FTP este folosit pentru a face schimb de informații cu site-urile FTP, care sunt depozite uriașe de utile și informații interesante. Fișierele de pe un site FTP sunt aranjate într-o structură de directoare arborescentă, similară cu cea de pe computerul dvs. local. Pentru a vizualiza conținutul stocării, puteți folosi orice browser, dar este mai bine, desigur, să folosiți un program special creat pentru asta. Utilizatori cu care preferă să lucreze Linie de comanda Sistemul de operare poate folosi comanda „ftp”.

Unele site-uri FTP au restricții privind accesul la resursele lor. Uneori, pentru a le accesa, trebuie să cunoașteți login-ul și parola utilizatorului înregistrat. Majoritatea site-urilor FTP vă permit să încărcați fișiere fără a introduce o parolă. Dar este imposibil să vă înregistrați datele pe astfel de resurse.

Cum se utilizează protocolulFTPdacă sistemul dvs. de operare nu este Windows

Dacă preferați Linux, puteți vizualiza documentația pentru operațiunile disponibile tastând $ man ftp. Și pentru a vă conecta la serverul FTP, trebuie să introduceți $ ftp site-ul dvs. la.domeniu. Cele mai frecvent utilizate comenzi sunt:

  • binar - schimbarea modului de transfer al fișierelor binare (non-text), de exemplu, imagini;
  • ascii - schimbător de viteze informații text;
  • cd foldername - schimbați directorul curent de pe computerul de la distanță într-un folder numit foldername;
  • dir - vizualizați toate fișierele din directorul curent computer la distanță;
  • ajutor - ajutor la utilizarea comenzilor;
  • mget - descărcarea simultană a mai multor fișiere;
  • put filename - folosit pentru a încărca în resursă la distanță fișier local nume de fișier;
  • mput - încărcarea mai multor fișiere pe o resursă de la distanță;
  • ieșire - ieșiți din FTP și ieșiți în sistemul de operare.

De asemenea, puteți utiliza programe precum gFTP, FOFF și FileZilla.

Cum se utilizează protocolulFTPdacă preferați Windows

În acest caz, totul este mult mai simplu, și tu Orice va face Client FTP care este ușor de găsit pe web. Dintre cele gratuite, cele mai populare aplicații sunt FileZilla, FTPInfo, WinSCP. Conexiunea prin FTP poate fi susținută și de manageri de fișiere populari precum Total Commander și FAR manager. Deci, dacă nu utilizați acest protocol foarte des, atunci vă puteți descurca cu ei.

Ei bine, dacă trebuie doar să descărcați ceva o singură dată, atunci puteți introduce în browser, în loc de adresa URL, ceva de genul acesta:

ftp://utilizator: [email protected]:port, în care

site.at.domain - numele serverului,

port - numărul portului de conectat (de obicei 21 și poate fi omis).

Dacă trebuie să vă conectați la FTP anonim, atunci utilizați notația de comandă scurtată:

ftp://host.at.domain:port

Se întâmplă să apară unele probleme la conectarea prin FTP. În acest caz, este logic să verificați Setări firewall si antivirus.

Dacă citiți acest blog de mult timp, poate vă amintiți cum am decis să adun în el o descriere a protocoalelor de rețea populare (și nu atât de populare). De ce am nevoie de asta, puteți citi în articolul O descriere destul de completă a protocolului SMTP. Așa că am decis să adaug la colecție protocolul FTP, care este utilizat pe scară largă pentru transferul fișierelor.

1. Să mergem

Ca de obicei, voi începe imediat cu un exemplu:

$ telnet example.ru 21
Încercați 192.168.0.1...
Conectat la example.ru.
Caracterul de evacuare este „^]”.
220-Bine ați venit la Pure-FTPd
Sunteți utilizatorul numărul 5 din 100 permis.
Ora locală este acum 17:41. Port server: 21.
220 Veți fi deconectat după 15 minute de inactivitate.
UTILIZATOR afiskon
331 Utilizator afiskon OK. Este necesară parola
PASS lameparola
230-Utilizatorul afiskon are acces de grup la: codificatori
230 OK. Directorul restricționat curent este /

Serverul FTP rulează de obicei pe portul 21. În exemplul de mai sus, liniile care încep cu numere sunt trimise de către server, restul - de către client. Solicitările clientului constau întotdeauna într-o singură linie de format COMANDĂ [argumente], în timp ce răspunsurile serverului pot conține mai multe rânduri.

Prima și ultima linie încep cu trei cifre reprezentând codul de răspuns, urmate de descriere text răspuns, separat de cod printr-un spațiu sau o liniuță. Dacă un spațiu este folosit ca delimitator, atunci linia este ultima din răspuns (și posibil singura), altfel primim prima linie a unui răspuns cu mai multe linii. Am văzut deja asta pe undeva, nu-i așa?

Există cinci grupuri de răspuns de server:

După cum puteți vedea din exemplu, totul începe cu serverul care trimite codul 220. Apoi utilizatorul trebuie să se conecteze folosind comenzile USER și PASS. Dacă totul este făcut corect, serverul va răspunde la primul cu codul 331, iar celui de-al doilea cu 230. Pentru autentificare anonimă(dacă este permis de setările serverului), ar trebui să specificați „anonim” ca nume de utilizator și adresa de e-mail ca parolă. În practică, de obicei fie un e-mail gol, fie ceva asemănător [email protected].

După cum puteți vedea, parola este trimisă către formă deschisă, prin urmare, este foarte recomandabil să criptați conexiunea FTP cu folosind SSL(acesta se numește FTPS - FTP plus SSL), sau chiar mai bine - transferați fișiere prin SSH folosind utilitare scp, sftp sau WinSCP. Primele două sunt disponibile pe orice sistem Unix și folosesc aceleași protocoale care rulează pe SSH pentru a transfera fișiere. WinSCP este scris pentru Windows și arată ca Total Commander, poate funcționa atât cu SCP (Secure Copy) și SFTP (Fișier SSH). Protocolul de transfer), care a apărut doar în SSH-2.

2. Să ne uităm în jur

Dar ceva m-a dus în stepa greșită. După ce am trecut autentificarea (wow, nu o voi confunda cu autorizare) Serverul FTP va executa cu plăcere comenzile noastre. Iată lista lor:

Echipă Cod așteptat Descriere
DELE 250 Ștergeți un fișier
RMD 250 Ștergeți directorul
CWD 250 Accesați directorul
MKD 257 Creați director
P.W.D. 257 Aflați directorul curent
PĂRĂSI 221 Termină lucrul
TIP 200 Setați tipul de transfer
PORT 200 Comutați în modul activ
PASV 227 Comutați în modul pasiv
LISTĂ 150, 226 Obțineți conținutul directorului
RETR 150, 226 Descărcare fișier
STOR 150, 226 Incarca fisier
ABOR 426,226 Anulați transferul
RNFR 350 Selectați fișierul pentru a redenumi
RNTO 250 Redenumește fisierul

Aici am enumerat doar comenzile de bază, care sunt suficiente pentru a scrie un client FTP cu drepturi depline. Ideea este că în conditii reale Serverele FTP sunt foarte selective în ceea ce privește suportul comenzilor descrise în RFC959 și RFC3659. Deci, dacă vrem să obținem o aplicație cu adevărat funcțională, și nu un cal sferic în vid, va trebui să ne limităm doar la comenzile din lista dată.

Cel mai comenzi simple- Acest INIȚI, ȘTERGERE, MKD, CWD și RMD. Pur și simplu comandăm și verificăm codul returnat de server. Dacă este egală cu valoarea așteptată, atunci totul este OK, dacă nu, procesăm eroarea.

MKD ftp_test
257 "ftp_test": Directorul a fost creat cu succes
CWD ftp_test
250 OK. Directorul curent este /ftp_test
CWD..
250 OK. Directorul curent este /
RMD ftp_test
250 Directorul a fost eliminat cu succes

Dacă aș scrie un client FTP, codul responsabil pentru executarea acestor comenzi ar arăta cam așa:

cod int;
char * dir;
// ...
if (cod = rawcmd(250 , "RMD %s \r\n", dir))
printf("Eroare: %d \n", cod) ;
altfel
printf("Totul este gata! \n") ;

Puțin mai dificil cu analizarea răspunsului serverului la o comandă P.W.D.:

P.W.D.
257 „/ftp_test” este locația dvs. curentă

Directorul curent este transmis pe singura (ultima?) linie a răspunsului serverului, inclusă în ghilimele duble. Dacă Numele complet directorul curent conține ghilimele duble, acestea sunt înlocuite cu două ghilimele:

P.W.D.
257 "/ftp""test" este locația dvs. curentă

Pentru a redenumi fișierele, sunt folosite câteva comenzi - RNFR și RNTO:

RNFR fișier_vechi.zip
350 Glumești?
RNTO fişier_nou.zip
250 Gata!

Aparent, aceasta este o optimizare astfel încât bufferul în care serverul citește comenzile clientului să fie de ordinul lungimii maxime permise a numelui complet al fișierului și nu de două ori mai lung. În 1971, când a fost creat protocolul, acest lucru ar fi putut fi important.

Echipă TIP vă permite să setați modul de transfer al fișierelor. Exemplu:

TIP E
200 TYPE este acum EBCDIC
TIP A
200 TYPE este acum ASCII
TIP I
200 TYPE este acum binar pe 8 biți

Din câte îmi pot da seama, astăzi această comandă este deja depășită și toate datele pot fi transmise în siguranță în format binar (TIP I). Citat din Wikipedia:

Primele calculatoare foloseau un format de cuvânt mașină de dimensiunea unui octet, un cuvânt mașină dublu, nu un multiplu de 8. De obicei erau multipli de șase. Opt biți pe octet au fost adoptați în timpul dezvoltării sistemului de instrucțiuni ale mașinii pentru IBM System/360. A devenit standard internationalȘi de la începutul anilor 1970 Majoritatea computerelor folosesc octeți formați din 8 biți și cuvinte mașină în multipli de 8.

3. Să luăm măsuri

O caracteristică a protocolului FTP este că folosește conexiuni diferite. Aceasta este în general o decizie de proiectare normală. Nu știm ce este scris în aceste fișiere și, dacă le transmitem împreună cu comenzi, va trebui să codificăm cumva conținutul fișierului pentru a-l distinge de comenzi. De ce să creșteți volumul de trafic și să complicați protocolul când puteți pur și simplu deschide o nouă conexiune și trimite fișierul așa cum este?

Când se stabilește o nouă conexiune, cineva trebuie să se conecteze efectiv și cineva trebuie să accepte conexiunea. Dacă clientul deschide un port și serverul se conectează la acesta, modul de transfer de fișiere se numește activ. Altfel, este pasiv. Datorită faptului că mulți utilizatori de internet astăzi stau în spatele NAT, de obicei se folosește modul pasiv. Și acest lucru nu este foarte bun, deoarece numărul de porturi de pe server este limitat.

Ceea ce este interesant este că este posibil să transferați fișiere de la un server FTP la altul direct. Dar, deoarece această caracteristică a fost adesea folosită în atacurile DDoS, acum este dezactivată aproape peste tot.

Pentru a comuta în modul pasiv, utilizați comanda PASV, pentru a comuta la activ - PORT:

PORT 192,168,10,1,21,133
200 Comandă PORT reușită
PASV
227 Intrarea în modul pasiv (192,168,0,1,21,216)

După cum ați putea ghici, adresa IP și portul pentru conexiune sunt codificate folosind numere. Să presupunem că suntem în modul pasiv și dorim să stabilim o conexiune de date:

$ telnet 192.168.0.1 `expr 21 \* 256 + 216`
Încercați 192.168.0.1...
Conectat la example.ru.
Caracterul de evacuare este „^]”.

După care putem, de exemplu, vizualiza conținutul directorului curent folosind comanda LISTĂ:

LISTĂ
150 Conexiune de date acceptată
226-Optiuni: -a -l
226 5 meciuri în total

Să ne uităm la ieșirea telnet:

drwx------ 5 codificatori afiskon 512 Jul 7 11:35 .
drwx------ 5 codificatori afiskon 512 Jul 7 11:35 ..
drwxr--r-- 3 codificatori afiskon 512 6 iunie 14:30 site
drwxr-xr-x 2 codificatori afiskon 1024 7 iulie 00:16 jurnal
drwxr--r-- 2 codificatori afiskon 512 6 iunie 14:30 tmp
Conexiune închisă de către gazda externă.

Descărcarea și încărcarea fișierelor se face exact în același mod, fiind folosite doar comenzile RETR (fișier)Și STOR (fișier) respectiv. Comenzile RETR, STOR și LIST pot fi întrerupte la mijlocul execuției folosind comanda ABOR, ca răspuns la care serverul ar trebui să răspundă cu 426 „transfer întrerupt”, apoi cu 226 „anularea operațiunii a avut succes”.

4. Concluzie

Probabil că aici voi încheia povestea mea. Rezultatul a fost 9 KB de text față de 130 KB de RFC959. Folosind acest articol, este destul de posibil să scrieți un simplu client sau server FTP, am verificat! Cel mai important lucru este să-l testați pentru compatibilitate cu cât mai multe software posibil, pentru că, așa cum am observat deja, în lumea FTP, puțini oameni urmează cu strictețe RFC. Și, în sfârșit, amintiți-vă de regula de aur „Fii liberal cu input-ul, strict cu output-ul”.

FTP (Transfer de fișier Protocol protocol de transfer de fișiere ) protocol standard, conceput pentru transferul de fișiere prin rețele TCP, construit pe o arhitectură client-server și folosind diferite conexiuni de retea pentru a transfera comenzi și date între client și server.

Serverul oferă clientului acces la date (de obicei fișiere și directoare) clientului fie anonim, fie după autentificare, în care autentificarea și parola sunt transmise în text clar. Poate fi folosit Protocolul SSH pentru a cripta datele de conectare, parola și datele transmise.

Protocolul este destul de simplu; conexiuni TCP pentru comenzi și pentru datele transmise. De obicei, acestea sunt 21 de porturi pentru comenzi de control și 20 pentru transmisia de date (în caz contrar, aceasta poate fi diferită). După Setări TCP conexiuni la 21 de porturi de comunicare Client FTP Acest lucru se întâmplă cu serverul folosind comenzi text destul de simple.

În conformitate cu RFC 959, serverul Control Flow (21 de porturi) răspunde cu coduri de stare ASCII din trei cifre cu un mesaj text opțional.

Există 2 moduri de operare ale protocolului FTP: activ și pasiv.

În modul activ, clientul creează o conexiune de control TCP cu serverul de pe portul 21 și trimite adresa sa IP și un număr arbitrar de port al clientului către server, apoi așteaptă până când serverul începe o conexiune TCP cu această adresă și numărul de port.

În modul pasiv, clientul utilizează fluxul de control ( Port TCP 21) pentru a trimite comanda PASV către server și apoi primește de la server adresa sa IP și numărul de port, care sunt apoi folosite de client pentru a deschide un flux de date de la un port arbitrar al clientului către adresa și portul primit.

Cunoașterea modurilor Funcționează FTP vă ajută dacă trebuie să vă conectați la server FTP sau ridicați-l într-o rețea care este ascunsă în spatele NAT și/sau protejată de un firewall, ceea ce, după cum ați putea ghici, nu este neobișnuit. Dacă clientul nu poate accepta conexiuni de intrare, pornit port arbitrar, atunci trebuie să configurați serverul în modul pasiv, apoi conexiunile de intrare la client nu vor fi necesare, dar serverul trebuie să fie gata să accepte conexiune de intrare pentru a preseta porturi. Modul activ este potrivit pentru un server al cărui administrator nu este pregătit să accepte conexiuni de intrare pe alte porturi decât 21, dar în acest caz clientul se va putea conecta numai dacă el însuși acceptă conexiuni de intrare. Deci, în orice caz, cineva va trebui să deschidă porturi suplimentare.

În timpul transmisiei pot fi utilizate patru reprezentări de date:

    ASCII - folosit pentru text.

    Modul imagine (binar) - Dispozitivul expeditor trimite fiecare fișier octet cu octet, iar destinatarul stochează fluxul de octeți la primire.

    EBCDIC - Folosit pentru a transfera text simplu între gazde în codificare EBCDIC.

    Modul local - permite două computere cu setări identice trimite date către format propriu fără conversie în ASCII.

Transferul de date poate fi efectuat în oricare dintre cele trei moduri:

    Modul Stream - datele sunt trimise ca flux continuu, eliberând FTP-ul de a efectua orice procesare.

    Modul bloc - FTP împarte datele în mai multe blocuri (bloc antet, număr de octeți, câmp de date) și apoi le transmite către TCP.

    Modul de comprimare—datele sunt comprimate folosind un singur algoritm.

FTP utilizează o autentificare și o parolă pentru autentificare pentru a oferi acces. Numele de utilizator este trimis la server cu comanda USER, iar parola este trimisă cu comanda PASS. Dacă informațiile furnizate de client sunt acceptate de server, atunci serverul va trimite o invitație clientului și începe sesiunea. Autentificarea și parola sunt transmise în text clar, astfel încât această metodă nu poate fi numită sigură. Serverul FTP poate oferi, de asemenea acces anonim la date, adică pentru toată lumea, fără a cere login și parolă.
Există extensii și modalități de a transfer sigur date și autentificare, de exemplu: FTPS SFTP FTP prin SSH.

Voi da un exemplu de sesiune FTP cu comentariile mele. Iată rezultatul comenzilor (doar în canalul de control, desigur) pe care clientul FTP le-a trimis serverului și răspunsurile serverului fără abrevieri (voi înlocui unii parametri cu asteriscuri, de exemplu parola din motive de securitate):

Stare: - acesta este un mesaj de la clientul FTP la schimbul de comenzi cu FTP „manual” nu veți vedea aceste mesaje; Răspuns: - acestea sunt răspunsurile serverului FTP Comanda: - acestea sunt comenzile pe care clientul le trimite către server (în mod manual le vei introduce de la tastatură).

Stare: Conectare la 37.140.*.* ...
Stare: Conectat cu 37.140.*.*. Așteptând mesaj de intampinare...
Răspuns: 220 (vsFTPd 2.2.2) - deci, batem la portul 21 37.140.*.* și ne spun că vsFTPd funcționează acolo
Comanda: USER ********* - trimite numele de utilizator
Răspuns: 331 Vă rugăm să specificați parola. - numele de utilizator acceptat
Comanda: PASS ******** - trimite parola
Răspuns: 230 Conectare reușită. -parola acceptata
Comanda: SYST - "Și ce sistem de operare ai?" noi intrebam
Răspuns: 215 Tip UNIX: L8 - „și asta este”, va răspunde serverul
Comanda: FEAT - ce poți face, server?
Răspuns: 211-Caracteristici: - si iata ce :)
Răspuns: EPRT
<... Не будем оглашать весь список...>
Răspuns: UTF8
Răspuns: 211 Sfârșit - serverul a terminat de listat funcțiile
Comanda: OPTS UTF8 ON - vorbiți cu noi în codificare UTF-8
Răspuns: 200 Întotdeauna în modul UTF8. - Sigur, nu este o problemă
Stare: Conectat - Noi suntem cei care reînviam legătura.
Comanda: PWD - arata-ne directorul de lucru
Răspuns: 257"/" - pe! acesta este numele directorului de lucru (avem /)
Comanda: TIP A - dar mai întâi vom seta modul de prezentare a datelor
- BINE
Comanda: PASV - și cereți să intrați în modul pasiv
Răspuns: 227 Intrarea în modul pasiv (37.140.192.202.249.140). - a primit o listă de porturi
Comanda: LIST - dați-mi o listă cu conținutul directorului

- în acest moment am primit cuprinsul prin canalul de date
Comanda: TIP A
Răspuns: 200 Trecerea la modul ASCII.
Stare: Se preiau lista de director...
Comanda: CWD www - schimbați directorul de lucru în www
Răspuns: 250 Directorul a fost schimbat cu succes. - raspunde "ok"
Comanda: PWD - solicitați din nou directorul de lucru
Răspuns: 257 "/www" - acum el este /www
Comanda: TIP A - și selectarea modului de prezentare a datelor
Răspuns: 200 Trecerea la modul ASCII.
Comanda: PASV - din nou în modul pasiv
Răspuns: 227 Intrarea în modul pasiv (37.140.192.202.252.174).
Comanda: LIST - solicita cuprinsul catalogului
Răspuns: 150 Aici vine lista de director.
Răspuns: 226 Trimitere director OK.
Stare: listarea directorului a reușit - am primit cuprinsul și acum
Stare: începe descărcarea /www/google8f2c0456e362dfaa.html - vrem să descarcăm fișierul
Comanda: TIP A - pentru aceasta vom selecta din nou tipul
Răspuns: 200 Trecerea la modul ASCII.
Comanda: PASV - și modul de transfer de date
Răspuns: 227 Intrarea în modul pasiv (37.140.192.202.254.190).
Comanda: RETR google8f2c0456e362dfaa.html - și spuneți: „Dați-l fișierului”
Răspuns: 150 Deschiderea conexiunii de date în modul BINAR pentru google8f2c0456e362dfaa.html (53 de octeți).
Răspuns: 226 Transfer finalizat. - și acum fișierul a fost primit prin canalul de date
Stare: descărcare reușită
Stare: Se preiau lista de director...
<... Пропустим некоторые повторяющиеся действия...>
Comanda: MKD fff - și aici am creat un folder
Răspuns: 257 „/www/moop-nz.ru/02-uslugi/fff” creat
Comanda: RNFR /www/moop-nz.ru/02-uslugi/fff - și vrem să redenumim folderul fff
Răspuns: 350 Gata pentru RNTO.
Comanda: RNTO /www/moop-nz.ru/02-uslugi/eee - în folderul eee
Răspuns: 250 Redenumire cu succes. - operațiunea a fost finalizată cu succes
<... Пропустим некоторые повторяющиеся действия...>
Comanda: RMD /www/moop-nz.ru/02-uslugi/eee/ - ștergeți folderul creat anterior
Răspuns: 250 Operațiunea de eliminare a directorului a reușit. - totul a mers
Stare: Conectat
Stare: începe încărcarea C:\12345\12345 001.jpg - începeți încărcarea fișierului pe server
<... Пропустим некоторые повторяющиеся действия...>
Comanda: TIP I
Răspuns: 200 Trecerea la modul binar.
Comanda: PASV
Răspuns: 227 Intrarea în modul pasiv (37.140.192.202.243.234).
Comanda: STOR 12345 001.jpg - de data aceasta trimitem fisierul la server
Răspuns: 150 Ok pentru a trimite date.
Răspuns: 226 Transfer finalizat.
Stare: Încărcare reușită
Stare: Se preiau lista de director...
Comanda: TIP A
Răspuns: 200 Trecerea la modul ASCII.
Comanda: PASV
Răspuns: 227 Intrare în modul pasiv (37,140,192,202,251,25).
Comanda: LIST
Răspuns: 150 Aici vine lista de director.
Răspuns: 226 Trimitere director OK.
Stare: listarea directorului a reușit
Comanda: DELE /www/moop-nz.ru/02-uslugi/12345 001.jpg - și șterge-l în cele din urmă
Răspuns: 250 Operația de ștergere a reușit.

Oamenii au creat o mulțime de servere și clienți FTP (la urma urmei, protocolul există din 1971).

Mânca programe speciale lucrează ca client FTP, cum ar fi: FileZilla, gFTP, cURL, lftp și multe altele, dar acum aproape orice browser poate funcționa ca client FTP ( Mozilla Firefox, Konqueror, Opera, Yandex.Browser, Google Chrome, Internet Explorer etc.) sau manager de fișiere ( Comandantul de la miezul nopții, Krusader, GNOME Commander, Konqueror, Nautilus, Dolphin, Manager FAR, Total Commander, Windows Explorer etc.), deci nu este nevoie să folosești programe speciale (deși uneori folosesc gFTP).

Pentru a vă configura serverul FTP cu preferință și autentificare, veți avea nevoie de un program special care va acționa ca server. Există și multe astfel de programe, printre care: vsftpd, ProFTPD, Pure-FTPd, glFTPd, oftpd, Serv-U File Server și multe altele.

Se pare în schiță generală Este clar ce este FTP și de ce este necesar.

  • Înapoi
  • Redirecţiona
  • Telemetrie în Windows 10. Dezactivați-o, nu o dezactivați, veți primi în continuare cea mai bună soluție
  • Merge. Computerul a reușit să-l învingă pe campioana de trei ori campioană europeană în jocul Go
  • Noi „cadouri” de la Microsoft - „stabilitate” și „confidențialitate”

    Corporația de renume mondial ne-a încântat încă o dată cu vești: după lansarea următorului patch, instrumentul încorporat pentru Criptare Bitlocker nu mai funcționează, iar Microsoft nu poate...

Am eliberat carte noua„Marketingul de conținut în în rețelele sociale: Cum să intri în capul abonaților tăi și să-i faci să se îndrăgostească de marca ta.”

Abonati-va

Mai multe videoclipuri pe canalul nostru - învață marketingul pe internet cu SEMANTICA

Această tehnologie este una dintre cele mai populare pentru descărcarea și încărcarea datelor de la/la servere la distanță, dispersate în întreaga lume.

Sistemele Ftp sunt folosite pentru a crea site-uri web. Toate informațiile legate de resursa Internet sunt stocate pe serverul FTP. Când un dezvoltator trebuie să facă unele ajustări site-ului, el merge la server, descarcă fișierul care trebuie corectat și apoi îl încarcă înapoi. Și gata, schimbarea a intrat în vigoare. Este rapid și convenabil.

Cum arată un server FTP?

Prezentarea vizuală depinde de sistemul prin care vă conectați. Există programe speciale precum FileZilla, în care datele sunt afișate sub forma familiarului Total Commander.


Multe site-uri de găzduire au propriul sistem de management, care arată, de asemenea, ca un set familiar de foldere și fișiere.

Caracteristicile serverului FTP

Să aruncăm o privire mai atentă la aspectele tehnice și să vă spunem ce este un server ftp și cum funcționează.

Funcția principală a FTP este de a transfera fișiere.

Pe lângă încărcarea și descărcarea informațiilor, diverse comenzi, cu care puteți gestiona fișiere și directoare:

  1. Autentificare necesara.
  2. Disponibilitatea unui canal dedicat pentru fiecare conexiune.
  3. Suportă 2 moduri de transmisie a datelor: text și binar (în sistem binar). A doua opțiune reduce timpul și traficul.
  4. Utilizarea conexiunilor multiple, cel puțin două canale. Prin intermediul unuia, se transmit comenzile de control și se returnează răspunsurile procesate. Cu ajutorul altora, transferul de fișiere se realizează pe baza unui canal dedicat fiecăruia.

Cum să vă conectați la un server FTP

Pentru a intra pe server, trebuie să completați un formular de autorizare, cu alte cuvinte, treceți autentificarea. După introducerea login-ului (utilizatorului) și a parolei (pass), aceste informații sunt transferate în sistem. Dacă este acceptat, clientul va primi o invitație și se va deschide sesiunea de lucru.

Există opțiuni de conectare fără a specifica datele de înregistrare. În acest caz, opțiunile disponibile vizitatorului vor fi limitate.

Există o altă opțiune pentru autentificarea la un server FTP - acces anonim. În mod implicit, autentificarea are loc atunci când introduceți autentificarea „anonim”; ortografia poate fi diferită în cazul literelor. Cu toate acestea, cea mai comună metodă este atunci când oferă să se autentifice folosind Adresa de e-mail. Această opțiune de acces este utilizată de multe gazde FTP care trimit actualizări de software.

Pentru a vă conecta, puteți utiliza un browser web sau manageri de fișiere, cum ar fi Total Commander, FileZilla. Prin intermediul browserului, veți putea vizualiza și descărca fișiere, dar nu veți putea face modificări.

Este mai convenabil să lucrezi Programul client FileZilla(poate fi descărcat în domeniul public).

Creați o nouă conexiune după cum urmează:

  • În câmpul „Gazdă”, introduceți adresa serverului FTP.
  • Completați câmpurile „Nume utilizator”, „Parolă” și, dacă este necesar, „Port”.

De unde pot obține adresa? Dacă vă conectați la un server găzduit pe o gazdă, proprietarul site-ului are toate accesul la care a fost furnizat de furnizor.

Pentru ce altceva este folosit FTP?

Fișierele site-ului web sunt cel mai frecvent caz de utilizare, dar asta nu este tot ceea ce rezidă pe serverele FTP.

Acolo puteți stoca orice lucru sau Informații personale volume mari, opțional, fotografii, videoclipuri.

Aproape orice informație care este folosită zilnic de milioane de oameni este postată pe depozitele FTP. Acestea sunt software, versiuni demo ale programelor, cărți electronice, acte legislative, articole, filme, muzică - tot ce poate fi formatat într-o reprezentare de fișier. Au fost create cataloage pe Internet care conțin terabytes de informații utile sau distractive. De regulă, este disponibil anonim și nu necesită plată.

Dezavantajele serverelor FTP

Protecție slabă împotriva hackingului și atacurilor. Datorită caracteristicilor tehnice, nu numai serverele, ci și clienții pot fi deteriorați. Prin urmare, informațiile confidențiale nu ar trebui să fie stocate pe acestea.

Nu există nicio autentificare a sursei pachetului de transmisie de date, ceea ce duce la vulnerabilitate la atacurile DDoS.

FTP este un mecanism standard pentru copierea unui fișier de la o gazdă la alta. Transferul de fișiere de la un computer la altul este unul dintre cele un numar mare sarcini comune, a cărui execuție este așteptată de la retea organizatași interacțiunile dintre rețele.

Deși transferul fișierelor de la un sistem la altul pare o sarcină simplă și simplă, există câteva probleme care trebuie rezolvate mai întâi. De exemplu, două sisteme pot utiliza convenții diferite de denumire a fișierelor. Cele două sisteme pot avea moduri diferite de prezentare a textelor și datelor. Cele două sisteme pot avea structuri de directoare diferite. FTP rezolvă toate aceste probleme într-un mod foarte simplu și elegant.

FTP este diferit de alte tipuri de aplicații client server prin aceea că stabilește două conexiuni între gazde. O conexiune este folosită pentru a transmite date, cealaltă este folosită pentru a controla informațiile (comenzi și răspunsuri). Separarea comenzilor și transferurilor date de control face FTP mai eficient. Controlul conexiunii folosește reguli foarte simple pentru comunicare. Avem nevoie doar de o linie de comandă sau de o linie de răspuns pentru transmitere. Pe de altă parte, o conexiune de date are nevoie de reguli mai complexe datorită varietății de tipuri de date.

FTP utilizează două porturi definite: portul 21 pentru management și portul 20 pentru transferul de date.


Orez. 13.5.

Tip fișier

FTP poate transfera printr-o conexiune de date următoarele tipuri fisiere:

  • fișier ASCII. Acesta este formatul implicit utilizat pentru difuzare fișiere text. Fiecare caracter este codificat folosind caractere NVT ASCII. Emițătorul convertește fișierul din reprezentarea sa nativă în NVT ASCII, iar receptorul convertește caracterele NVT ASCII în reprezentarea sa nativă.
  • Fișierul EBCDIC. Dacă ambele capete ale conexiunii utilizează codificarea EBCDIC, fișierul poate fi transferat utilizând codificarea EBCDIC.
  • Fișier imagine. Acest fișier este formatul implicit pentru transferul fișierelor binare. Fișierul este trimis ca un flux continuu de biți fără nicio interpretare sau codificare. Este folosit mai ales pentru a transfera fișiere binare, cum ar fi un program compilat.

Dacă fișierul este codificat în ASCII sau EBCDIC, alte atribute trebuie completate pentru a determina dacă fișierul poate fi tipărit:

  1. Interzis pentru publicare. Acesta este formatul implicit pentru transferul fișierelor text. Fișierul nu conține specificații de imprimare „verticală”. Aceasta înseamnă că fișierul nu poate fi tipărit fără preprocesare deoarece nu conține caractere care sunt interpretate pentru mișcare verticală cap de imprimare. Acest format este folosit pentru fișierele care vor fi acumulate și procesate ulterior.
  2. TELNET. În acest format, fișierul conține caractere verticale NVT ASCII, cum ar fi CR (întoarcere car), LN (line feed), NL (linie nouă) și VT (filă verticală). Aceste fișiere pot fi imprimate după transfer

Structură de date

FTP poate transfera un fișier printr-o conexiune de date utilizând una dintre următoarele interpretări ale structurii de date:

  • Structura fișierului (implicit). Acest fișier nu are structură. Este un flux continuu de date.
  • Structura de înregistrare. Acest fișier este separat într-o înregistrare. Poate fi folosit numai cu un fișier text.
  • Structura paginii. Acesta este un fișier împărțit în pagini, fiecare pagină are un număr și titlul paginii. Paginile pot fi acumulate sau accesate folosind acces aleatoriu sau secvenţial.

Moduri de transfer

FTP poate transfera un fișier printr-o conexiune de date utilizând unul dintre următoarele trei moduri de transfer:

  • Modul stream. Acesta este modul implicit. Datele sunt livrate de la FTP la TCP ca un flux continuu de date. TCP este responsabil pentru împărțirea datelor în segmente de dimensiuni adecvate. Dacă datele sunt doar un flux de octeți ( structura fișierului), atunci nu este necesar niciun semn de sfârșit de fișier. Sfârșitul fișierului în acest caz este eliberarea conexiunii de date de către expeditor. Dacă datele sunt împărțite în înregistrări (structură cu înregistrare), fiecare înregistrare va avea un caracter de sfârșit de înregistrare de un octet (EOR - sfârșit de înregistrare).
  • Modul bloc. Datele pot fi livrate din FTP și TCP în blocuri. În acest caz, blocul este precedat de un antet de trei octeți. Primul octet se numește descriptor de bloc, următorii doi octeți determină dimensiunea blocului în octeți.
  • Modul comprimat. Dacă fișierul este mare, datele pot fi comprimate. Metoda de compresie folosește codarea de lungime normală. În această metodă, reapariția secvențială a unui bloc de date este înlocuită cu o singură apariție și un număr de repetări. În textul unui fișier, acesta este de obicei un spațiu (gol). ÎN fisier binar caracterele nule sunt de obicei comprimate.

FTP folosește o conexiune de management pentru a stabili comunicarea între procesul de gestionare a clienților. În timpul acestei comunicări, comenzile sunt trimise de la client către server, iar răspunsurile sunt trimise de la server către client (Figura 13.6).


Orez. 13.6.