Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Savjet
  • Primjeri mrežnih usluga datoteka uključuju FTP i NFS. Karakteristike FTP protokola

Primjeri mrežnih usluga datoteka uključuju FTP i NFS. Karakteristike FTP protokola

FTP je vrsta protokola za prijenos podataka koji se koristi za kopiranje i premještanje datoteka na Internetu i unutar TCP mreža. FTP se često koristi za preuzimanje stranica i dokumenata različitih tipova na hosting računare. FTP koristi klijent-server arhitekturu i različite veze unutar mreže za prijenos komandi i informacija sa klijenta na server i obrnuto. Korisnicima FTP-a je dozvoljeno da prođu kroz proceduru autentifikacije koristeći login i lozinku, ili, ako je takav obrazac dozvoljen na serveru, korisnici mogu dobiti pristup u anonimnom načinu.
Pored uobičajenog protokola koristi se i FTPS, koji je posebna ekstenzija standardnog FTP-a koja omogućava klijentima pristup serveru i korištenje šifriranih sesija prijenosa podataka. Ovaj pristup se implementira slanjem "auth tls" naredbe za autentifikaciju, dok je serveru dozvoljeno da prihvati ili odbije veze koje ne zahtijevaju TLS veze.

SFTP

SFTP je standard za internet prijenos za premještanje i kopiranje datoteka preko sigurne i sigurne SSH (Secure Shell) veze. Ova vrsta veze može obezbijediti pristup i siguran prijenos, koji se provodi uz enkripciju kako login i lozinke, tako i sadržaja samog prijenosa, čime se lozinke i povjerljive informacije štite od otvorenog prijenosa na mreži.
Za razliku od FTP-a, SFTP protokol, uprkos sličnim funkcijama, koristi drugačiji protokol za prijenos podataka, pa stoga standardni klijenti ne mogu komunicirati sa SFTP serverima.

Karakteristike FTP standarda

Ovaj standard je jedan od najstarijih mrežnih protokola koji je nastao prije 45 godina i danas se široko koristi na Internetu. Jedna od najvažnijih karakteristika protokola je korištenje nekoliko veza: jedne u svrhu prenošenja kontrolnih komandi, a druge za direktan prijenos datoteka. U tom slučaju možete otvoriti nekoliko paralelnih veza, od kojih svaka može prenositi podatke u oba smjera.
Postoje dva načina rada FTP-a, koji se razlikuju po načinu uspostavljanja veza: pasivni i aktivni. Tokom aktivnog režima, server uspostavlja vezu za prenos informacija do korisnika, a u pasivnom režimu, obrnuto.
Ovaj standard se koristi dugo vremena i na prvi pogled je izuzetno jednostavan. Ali ova jednostavnost može biti prilično zavaravajuća, budući da veliki broj korisnika može imati problema pri dobijanju pristupa prema ovom standardu, posebno ako server ili korisnik koristi firewall ili NAT.

Karakteristike aktivnog načina rada

Tokom aktivnog režima, klijent inicira kontrolnu vezu sa portom servera 21 prenosom naredbe "port", koja označava adresu i port za prenos informacija. Nakon primanja ove komande, server pokreće svoju vezu 20. porta sa navedenim korisničkim portom.
Glavni nedostatak ove metode je što korisnik mora imati namjensku IP adresu na Internetu za rad. Osim toga, neki problemi mogu nastati ako se klijent nalazi iza firewall-a ili NAT-a.

Funkcije pasivnog načina rada

Da bi uspostavio pasivnu vezu, korisnik mora poslati posebnu komandu "pasv" serveru. Kao odgovor na ovu komandu, server šalje informaciju o adresi i portu sa kojim klijent treba da uspostavi vezu. Nakon prijema ovih podataka, korisnik se povezuje na serverski računar i prenosi informacije.
Kada se koristi pasivni način rada, apsolutno sve veze inicira klijent, te stoga nema zahtjeva za to. Korisniku je dozvoljeno da koristi NAT i firewall, kao i da ne koristi namjensku IP adresu. Stoga se danas pasivni način rada koristi kao glavna vrsta pristupa i prijenosa datoteka putem FTP-a na Internetu.

Konfigurisanje kada se koristi zaštitni zid

Kada koriste zaštitni zid i aktivni način rada, korisnici mogu imati problema s pristupom. Ako je zaštitni zid konfiguriran da odbija dolazne veze koje nisu inicirane iznutra, serverski računar neće moći uspostaviti komunikaciju i započeti prijenos informacija. A zbog činjenice da port za informacije ima dinamičku raznolikost, postoje određene poteškoće tokom konfiguracije firewall-a. Najbolja opcija u ovom slučaju je da navedete opseg portova koji će se koristiti i organizovati posebno dozvoljeno pravilo zaštitnog zida za njih.
U slučaju korištenja pasivnog načina rada, serverski računar se izlaže riziku od sudara sa ovom složenošću. U ovom slučaju možete koristiti slično rješenje - navedite određeni raspon korištenih portova u opcijama i kreirajte posebno pravilo za ovaj raspon.

Konfigurisanje kada se koristi NAT

Za ispravno funkcionisanje FTP-a preko NAT-a i uspješan prijenos datoteka nije dovoljno samo podesiti prosljeđivanje radnih portova, jer će serverski računar koji radi ispod NAT-a prenositi internu adresu porta, a klijent jednostavno neće moći povezati i prenijeti informacije.
Neke moderne NAT implementacije mogu pratiti kontrolni kanal FTP veze i zamijeniti internu adresu vanjskom za normalan prijenos podataka. Osim toga, FTP serveri imaju mogućnost specificiranja eksternog porta koji bi se trebao pojaviti u kontrolnoj sesiji.
Najčešće, za normalan prijenos datoteka preko FTP-a preko NAT-a, prosljeđivanje 21. porta je dovoljno za implementaciju kontrolne sesije, kao i specificiranje i prosljeđivanje raspona dinamičkih adresa koje se koriste za prijenos podataka na Internetu.

FTP arhive su jedan od glavnih informacionih resursa na Internetu. U stvari, to je distribuirano skladište tekstova, programa, fotografija i drugih informacija pohranjenih u obliku fajlova na raznim kompjuterima širom svijeta.

Informacije u FTP arhivama uglavnom su podijeljene u tri kategorije:

  • Zaštićene informacije čiji način pristupa određuju njihovi vlasnici i dopuštaju ih posebnim ugovorom sa potrošačem. Ova vrsta resursa uključuje komercijalne arhive (na primjer, komercijalne verzije programa u arhivama ftp.microsoft.com), zatvoreni nacionalni i međunarodni nekomercijalni resursi (na primjer, radovi na međunarodnim projektima CES ili IAEA), privatne nekomercijalne informacije sa posebnim načinima pristupa (na primjer, privatne dobrotvorne fondacije).
  • Resursi informacija ograničene upotrebe, kao što su shareware programi. Ova klasa može uključivati ​​resurse ograničenog vremena upotrebe ili ograničenog vremena djelovanja.
  • Besplatni izvori informacija ili besplatni softver kada je u pitanju softver. Ovi resursi uključuju sve što se može slobodno nabaviti putem mreže bez posebne registracije. To može biti dokumentacija, programi ili nešto drugo. Treba napomenuti da besplatni softver nema certifikat kvaliteta, ali su njegovi programeri otvoreni za razmjenu iskustava.

Od navedenih resursa najzanimljivije su posljednje dvije kategorije, koje su po pravilu dizajnirane u obliku FTP-arhiva.

Parametri za evidentiranje informacija se odmah obrađuju na prvi pogled. Za svaki događaj koji se može zabilježiti, odlučujete hoće li biti zabilježen u datoteci, ekranu, oboje ili bilo gdje. Datoteka evidencije će biti kreirana u navedenom intervalu s novim imenom koje odgovara navedenoj maski.

Časopis se na zahtjev može poslati e-mailom. Poruka se može adresirati na više e-mail adresa. Okvir za dijalog u kojem postavljate bilježenje. Samo unesite putanju do tekstualne datoteke koja sadrži ove informacije. Možete odabrati drugačiji tekst za dolazne i druge za odlazne korisnike. Zanimljivo je postaviti zvučno upozorenje za korisnike. Nakon povezivanja, prekida veze, učitavanja i drugih događaja, korisnici mogu reproducirati zvučni fajl.

FTP tehnologija je razvijena kao dio ARPA projekta i dizajnirana je za razmjenu velikih količina informacija između mašina s različitim arhitekturama. Glavni fokus projekta bio je osigurati pouzdan prijenos, tako da se sa moderne tačke gledišta čini da je FTP preopterećen redundantnim, rijetko korištenim funkcijama. Srž tehnologije je FTP protokol.

Oni će se uporediti sa prečicama koje upućuju na datoteke ili fascikle koje se nalaze na drugom mestu na disku. Sve gore navedene funkcije kao što su ograničenja brzine, zvučna upozorenja, sigurnosne postavke kao i skriveni prikazi datoteka mogu se prilagoditi svakom korisniku bez obzira na opća podešavanja.

Kako biste nastavili raditi s administriranjem više korisnika, oni su dostupni u grupama. Možete promijeniti dozvole za folder, ali nema više dostupnih postavki. U prozoru "Veza" možete pogledati listu povezanih korisnika, koliko brzo server komunicira, koliko dugo su povezani i mnoge druge korisne brojeve. Po potrebi možete onemogućiti jedno po jedno dugme. Postoji takozvana crna lista i lista preuzetih datoteka.

FTP protokol.

FTP (File Transfer Protocol, ili "Protokol za prijenos podataka") je jedan od najstarijih protokola na Internetu i uključen je u njegove standarde. Prve FTP specifikacije datiraju iz 1971. godine. Od tada, FTP je prošao mnoge modifikacije i uvelike proširio svoje mogućnosti. FTP se može koristiti i u korisničkim programima i kao poseban uslužni program za operativni sistem.

Jedan od ponuđenih statističkih izvještaja. Prema komentarima kreatora, server je bez ikakvih problema sposoban podnijeti dnevna opterećenja reda veličine terabajta od stotina povezanih korisnika. Također morate dodati sve dozvole certifikata koje su korištene za kreiranje certifikata dodijeljenih serverima na koje ćete se povezivati.

Šifriranje može imati značajan utjecaj na performanse, ali se može izostaviti ako je veza za podatke. Ovo vam omogućava da prenesete manje važnih datoteka bez žrtvovanja performansi i štiti vaš sistem ne otkrivajući lozinke. Umjesto toga, server će se ponašati kao da je klijent poslao ove komande sa parametrima navedenim u nastavku.

FTP je dizajniran za rješavanje problema dijeljenja pristupa datotekama na udaljenim hostovima, direktnog ili indirektnog korištenja resursa udaljenih računara, obezbjeđenja nezavisnosti klijenta od fajl sistema udaljenih hostova, efikasnog i pouzdanog prenosa podataka.

FTP razmjena podataka se odvija preko TCP kanala. Razmjena je izgrađena na "klijent-server" tehnologiji. FTP se ne može koristiti za prijenos povjerljivih podataka, jer ne pruža zaštitu za prenijete informacije i prenosi čist tekst između servera i klijenta. FTP server može zahtijevati od FTP klijenta da se autentifikuje (to jest, prilikom povezivanja na FTP server, korisnik će morati da unese svoj ID i lozinku). Međutim, lozinka i korisnički ID će se prenijeti od klijenta do servera u čistom tekstu.

Prilikom naručivanja našeg backup sistema, "ovaj klijent dobija svoj privatni virtuelni server, sa kojim njegov računar stvara virtuelnu mrežu, tako da ima pristup servisima koji rade na ovom serveru." Sa ovim rješenjem možemo pokrenuti bilo koju aplikaciju koja podržava prijenos podataka - sve ovisi o softveru.Klijentu se dodjeljuje određeni prostor koji niko drugi nikada neće prihvatiti. Također možemo povećati količinu prostora u bilo kojem trenutku bez prekida.

Sistem predstavlja veoma visok nivo bezbednosti zbog svog principa rada. Zaštita od pristupa ili brisanja fajlova od strane neovlašćenih lica, zaštita od prisluškivanja tokom prenosa i zaštita od fizičkog oštećenja opreme.

FTP modeli rada.

Najjednostavniji model FTP protokola prikazan je na slici 1. U FTP-u vezu inicira interpretator korisničkog protokola. Centrala se kontroliše preko kontrolnog kanala u standardu TELNET protokola. FTP komande se generišu od strane tumača korisničkog protokola i šalju na server. Odgovori servera se također šalju korisniku putem kontrolnog kanala. Općenito, korisnik ima mogućnost uspostavljanja kontakta sa serverskim tumačem protokola i drugim sredstvima osim korisničkog tumača protokola.

Prije svega: klijent ima svoju mašinu, svoj operativni sistem na kojem ne radi, a čak ni korisnici nemaju pristup. Stoga, nema sumnje da će neovlaštena osoba vidjeti ili izbrisati rezervne datoteke. Drugo: klijentski računar, bez obzira na protokol za prenos podataka, "ulazi na server sa stražnjih vrata", a veza "na ulazna vrata" je šifrovana, što onemogućava presretanje paketa podataka tokom prenosa.

Što se tiče pitanja kao što su sigurnosne kopije, ne biste trebali riskirati. Ovdje predstavljamo način koji je nastao iz nužde. Koristi ga većina klijenata, ali prema svakom klijentu postupamo individualno, pažljivo pregledavajući backup sistem u smislu sigurnosti i softvera koji koriste.

FTP komande definiraju parametre kanala za prijenos podataka i sam proces prijenosa. Oni također određuju prirodu rada sa udaljenim i lokalnim sistemima datoteka.

Kontrolna sesija inicijalizira kanal podataka. Prilikom organiziranja kanala za prijenos podataka, slijed radnji se razlikuje od organizacije kontrolnog kanala. U tom slučaju server pokreće razmjenu podataka u skladu sa parametrima dogovorenim u sesiji upravljanja.

File Transfer Protocol je usluga koja omogućava korisnicima da prenose datoteke sa računara na Internetu, koji se zove udaljeni host, na lokalni računar. Server zatim traži od klijenta korisničko ime i lozinku. Ako je server javan, dozvoljava pristup korištenjem anonimnog korisničkog imena i adrese e-pošte kao lozinke. Ako je u slučaju kontrolnog kanala sve isto kao i u slučaju aplikacija koje se trenutno projektuju u seriji, koordinacija prijenosa na kanalu podataka je malo drugačija od onoga što smo do sada zatekli.

Kanal podataka je postavljen za isti host kao i kontrolni kanal preko kojeg se konfigurira kanal podataka. Kanal podataka može se koristiti i za prijem i za prijenos podataka.

Algoritam FTP protokola je sljedeći:

  1. FTP server koristi TCP port 21 kao svoju kontrolnu vezu, koji uvijek čeka vezu od FTP korisnika.
  2. Nakon što se uspostavi kontrolna veza između modula tumača korisničkog protokola i modula tumača serverskog protokola, korisnik (klijent) može slati komande serveru. FTP komande određuju parametre veze za prijenos podataka: ulogu sudionika veze (aktivan ili pasivan), port veze (i za modul "Program prijenosa korisničkih podataka" i za modul "Program za prijenos podataka servera"), prijenos tip, tip prenesenih podataka, struktura podataka i kontrolne direktive koje ukazuju na radnje koje korisnik želi izvršiti (na primjer, spremanje, čitanje, dodavanje ili brisanje podataka ili datoteke i druge).
  3. Nakon što su svi parametri kanala za prenos podataka dogovoreni, jedan od učesnika u vezi, koja je pasivna (npr. "Program za prenos podataka korisnika"), prelazi u režim čekanja za otvaranje veze na navedeni port. za prenos podataka. Aktivni modul (npr. "Program za prijenos podataka servera") tada otvara vezu i počinje prijenos podataka.
  4. Nakon što se prijenos završi, veza između poslužiteljskog alata za prijenos i alata za prijenos korisnika je zatvorena, ali kontrolna veza između tumača serverskog protokola i tumača korisničkog protokola ostaje otvorena. Korisnik, bez zatvaranja FTP sesije, može ponovo otvoriti kanal za prijenos podataka.

Moguće je da se podaci mogu prenijeti na treću mašinu. U ovom slučaju korisnik organizira kontrolni kanal sa dva servera i direktnim kanalom podataka između njih. Kontrolne komande prolaze kroz korisnika, a podaci idu direktno između servera. Kontrolni kanal mora biti otvoren prilikom prijenosa podataka između strojeva. U suprotnom, ako se zatvori, prijenos podataka se prekida. Veza sa dva servera prikazana je na slici 2.

Ovaj signal sa servera dolazi izdavanjem zahtjeva za povezivanje portu na kojem klijent sluša. Ista kategorija uključuje komande koje nam omogućavaju da promijenimo trenutni direktorij. Korisnici će se normalno kretati strukturom direktorija kako bi pronašli datoteku koju žele. Ova naredba zahtijeva argument koji predstavlja putanju do ovog direktorija.

Naredbe za specificiranje parametara prijenosa omogućavaju korisnicima da specificiraju tipove datoteka, formate i strukture datoteka i načine prijenosa. Svi parametri procesa prijenosa podataka imaju zadane vrijednosti. Drugim riječima, ove naredbe će se koristiti samo ako klijent želi promijeniti vrijednost određenog parametra. Narudžbe se mogu slati bilo kojim redoslijedom.

Algoritam rada pri povezivanju dva FTP servera, od kojih se nijedan ne nalazi na korisničkom lokalnom hostu:

  1. Modul User Protocol Interpreter je dao instrukcije serverskom modulu Server Protocol Interpreter 1 da radi u pasivnom režimu, nakon čega je modul Server Protocol Interpreter 1 poslao korisniku adresu i broj porta (N) koje će slušati.
  2. Modul tumača korisničkog protokola dodijelio je modul tumača 2 protokola servera 2 kao aktivnog sudionika u vezi i naložio mu da prenese podatke do hosta tumača protokola servera 1 na portu (N).
  3. "Tumač korisničkih protokola" je "Tumači protokola servera 1" dao naredbu "da sačuva primljene podatke u taj i takav fajl", a "Tumač serverskog protokola 2" - "da prenese sadržaj tog i tog fajla" .
  4. Tok podataka se formira između modula Server Protocol Interpreter 1 i Server 2 Protocol Interpreter, koji je kontroliran od strane klijenta.
Ispod je dijagram organizacije prijenosa podataka između dva FTP servera, što odgovara slici 2. Ovdje se koriste sljedeće oznake: User PI - interpreter korisničkog protokola; Server1 (2) tumač protokola server1 (server2).
Korisnik PI (U) S Server1 (S1) Korisnik PI (U) S Server2 (S2)
U Yu S1: Connect

Koje komande koristi FTP protokol?

Ovom naredbom klijent obavještava server na kojem se port pokušava povezati. Klijent mora "podijeliti" ove adrese na 8-bitne bite i prenijeti svaku vrijednost jedna drugoj, pri čemu su vrijednosti odvojene jedna od druge zarezom. Tipovi datoteka i kontrolni formati su simbolizirani simbolom.

Kao odgovor na nalog u ovoj kategoriji, server odgovara prijenosom podataka. Ako datoteka koju treba prenijeti postoji na sistemu na kojem server radi, bit će prepisana. Kada se korisnik kreće kroz strukturu direktorija na udaljenom sistemu, potrebne su mu informacije o sadržaju tih direktorija. Ova naredba uzrokuje da server prenese listu datoteka i poddirektorija sadržanih u trenutnom direktoriju. Ako argument naredbe predstavlja određenu putanju, server će poslati listu postojećih datoteka u taj direktorij.

U b S1: 227 Ulazak u pasivni mod.

A1, A2, A3, A4, a1, a2

U Yu S2 Connect

U Yu S2: PORT A1, A2, A3, A4, a1, a2

U b S2: 200 U redu
U Yu S1: STOR ... U Yu S2: RETR ...

S1 Yu S2: Poveži ...

FTP prijenos podataka zasniva se na mehanizmu uspostavljanja veze između odgovarajućih portova i odabiru parametara prijenosa. Svaki FTP učesnik mora podržavati podrazumevani port za podatke. Prema zadanim postavkama, korisnički komunikacijski uslužni program koristi isti port kao i za slanje naredbi (označite ga sa "U"), a poslužiteljski komunikacioni program koristi port L-1, gdje je L kontrolni port. Međutim, učesnici u vezi koriste portove za prijenos podataka koje je za njih izabrao "Tumač korisničkih protokola", jer zbog kontrolnih procesa koji učestvuju u vezi, samo "Tumač korisničkih protokola" može promijeniti portove za prijenos podataka oba " Program za prijenos podataka korisnika" i "Programi za prijenos podataka servera".

Opciona podešavanja programa

Moguće je da će promjenom direktorija na udaljenom sistemu korisnik pogledati ime trenutnog direktorija. U osnovi, ova naredba omogućava korisniku da napusti operaciju prijenosa prije nego što se završi. Drugim riječima, recimo da je narudžbu poslao kupac. Nakon što dobije odgovor od servera, klijent može nastaviti sa radom. U ovom dijelu članka ćemo pogledati kako tumačiti odgovore servera, odgovore koji se nazivaju odgovori.

Svaka cifra koda ima posebno značenje. Na primjer, u slučaju kada je prva cifra koda replike 2, to znači da je server bio u mogućnosti da izvrši naredbu. Isto tako, ako je prva cifra 5, to znači da server ne prihvaća naredbu koju je server poslao i stoga nije pokrenuta nikakva akcija. Sada, bez obzira na značenje prve cifre koda, ako je druga cifra 2, ovi odgovori se odnose na kanal podataka ili kontrolni kanal. Ako je druga znamenka 0, tada su odgovarajući odgovori za sintaksičke greške.

Pasivna strana veze mora, prije nego što se da naredba "pokreni prijenos", "slušati" svoj port za prijenos podataka. Aktivna strana koja daje naredbu za početak prijenosa podataka određuje smjer kretanja podataka.

Kada se veza uspostavi, počinje prijenos između programa prijenosa servera i programa prijenosa korisnika. Istovremeno, obavještenja o prijemu podataka se prenose putem kanala "Server Protocol Interpreter" - "User Protocol Interpreter". FTP zahtijeva da kontrolna veza bude otvorena dok se podatkovna veza prenosi. FTP sesija se smatra zatvorenom tek nakon što je kontrolna veza zatvorena.

U tabeli 1. češće dajemo značenje korištenih odgovora. Osim toga, također ćemo raditi na stvaranju resursa koji će zadovoljiti potrebe naše aplikacije. Ako smo u prošlom broju časopisa gledali samo pokretanje kontrolnog kanala, sada ćemo vidjeti kako kreirati i koordinirati kanal podataka. Kao programski resursi, imaćemo dijaloški okvir za dohvaćanje korisničkih podataka, trosmjerni meni i ikonu aplikacije. Sa korisničke tačke gledišta, aplikacija se više smatra demo.

Ako sve prođe kako treba, na ekranu će se pojaviti poruka sa servera da je spreman za primanje naloga od klijenta. Otvorite kontrolni kanal. Vraćajući se na prezentaciju programa sa stanovišta programera, razmotrićemo neke od funkcija upravljanja kanalima. Upotreba jedne ili druge funkcije zasniva se na tome da li korisnik unese ime sistema ili decimalni zarez. Zatim kreiramo adresu utičnice, dovršavajući kosine strukture. Konačno, spojite utičnicu na poznati port na udaljenom sistemu koristeći funkciju povezivanja.

Obično je FTP server odgovoran za otvaranje i zatvaranje kanala podataka. FTP server mora sam zatvoriti kanal za prijenos podataka u sljedećim slučajevima:

  1. Server je završio prijenos podataka u formatu koji zahtijeva da se veza zatvori.
  2. Server je primio naredbu "prekini vezu" od korisnika.
  3. Korisnik je promijenio parametre porta podataka.
  4. Kontrolna veza je zatvorena.
  5. Došlo je do grešaka koje sprečavaju nastavak prenosa podataka.

Protocol Commands .

Kontrolne naredbe za kontrolu prijenosa podataka koje se razmjenjuju između tumača serverskog protokola i tumača korisničkog protokola mogu se podijeliti u tri velike grupe:

  • Sistemske komande za kontrolu pristupa.
  • Komande kontrole toka podataka.
  • Komande FTP servisa.

Razmotrimo nekoliko najtipičnijih timova iz svake grupe. Među naredbama za kontrolu pristupa sistemu treba istaći sljedeće:

KORISNIK. Obično ova komanda otvara FTP sesiju između klijenta i servera. Argument naredbe je ime (identifikator) korisnika za rad sa datotečnim sistemom. Ova naredba se može izdati ne samo na početku, već i na sredini sesije, ako, na primjer, korisnik želi promijeniti identifikator u čije ime će se radnje izvršiti. U ovom slučaju, sve varijable povezane sa starim identifikatorom se oslobađaju. Ako se podaci razmjenjuju dok se identifikator mijenja, razmjena se završava sa starim identifikatorom korisnika.

PASS. Ova naredba se izdaje nakon unosa korisničkog ID-a i kao argument sadrži korisničku lozinku. Podsjećamo, FTP autentifikacijski podaci se prenose preko mreže u čistom tekstu, stoga, kako bi se osigurala sigurnost kanala, korisnik treba poduzeti dodatne mjere.

CWD. Komanda omogućava korisnicima da rade sa različitim direktorijumima na udaljenom sistemu datoteka. Argument naredbe je niz koji specificira putanju direktorija na udaljenom sistemu datoteka u kojem korisnik želi raditi.

REIN. Komanda za ponovnu inicijalizaciju. Ova komanda briše sve varijable trenutnog korisnika, resetuje parametre veze. Ako u trenutku naredbe dođe do prijenosa podataka, prijenos se nastavlja i završava s istim parametrima.

QUIT. Komanda zatvara kontrolni kanal. Ako u trenutku slanja komande dođe do prenosa podataka, kanal se zatvara nakon završetka prenosa podataka.

Komande upravljanja protokom postavljaju parametre prijenosa podataka. Svi parametri opisani ovim naredbama imaju zadanu vrijednost, tako da se naredbe kontrole toka koriste samo kada trebate promijeniti vrijednost zadanih parametara prijenosa. Komande kontrole toka mogu se izdati bilo kojim redoslijedom, ali sve moraju prethoditi naredbama FTP usluge. Od komandi kontrole protoka podataka treba razlikovati sljedeće:

PORT. Naredba dodjeljuje adresu i port hosta koji će se koristiti kao aktivni član veze podatkovne veze. Argumenti naredbe su 32-bitna IP adresa i 16-bitni broj porta za povezivanje. Ove vrijednosti su podijeljene u šest 8-bitnih polja i predstavljene su u decimalnom obliku: h1, h2, h3, h4, p1, p2, gdje je hN adresni bajtovi (od visokog do niskog) i pN je bajtovi porta (visoki prema niži).

PASV. Ova naredba se šalje modulu, koji će igrati pasivnu ulogu u prijenosu podataka („slušanje“ veze). Odgovor na ovu naredbu mora biti niz koji sadrži adresu i port hosta koji su u modu čekanja za povezivanje u formatu PORT komande - "h1, h2, h3, h4, p1, p2".

Komande TYPE, STRU, MODE određuju, respektivno, tip podataka koji se prenose (ASCII, Slika i drugi), strukturu ili format prenosa podataka (File, Record, Page), način prenosa (Stream, Block i drugi). Upotreba ovih komandi je veoma važna kada se gradi interoperabilnost u heterogenim okruženjima i veoma različitim operativnim i fajl sistemima interakcionih hostova.

Naredbe FTP usluge određuju radnje koje će se izvršiti na navedenim datotekama. Obično je argument komandi u ovoj grupi putanja do datoteke. Sintaksa za specificiranu stazu mora zadovoljiti zahtjeve formata za sistem datoteka rukovaoca naredbama. Od naredbi FTP servisa mogu se razlikovati sljedeće:

RETR. Ova naredba daje instrukcije modulu Server Communications Utility da pošalje kopiju datoteke specificirane parametrom naredbe u komunikacijski modul na drugom kraju veze.

STOR. Naredba nalaže modulu "Server Data Transfer Program" da prima podatke putem kanala za prijenos podataka i pohranjuje ih kao datoteku, čiji naziv je specificiran parametrom ove naredbe. Ako takav fajl već postoji, biće zamenjen novim, ako ne, kreiraće se novi.

RNFR i RNTO timovi moraju pratiti jedan za drugim. Prva komanda sadrži staro ime datoteke kao argument, druga novo. Uzastopna primjena ovih naredbi preimenuje datoteku.

ABOR. Komanda daje instrukcije serveru da prekine izvršenje prethodne naredbe usluge (na primjer, prijenos datoteke) i zatvori kanal za prijenos podataka.

Komanda DELE briše navedenu datoteku.

MKD i RMD naredbe, respektivno, kreiraju i brišu direktorij naveden u argumentu.

Naredbe LIST i NLST navode datoteke u specificiranom direktoriju.

Sve naredbe FTP protokola šalju se od strane "User Protocol Interpreter" u običnom tekstu - jedna naredba po redu. Svaka komandna linija - identifikator i argumenti - završavaju znakovima. Ime naredbe je odvojeno od argumenta razmakom -.

Rukovalac komandom vraća trocifreni kod za svaku komandu. Obrada kodova formira određenu hijerarhijsku strukturu i, po pravilu, određena komanda može vratiti samo određeni skup kodova. Nakon koda za obradu naredbe slijedi razmak - nakon čega slijedi tekst objašnjenja. Na primjer, linija za uspješan završetak operacije izgleda ovako: "200 Command u redu".

Ispod je primjer rada sa FTP protokolom. Legenda: S - server, U - korisnik.

S: 220 Servis spreman za novog korisnika
U: KORISNIK Gluk
> S: 331 Korisničko ime u redu, potrebna je lozinka
U: PROLAŽI mrmljanje
S: 230 Korisnik prijavljen, nastavite
U: RETR test.txt
S: 150 Status datoteke u redu; o otvaranju podatkovne veze

S: 226 Zatvaranje podatkovne veze, prijenos datoteke uspješan
U: TIP I
S: 200 Naredba u redu
U: STOR /home/images/first.my
S: 550 Pristup odbijen
U: ODUSTAJ

TFTP i SFTP protokoli.

FTP protokol ima dva "mala brata": SFTP - Jednostavan FTP i TFTP - Trivijalni FTP.

TFTP je najjednostavniji protokol za prijenos datoteka. Radi na vrhu UDP transportnog protokola i pruža samo najosnovnije operacije prijenosa datoteka, naime pisanje i čitanje datoteka. TFTP je dizajniran da bude jednostavan i lak za korištenje protokol. Ne dozvoljava popis direktorija i nema nikakvu autentifikaciju, ali može prenositi 8-bitne informacije prema svim Internet standardima.

Pošto se prenos podataka vrši preko UDP-a, TFTP protokol implementira sopstvene metode pouzdane isporuke podataka - pakete potvrde, numerisanje blokova podataka i paketa potvrde, itd. Sve je vrlo slično pojednostavljenoj verziji emulacije TCP protokola.

TFTP radi sa samo pet naredbi:

  1. Zahtjev za čitanje (RRQ) - zahtjev za čitanje.
  2. Zahtjev za pisanje (WRQ) - zahtjev za pisanje.
  3. Podaci (DATA) - paket podataka.
  4. Acknowledgment (ACK) - potvrda.
  5. Greška (ERROR) - greška.

Proces prijenosa podataka počinje zahtjevom od TFTP klijenta do servera za čitanje ili pisanje datoteke. Veza se uspostavlja nakon dobijanja potvrde o spremnosti za jedan od zahtjeva, bilo za pisanje ili za čitanje.

Prilikom otvaranja veze, svaka od strana bira (nasumično) jedinstveni identifikator - TID, koji se koristi i UDP kao port veze. Svaki proslijeđeni paket je povezan s dva TID-a koji odgovaraju svakoj strani veze. Početni zahtjev šalje inicijator TF TP veze na UDP port 69 (port za inicijalizaciju), koji specificira port veze. Dalja razmjena se već odvija preko portova koje su odabrali učesnici u prijenosu podataka.

Ako server dozvoli zahtjev, otvara se razmjena i prenosi se navedeni fajl (u blokovima od 512 bajtova). Svaki paket prenesenih podataka sadrži jedan blok (512 bajtova) i broj bloka u prenesenom toku. Dolazak svakog bloka do odredišnog hosta mora biti potvrđen ACK (potvrda) paketom, sa brojem primljenog bloka. Tek nakon prijema paketa potvrde biće poslan sljedeći paket podataka.

Ako je dužina paketa manja od 512 bajtova, to služi kao signal za zatvaranje komunikacijskog kanala. Ako se paket izgubi tokom prenosa, nakon određenog vremenskog perioda server će ponovo poslati ovaj paket podataka.

Postoje tri vrste situacija koje uzrokuju slanje loših paketa:

  1. Nepotvrđeni zahtjev, na primjer, datoteka nije pronađena, nema prava pristupa itd.
  2. Nevažeći format paketa, na primjer, došlo je do greške pri prebacivanju.
  3. Gubitak pristupa potrebnom resursu.

Uz veliki broj poruka o grešci, veza se može prekinuti na inicijativu jedne od strana.

Shema TFTP transakcije je sljedeća:

  1. Host A šalje WRQ zahtjev hostu B. Izvorni port je TIDA, odredišni port je 69. Paket sadrži ime datoteke, tip prijenosa.
  2. Host B šalje ACK (broj bloka - 0) hostu A. Izvorni port je TIDB, odredišni port je TIDA.
  3. Host A šalje (preko veze TIDA do TIDB) naredbu DATA i blok podataka. Paket također sadrži broj bloka.

SFTP protokol za prijenos datoteka popularan je u slučajevima kada korisniku treba malo fleksibilniji i pouzdaniji protokol od TFTP-a, a ne tako složen i glomazan kao FTP.

SFTP podržava mehanizme provjere autentičnosti korisnika, prijenos datoteka, pretraživanje direktorija, promjenu trenutnog direktorija, preimenovanje i brisanje datoteka. Za većinu operacija koje korisnik obavlja sa udaljenim FTP serverom, ova usluga je dovoljna. SFTP može prenijeti 8-bitni tok podataka i koristi, poput TFTP-a, samo jedan kanal veze - i za komande i za podatke. Za razliku od TFTP-a, SFTP radi na vrhu TCP-a, port 115.

SFTP komande se šalju jedna po jedna nakon primanja odgovora obrade od prethodne naredbe. Sve naredbe se sastoje od četiri ASCII znaka i znaka za razmak, koji odvaja naredbu od argumenata. Odgovor servera se sastoji od koda odgovora i. Svaka komanda i odgovor moraju završiti znakom ("\ 0" je isto kao završetak reda u C). SFTP koristi samo 11 osnovnih naredbi i samo 4 koda odgovora za kontrolu prijenosa podataka (simboli: "+" - uspješan, "-" - greške, "!" - pažnja, "" - ostalo).

SFTP komande imaju skoro istu sintaksu i svrhu kao i slične FTP komande.

U sljedećem SFTP scenariju, SFTP server - "MIT-XX" čeka na vezu. Korisnik "MKL" (lozinka "foo") povezan na SFTP server, zatražio je listu datoteka standardnog formata iz direktorija "PS" naredbom "LIST F PS:", a zatim je zatražio listu datoteka u proširenom formatu od isti direktorij s naredbom "LIST V PS: ". Zatim je korisnik napravio zahtjev za datoteku pod nazivom "Small.File" - naredba "RETR SMALL.FILE". Kao odgovor, server je vratio svoju veličinu - 69 i pripremio je za slanje. Nakon toga, korisnik je pročitao datoteku naredbom SEND. Komanda DONE je zatvorila vezu.

Legenda: S - SFTP server, U - SFTP korisnik.

S: + MIT-XX SFTP usluga
U: KORISNIK MKL
S: + MKL ok, pošalji lozinku
U: PASS foo
S:! MKL se prijavio
U: LISTA F PS:
S: + PS:
Small.File
U: LISTA V PS:
S: + PS:
Small.File 1 69 (7) P775240 2.8.94. 20:08 MKL
U: RETR SMALL.FILE
S: 69
U: POŠALJI
S: Ovo je mali fajl, fajl se šalje bez završne nule.
U: URAĐENO
S: + MIT-XX zatvaranje veze

Kao što možete vidjeti iz prikazanog scenarija, SFTP je jednostavan protokol izgrađen prema trivijalnoj shemi "zahtjev-odgovor" s minimalnim skupom naredbi koji vam omogućava da izvršite sve potrebne operacije za kontrolu prijenosa i postavljanja podataka na disk. .

SFTP je prilično zadovoljavajući za rad sa jednim korisnikom i jednim serverom i jednostavan je za korištenje i programiranje.

FTP uslužni program.

Obični korisnik više poznaje kombinaciju FTP kao ime uslužnog programa koji vam omogućava razmjenu datoteka između FTP servera i klijentskih računala. Neki od uslužnih programa koriste uslugu komandne linije, neki imaju grafičko sučelje, ali, po pravilu, svi podržavaju standard FTP protokola i definiraju osnovni skup naredbi koje treba da podržavaju sve implementacije FTP servisa.

FTP uslužni program pruža korisniku ljusku sa interfejsom komandne linije. U zavisnosti od implementacije i verzije FTP programa, može podržati određene funkcije rada sa udaljenim sistemom datoteka. FTP uslužne komande su obično izgrađene na principu rada sa lokalnim sistemom datoteka i veoma se razlikuju od FTP komandi.

U suštini, FTP uslužni program je tumač komandi ljuske u FTP komande (i sekvence). Slanje naredbi za FTP vezu, analiza odgovora FTP servera, otvaranje kanala za prijenos podataka, proces prijenosa podataka - sve se to dešava unutar FTP modula. Korisnik je obaviješten o svim događajima prijenosa naredbi i podataka u skladu sa interpretacijom ovih događaja od strane FTP uslužnog programa.

Kao primjer, ovdje je skripta za prijenos tekstualne datoteke sa FTP servera na lokalni host.

C: \> ftp
ftp> otvori ftp.sun.com
220-Dobro došli u Sun Microsystems Corporate FTP server.
220-
220-ftp FTP server (ftpd sre, 30. oktobar 23:31:06 PST 1996) spreman.
Korisnik (ftp.sun.com: (nema)): ftp
331 Prijava gostiju ok, pošaljite svoju kompletnu e-mail adresu kao lozinku.
Lozinka:
230 Prijava gostiju u redu, primjenjuju se ograničenja pristupa.
ftp> dir
200 PORT komanda uspješna.
150 Otvaranje podatkovne veze u ASCII modu za / bin / ls.
ukupno 34
dr-xr-xr-x 8 root 0 512 14. februar 1997.
d - x - x - x 3 root korisnika 512 31. oktobra 1996. itd
drwxrwx-wt 3 root 42 5120 21. novembar 10:37 dolazni
drwxrwxr-x 12 root 42 4096 Nov 19 23:26 pub
dr-xr-xr-x 4 root korisnika 512 7. lipnja 1996. usr
-rw-r - r-- 1 root korisnik 49, 27. septembar 1996. welcome.msg
226 Transfer je završen.
624 bajta primljeno za 19,66 sekundi (0,03 kbajta/sek)
ftp> get welcome.msg primer.txt
200 PORT komanda uspješna.
150 Otvaranje podatkovne veze ASCII moda za welcome.msg (49 bajtova).
226 Transfer je završen.
50 bajtova primljeno za 2,73 sekunde (0,02 kbajta/sek)
ftp> quit
221 Zbogom.

Sintaksa naredbe:

ftp [-v] [-d] [-n]

  • v - potiskuje odgovore servera i statistiku prijenosa podataka;
  • n - kontrolira način identifikacije korisnika. Ako je ovaj prekidač specificiran, prvo se provjerava .netrc datoteka;
  • i - onemogućava potvrdu prijenosa datoteka prilikom masovnog kopiranja datoteka;
  • d - uključuje mod za otklanjanje grešaka;
  • g - isključuje transparentnost prolaznih imena.

Važne komande su komande za prijem/prenos podataka get, put, mget, mput i bin. Get i put komande su dizajnirane za slanje, odnosno primanje jedne datoteke. Naredbe mget i mput rade isto kao i prethodne, ali za grupu datoteka. Komanda bin omogućava prijenos podataka u binarnom načinu, što je važno za prijenos programa i arhiva, osim toga, ovaj način je koristan za znakovne podatke sa proizvoljnom dužinom reda (ASCII ograničava dužinu reda na 254 znaka). Još jedna korisna komanda je hash komanda. Red: "ftp> hash #" kada radite sa sporim linijama ili prenosite velike datoteke, omogućava vam da vidite napredak prijenosa podataka (znak # se izdaje nakon svakog prijenosa bloka, umjesto # možete staviti drugi simbol).

Dizajniran za prijenos datoteka preko TCP mreža (na primjer, Internet). Koristi port 21. FTP se često koristi za preuzimanje web stranica i drugih dokumenata sa privatnog razvojnog uređaja na otvorene hosting servere.

Protokol je izgrađen na klijent-server arhitekturi i koristi različite mrežne veze za prijenos naredbi i podataka između klijenta i servera. Korisnici FTP-a mogu se autentifikovati prenošenjem svog korisničkog imena i lozinke u čistom tekstu, ili, ako je dozvoljeno na serveru, mogu se povezati anonimno. Možete koristiti SSH protokol za siguran prijenos koji skriva (šifruje) korisničko ime i lozinku i šifrira sadržaj.

Prve FTP klijentske aplikacije bile su interaktivni alati komandne linije koji su implementirali standardne komande i sintaksu. Grafički korisnički interfejsi su od tada razvijeni za mnoge operativne sisteme koji se i danas koriste. Ova sučelja uključuju opšte programe za web dizajn kao što je Microsoft Expression Web i specijalizovane FTP klijente (kao što je FileZilla).

FTP je jedan od najstarijih aplikativnih protokola, koji datira mnogo prije HTTP-a, pa čak i prije TCP/IP-a, 1971. godine. U početku je radio na vrhu NCP protokola. I danas se široko koristi za distribuciju softvera i pristup udaljenim hostovima.

Opis protokola

Razlika od HTTP-a

Nekretnina FTP HTTP
Na osnovu radnih sesija Da Ne
Ugrađena autentifikacija korisnika Da Ne
Uglavnom dizajniran za prijenos Velike binarne datoteke Mali tekstualni fajlovi
Model veze Dvostruka veza Jedna veza
Uglavnom prilagođen za prijem/prenos Prijem i prijenos Prijem
Podržava tekstualne i binarne načine prijenosa Da Ne
Podržava određivanje tipova prenesenih podataka (MIME zaglavlja) Ne Da
Podržava operacije sistema datoteka (mkdir, rm, preimenuj, itd.) Da Ne

Prilično upečatljiva karakteristika FTP protokola je da koristi višestruke (barem dvostruke) veze. U ovom slučaju, jedan kanal je kontrolni, preko kojeg se primaju komande serveru i vraćaju njegovi odgovori (obično preko TCP porta 21), a kroz ostatak se odvija stvarni prenos podataka, po jedan kanal za svaki prenos. Stoga je u okviru jedne sesije putem FTP protokola moguć prijenos više datoteka istovremeno, i to u oba smjera. Za svaki kanal podataka otvara se vlastiti TCP port, čiji broj bira server ili klijent, ovisno o načinu prijenosa.

FTP (poput HTTP) ima binarni način prijenosa, koji smanjuje prometne troškove i smanjuje vrijeme komunikacije prilikom prijenosa velikih datoteka.

Počevši sa radom preko FTP-a, klijent ulazi u sesiju i sve operacije se izvode unutar te sesije (drugim rečima, server pamti trenutno stanje). HTTP protokol ne "pamti" ništa - njegov zadatak je dati podatke i zaboraviti, stoga se pohranjivanje stanja kada se koristi HTTP vrši metodama izvan protokola.

Povezivanje i prijenos podataka

Podrška za web pretraživač

Sintaksa

Sintaksa za FTP URL-ove je opisana u RFC1738, u obliku: ftp: // [[:] @] [:] / (parametri u uglastim zagradama su opcioni). Na primjer:

Više detalja o određivanju korisničkog imena i lozinke napisano je u dokumentaciji pretraživača. Podrazumevano, većina web pretraživača koristi pasivni (PASV) način rada, koji bolje zaobilazi firewall krajnjih korisnika.

Sigurnost

FTP nije dizajniran kao siguran (posebno prema današnjim standardima) protokol i ima brojne sigurnosne propuste. U maju 1999. godine, autori RFC 2577 sumirali su ranjivosti u sljedeću listu problema:

  • Napadi odbijanja
  • Lažni napadi
  • Napadi grube sile
  • Hvatanje paketa, njuškanje
  • Zaštita korisničkog imena
  • Krađa luka

FTP ne može šifrirati svoj promet, svi prijenosi su čisti tekst, tako da korisnička imena, lozinke, komande i podatke može pročitati svako ko može presresti paket preko mreže. Ovaj problem je uobičajen u mnogim specifikacijama Internet protokola (uključujući SMTP, Telnet, POP, IMAP) koje su razvijene prije stvaranja mehanizama za šifriranje kao što su TLS i SSL. Uobičajeno rješenje za ovaj problem je korištenje "sigurnih", TLS zaštićenih verzija ranjivih protokola (FTPS za FTP, TelnetS za Telnet, itd.) ili drugog sigurnijeg protokola kao što je SFTP / SCP koji ima većinu implementacija Secure Shell protokola ...

Secure FTP

Postoji nekoliko metoda sigurnog prijenosa datoteka, koje se u jednom ili drugom trenutku nazivaju "Bezbedan FTP".

FTPS

Eksplicitni FTPS je proširenje FTP standarda koje omogućava klijentima da zatraže da se FTP sesija šifrira. Ovo se postiže slanjem naredbe "AUTH TLS". Server ima mogućnost da dozvoli ili odbije veze koje ne zahtevaju TLS. Ovo proširenje protokola je definirano u RFC 4217. Implicitni FTPS je naslijeđeni FTP standard koji zahtijeva korištenje SSL ili TLS veze. Ovaj standard je trebao koristiti portove različite od normalnog FTP-a.

SFTP

SFTP, ili "SSH File Transfer Protocol", nije povezan sa FTP-om, osim što takođe prenosi datoteke i ima sličan skup komandi za korisnike. SFTP, ili siguran FTP, je program koji koristi SSH (Secure Shell) za prijenos datoteka. Za razliku od standardnog FTP-a, on šifrira i komande i podatke, sprječavajući prijenos lozinki i povjerljivih informacija preko mreže. SFTP je po funkcionalnosti sličan FTP-u, ali pošto koristi drugačiji protokol, standardni FTP klijenti ne mogu komunicirati sa SFTP serverom i obrnuto.

FTP preko SSH (ne SFTP)

FTP preko SSH (ne SFTP) odnosi se na praksu tuneliranja redovne FTP sesije preko SSH veze. Budući da FTP koristi više TCP veza, tuneliranje preko SSH-a je posebno teško. Kada mnogi SSH klijenti pokušaju tunelirati kontrolni kanal (originalna "klijent-server" veza na portu 21), samo će taj kanal biti zaštićen; Prilikom prijenosa podataka, FTP softver na oba kraja će uspostaviti nove TCP veze (cijeve podataka) koje zaobilaze SSH vezu i tako gube intrinzičnu sigurnost.

Inače, SSH klijentskom softveru je potrebno određeno znanje o FTP-u da bi pratio i prepisivao poruke toka kontrole FTP-a i autonomno otvarao nova preusmjeravanja za FTP tok podataka. Softverski paketi koji podržavaju ovaj način rada:

  • Tectia ConnectSecure (Win / Linux / Unix)
  • Tectia Server za IBM z/OS iz SSH Communications Security Suite
  • (pod GPL licencom)

FTP preko SSH-a se ponekad naziva siguran FTP; ali nemojte ga brkati s drugim metodama kao što su SSL / TLS (FTPS). Druge metode prijenosa datoteka pomoću SSH-a i nisu povezane sa FTP-om - SFTP i SCP; u svakom od njih, i vjerodajnice i podaci o fajlu uvijek su zaštićeni SSH protokolom.

Priča

Prva implementacija protokola (1971) predviđala je razmjenu poruka između klijenta i servera, koja se sastojala od zaglavlja (72 bita) i podataka promjenjive dužine. Zaglavlje poruke uključivalo je zahtjev ili odgovor od FTP servera, vrstu i dužinu prenesenih podataka. Parametri zahtjeva (na primjer, putanja i naziv datoteke), informacije sa servera (na primjer, lista datoteka u direktoriju) i sami fajlovi su proslijeđeni kao podaci. Dakle, komande i podaci su se prenosili istim kanalom.

1972. godine protokol je potpuno izmijenjen i poprimio je oblik blizak modernom. Komande sa parametrima iz odgovora klijenta i servera se prenose preko TELNET-veze (kontrolni kanal), za prenos podataka se kreira posebna veza (kanal podataka).

U narednim izdanjima dodata je mogućnost rada u pasivnom režimu, prenos datoteka između FTP servera, uvedene su komande za dobijanje informacija, promena trenutnog direktorijuma, kreiranje i brisanje direktorijuma, čuvanje fajlova pod jedinstvenim imenom. Komande za prenos e-pošte preko FTP-a postojale su neko vreme, ali su kasnije uklonjene iz protokola.

1980. godine, FTP protokol je počeo da koristi TCP. Posljednja revizija protokola objavljena je 1985. Godine 1997. pojavio se dodatak protokolu koji omogućava šifriranje i potpisivanje informacija u kontrolnom kanalu i kanalu podataka. Godine 1999. objavljen je dodatak internacionalizaciji protokola koji preporučuje korištenje UTF-8 kodiranja za serverske komande i odgovore, i definira novu LANG naredbu koja postavlja jezik odgovora.

Osnovne komande

  • ABOR - Prekini prijenos datoteke
  • CDUP - Promjena direktorija uzvodno.
  • CWD - Promjena imenika.
  • DELE - Brisanje datoteke (DELE ime datoteke).
  • EPSV - Uđite u napredni pasivni način rada. Koristi se umjesto PASV.
  • POMOĆ - Prikazuje listu naredbi koje server prihvata.
  • LIST - Vraća listu datoteka u direktoriju. Lista se prenosi preko podatkovne veze.
  • MDTM - Vraća vrijeme izmjene datoteke.
  • MKD - Kreirajte direktorij.
  • NLST - Vraća listu datoteka direktorija u sažetijem formatu nego LIST. Lista se prenosi preko podatkovne veze.
  • NOOP - Prazan rad.
  • PASS - Lozinka.
  • PASV - Ulazak u pasivni način rada. Server će vratiti adresu i port na koji se morate povezati da biste preuzeli podatke. Prijenos će početi kada unesete sljedeće komande: RETR, LIST, itd.
  • PORT - Ulazak u aktivni mod. Na primjer PORT 12,34,45,56,78,89. Za razliku od pasivnog režima, za prenos podataka, sam server se povezuje sa klijentom.
  • PWD - Vraća trenutni direktorij.
  • QUIT - Prekini vezu.
  • REIN - Ponovo inicijalizirajte vezu.
  • RETR - Preuzmite datoteku. RETR-u mora prethoditi naredba PASV ili PORT.
  • RMD - Ukloni direktorij.
  • RNFR i RNTO - Preimenujte datoteku. RNFR - šta preimenovati, RNTO - šta.
  • VELIČINA - Vraća veličinu datoteke.
  • STOR - Upload file. STOR-u mora prethoditi naredba PASV ili PORT.
  • SYST - Vraća tip sistema (UNIX, WIN, ...).
  • TYPE - Podesite vrstu prenosa datoteke (binarni, tekstualni).
  • KORISNIK - Korisničko ime za prijavu na server.

FTP kodovi odgovora

Ispod je kratak opis kodova odgovora koje FTP server može vratiti. Ove kodove je standardizirao IETF u RFC 959. Kao što je ranije spomenuto, kod odgovora je trocifreni broj. Prva cifra je odgovorna za jedan od tri ishoda: uspjeh, neuspjeh ili naznaku greške ili nepotpun odgovor.

  • 2xx - Uspješan odgovor
  • 4xx / 5xx - Naredba se ne može izvršiti
  • 1xx / 3xx - Greška ili nepotpun odgovor

Druga cifra označava vrstu greške:

  • x0z - Sintaktički.
  • x1z - Informacije. Odgovara informativnoj poruci.
  • x2z - Veze. Poruka je ili za kontrolnu vezu ili za podatkovnu vezu.
  • x3z - Usklađuje poruke o autentifikaciji korisnika i pravima.
  • x4z - Nije utvrđeno.
  • x5z - Sistem datoteka. Odgovara poruci o stanju sistema datoteka.

Treća znamenka konačno označava grešku.

Primjer

220 FTP server spreman. KORISNIK ftp // Anonymous 230 Prijava uspješna. PASV 227 Ulazak u pasivni način (192,168,254,253,233,92) // Klijent mora otvoriti konekciju na prenijetu IP LISTU 150 Evo liste direktorija. // Server šalje listu datoteka u direktoriju 226 Direktorij šalje OK. CWD dolazni 250 direktorij je uspješno promijenjen. PASV 227 Ulazak u pasivni način (192,168,254,253,207,56) STOR gyuyfotry.avi 150 U redu za slanje podataka. // Klijent šalje sadržaj datoteke 226 Datoteka prima OK. QUIT 221 Zbogom.

Argument 192,168,254,253,207,56 znači da se očekuje veza sa serverom na hostu sa IP adresom 192.168.254.253 na portu 207

Mnogi FTP serveri imaju direktorij (koji se zove dolazni, upload, itd.) otvoren za pisanje i koji se koristi za otpremanje datoteka na server. Ovo omogućava korisnicima da popune servere svježim podacima.

Fxp

Fxp(eng. Protokol za razmjenu datoteka- protokol za razmjenu datoteka) je metoda direktnog prijenosa datoteka između dva FTP servera, bez njihovog preuzimanja na vaš računar. U FXP sesiji, klijent otvara dvije FTP veze na dva različita servera, zahtijevajući datoteku na prvom serveru, specificirajući IP adresu drugog servera u naredbi PORT.

Nesumnjiva prednost podrške FXP standardu je u tome što krajnji korisnici koji žele kopirati datoteke s jednog FTP servera na drugi više ne podliježu ograničenju propusnog opsega svoje internetske veze. Nema potrebe da sami preuzimate datoteku da biste je kasnije otpremili na drugi FTP server. Dakle, vrijeme prijenosa datoteka ovisit će samo o brzini veze između dva udaljena FTP-servera, koja je u većini slučajeva očito veća od one „korisničke“.

FXP su počeli da koriste sajber kriminalci za napad na druge servere: komanda PORT specificira IP adresu i port napadnutog servisa na računaru žrtve, a naredbe RETR/STOR pozivaju ovaj port u ime FTP servera, a ne mašine za napad , koji je omogućio organizovanje velikih DDoS napada koristeći više FTP servera odjednom, ili zaobilazeći sigurnosni sistem računara žrtve ako se oslanja samo na provjeru IP klijenta, a FTP server koji se koristi za napad se nalazi na pouzdanom mreži ili na mrežnom prolazu. Kao rezultat toga, sada skoro svi serveri provjeravaju da li IP adresa navedena u naredbi PORT odgovara IP adresi FTP klijenta i, prema zadanim postavkama, zabranjuju korištenje IP adresa trećih strana tamo. Stoga korištenje FXP-a nije moguće kada radite sa javnim FTP serverima.

FTP- protokol dizajniran za prijenos datoteka između računara korisnika i servera. Unatoč činjenici da se ovaj protokol teško može nazvati novim, vrlo često početnici imaju pitanja u vezi s njegovom upotrebom.

Šta je FTP?

Kao što vjerovatno znate, postoje različiti protokoli za prijenos podataka preko Interneta i drugih mreža. Svaki put kada upišete adresu web stranice u adresnu traku vašeg pretraživača, ispred nje se automatski dodaje "http: //". Ovo je oznaka za HyperText Transfer Protocol (HTTP). Ovaj protokol se koristi za prijenos HTML stranica i povezanih elemenata (grafika, flash filmovi, skripte, itd., itd.) sa servera na korisnika. Takođe često prenosi fajlove koje korisnik preuzima na svoj računar.

Ali sada ne govorimo o tome, već o drugom protokolu - on se, kao što vidite iz naslova, zove FTP. Ova skraćenica je skraćenica za File Transfer Protocol - protokol za prijenos datoteka. Postavlja se sasvim logično pitanje: ako smo upravo rekli da koristeći HTTP korisnik može preuzeti fajl sa servera na svoj računar, zašto mu je bio potreban drugi protokol za prenos fajlova?

Činjenica je da je HTTP prvobitno bio namijenjen samo za prijenos hiperteksta, a postavljanje datoteka sa strane korisnika na server zahtijeva dodatne pokrete sa strane kreatora web stranice. FTP, s druge strane, inicijalno omogućava prijenos datoteka u oba smjera, podržava prijenos direktno između dva servera, a također daje korisniku mogućnost rada sa fajlovima koji se nalaze na serveru, gotovo na isti način kao i sa onima koji se nalaze na serveru. na svom kompjuteru.

Unatoč činjenici da je naziv ovog programa sličan riječi Mozilla, programeri popularnog pretraživača i email klijenta nemaju nikakve veze s tim. Ipak, skup mogućnosti koje se nude korisnicima nije ništa lošiji nego da su ovaj softverski proizvod razvili stručnjaci iz Mozille.

Prvo, FileZilla podržava sigurnu vezu putem sigurnih šifriranih SSL i SFTP protokola, koji su ovih dana vrlo važni. Istovremeno, postoji podrška za preuzimanje i učitavanje datoteka većih od 4 GB, kao i ugrađeni upravitelj web mjesta. Program može raditi pod različitim operativnim sistemima i ima posebnu prijenosnu verziju koju možete nositi sa sobom na fleš disku i pokrenuti bez instalacije. Višejezični interfejs programa upotpunjuje sliku, a među jezicima je i ruski.

Ukupno

Pa, kao što vidite, nema posebnih poteškoća u radu sa FTP protokolom. Većina korisnika lako se snalazi sa Windows Explorerom ili svojim omiljenim pretraživačem, ali oni koji žele nešto više ne mogu trošiti novac na skupe specijalizirane programe i hakovati ih, već koriste besplatna rješenja koja po kvaliteti ni po čemu nisu lošija od komercijalnih... Sretno u "komunikaciji" sa FTP serverima!

FTP je dio internetskih standarda i koristi se za prijenos velikih količina informacija. Prve specifikacije u kojima se ovaj protokol pojavio pojavile su se 1971. godine. Od tog vremena, mogućnosti FTP-a su se značajno proširile i teško je zamisliti kako bi korisnici mogli bez njega da preuzmu ili uploaduju nekoliko gigabajta fajlova u online skladište. Koliko bi vremena bilo potrebno da se web lokacija prenese sa lokalne mašine na server ili obrnuto? Naravno, možete koristiti arhiver, ali šta ako server ne podržava ovu funkciju? Strašno je i zamisliti. Dakle, FTP je prilično koristan alat.

Protokol se odnosi na dosljedan format za razmjenu informacija između dva uređaja. I sam kao "protokol za prijenos datoteka", što se može prevesti kao "protokol za prijenos datoteka". Za FTP koristi TCP kanal. Razmjena je izgrađena na principu "klijent-server". Ne možete prenositi koristeći ovaj protokol, jer nema zaštitu podataka i običan tekst se prenosi na server. Naravno, obično je potrebno da se autentifikujete da biste se povezali sa FTP serverom, ali ne biste se trebali previše oslanjati na ovo, pošto se korisnički ID i lozinka prenose u čistom tekstu.

FTP protokol se koristi za razmjenu informacija sa FTP lokacijama, koje su ogromna spremišta korisnih i zanimljivih informacija. Fajlovi na FTP lokaciji su raspoređeni u strukturu direktorija nalik stablu, slično kao na lokalnom računalu. Da biste vidjeli sadržaj spremišta, možete koristiti bilo koji pretraživač, ali je bolje, naravno, koristiti program posebno kreiran za to. Korisnici koji više vole da rade sa komandnom linijom OS mogu koristiti komandu "ftp".

Neke FTP stranice imaju ograničenja u pristupu svojim resursima. Ponekad, da biste ih ušli, morate znati login i lozinku registrovanog korisnika. Većina FTP lokacija vam omogućava da otpremate datoteke bez unosa lozinke. Ali nemoguće je zapisati svoje podatke na takve resurse.

Kako koristiti protokolFTPako vaš OS nije Windows

Ako više volite Linux, možete vidjeti dokumentaciju za dostupne operacije upisivanjem $man ftp. A da biste se povezali sa FTP serverom, potrebno je da upišete $ftp yoursite.at.domain. Najčešće korištene naredbe su:

  • binarni - promijenite način prijenosa binarnih (netekstualnih) datoteka, na primjer, slika;
  • ascii - prelazak na prijenos tekstualnih informacija;
  • cd ime fascikle - promenite trenutni direktorijum na udaljenom računaru u uključenu fasciklu pod nazivom ime fascikle;
  • dir - pregledajte sve datoteke u trenutnom direktoriju udaljenog računara;
  • pomoć - pomoć u korištenju komandi;
  • mget - preuzimanje više datoteka u isto vrijeme;
  • put filename - koristi se za učitavanje imena lokalne datoteke na udaljeni resurs;
  • mput - postavljanje nekoliko datoteka na udaljeni resurs;
  • exit - izlaz sa FTP-a i izlaz na OS.

Također možete koristiti programe kao što su gFTP, FOFF i FileZilla.

Kako koristiti protokolFTPako više volite Windows

U ovom slučaju, sve je mnogo jednostavnije, a svaki FTP klijent koji je lako pronaći na mreži će vam odgovarati. Od besplatnih, najpopularnije aplikacije su FileZilla, FTPInfo, WinSCP. Popularni menadžeri datoteka kao što su Total Commander i FAR manager takođe mogu podržati FTP veze. Dakle, ako ne koristite ovaj protokol tako često, onda je sasvim moguće proći.

Pa, ako ste samo trebali da preuzmete nešto jednokratno, onda možete upisati sljedeću naredbu u pretraživač umjesto URL-a:

ftp: // korisnik: [email protected]: luka u kojoj

site.at.domain - ime servera,

port - broj porta za vezu (obično 21 i može se preskočiti).

Ako se trebate povezati na anonimni FTP, tada se koristi skraćena notacija za naredbu:

ftp: //host.at.domain: port

Dešava se da nastaju problemi prilikom povezivanja preko FTP-a. U ovom slučaju ima smisla provjeriti postavke FireWall i antivirusnog programa.

FTP je protokol za prijenos podataka sa računara korisnika na server, sa web stranice na tvrdi disk ili između servera. Pojavio se mnogo prije HTTP-a. Korisnici mogu anonimno izvršiti autentifikaciju i izvršiti željene radnje, ako je ova funkcija omogućena. Danas postoje specijalizovani programi za prenos podataka preko FTP-a i programi za web razvoj sa ugrađenom funkcijom razmene podataka.

Zašto je potreban FTP

Može se koristiti za kopiranje datoteka sa računara na server i sa servera na računar. Jedna od prednosti korištenja FTP-a je preuzimanje više dokumenata u isto vrijeme. Neki programi pružaju mogućnost uređivanja datoteka direktno na hostingu. Standardni klijentski prozor je podijeljen u dva dijela:

  • prvi prikazuje sve što je postavljeno na server;
  • u drugom, sve na kompjuteru.

Osim ovih, koriste se i pomoćni prozori. Korisnik bira dokument koji želi staviti na hosting i prenosi ga. Prije toga mora se obavezno prijaviti. Podaci su navedeni u formatu: @ ime resursa Ime domene.

Neki web domaćini omogućavaju pristup web lokaciji putem programa kao što su upravitelji datoteka. Neki pretraživači već imaju ugrađenu ovu funkciju. Postoje i posebne komponente koje mogu raditi sa FTP-om.


Ranjivosti

FTP je veoma star protokol. Prethodio je HTTP-u i nije dizajniran da bude siguran. Zbog toga ima dosta problema sa zaštitom. Evo najosnovnijih:

  • lažni napadi;
  • presretanje korisničkih podataka;
  • njuškanje;
  • zapljena luka.

Datoteke nisu šifrirane kada se prenose putem FTP-a. Shodno tome, uljezi mogu presresti sve naredbe, korisnička imena i lozinke. Za to se koriste sigurne verzije, na primjer, za FTP, ovo je FTPS.

Siguran prijenos podataka

Postoje sljedeće metode slanja podataka, zaštićene od hakerskih napada: FTPS, SFTP i FTP preko SSH-a. Uz FTPS, možete osigurati svoju sesiju. FTP server prima AUTH TLS naredbu i zatim odbija veze koje nisu šifrirane.


SFTP ima sličnu listu naredbi kao i FTP. Koristi SSH protokol, koji šifrira sav promet. Naredbe i podaci su kodirani na ovaj način. Shodno tome, sve lozinke i druge informacije koje nisu namijenjene trećim licima ne prenose se u čistom tekstu.

Drugi način prijenosa preko SSH protokola je tuneliranje sesije preko SSH veze.

Povezivanje i razmjena podataka

Postoje dvije moguće vrste posla:

  • aktivan;
  • pasivno.

Razlikuju se po načinu uspostavljanja veze. Aktivna metoda pretpostavlja da se u programu kreira tcp veza sa serverom i da se šalje traženi IP, port. Pasivno je potrebno kada su takve veze blokirane zaštitnim zidom. Zatim server vraća adresu i port, a zatim korisnik koristi primljene podatke za povezivanje.

U FTP postavkama možete odabrati sljedeće načine prijenosa:

  • U redu;
  • blok;
  • komprimiran.

Kada je odabran prvi način rada, podaci se šalju kao kontinuirani tok. Obrada se vrši preko TCP-a. U normalnom načinu rada podaci se segmentiraju i po pravilu šalju u ovom obliku: blok zaglavlja, broj bajtova, polje podataka. Kod komprimirane metode svi podaci se komprimiraju jednim algoritmom i prenose se mnogo brže zbog činjenice da je objekt manje težak.

Autorizacija

Za identifikaciju korisnika i naknadnu dodjelu prava za upravljanje datotekama koristi se shema korisničkog imena/lozinke. Ime se šalje naredbom USER, a lozinka se šalje putem PASS.


Server prihvata ove podatke ako odgovaraju onima navedenim u bazi podataka. Tada klijent dobija pozivnicu, nakon čega počinje sesija. Ponekad server podržava mogućnost prijave bez akreditiva. U pravilu je za takve veze omogućen ograničen pristup, koristi se neko standardno ime, na primjer, anonimno. Ali najčešće je za autorizaciju potrebno unijeti ispravnu adresu e-pošte, koja će se ubuduće koristiti za prijavu.

Razlika od http protokola

Jedna od upečatljivih karakteristika FTP-a su višestruke veze, u kojima server prihvata komande i šalje odgovor preko jednog kanala, a prenosi podatke preko drugog. Zahvaljujući tome, možete otpremati ili preuzimati više datoteka u isto vrijeme.


Smanjenje troškova saobraćaja i, shodno tome, smanjenje vremena za razmjenu podataka vrši se zahvaljujući binarnom načinu prijenosa. Posao počinje nakon što klijent uđe u sesiju, a sve dalje operacije se odvijaju u njenom okviru. Ovo je jedna od karakterističnih karakteristika, jer HTTP protokol ne pamti podatke o registrovanim korisnicima - ova funkcija se izvodi vanjskim metodama.

Komunikacija računar-klijent je podrazumevano na portu 21 i koristi se za upravljanje. Druga podatkovna veza otvara se na dvadesetom portu ili kako god je ispravno konfigurirano.

Kako raditi sa fajlovima

Postoje FTP klijenti za rad sa protokolom, ali rad sa njima se zasniva na istom principu. Sve što treba da prenesete je da prevučete dokument sa računara korisnika u fasciklu servera ili uradite iste radnje pomoću komandne linije.

  1. Nakon što se glavni prozor pojavi u odgovarajućim poljima, potrebno je da unesete ime hosta, korisničko ime, lozinku, port.
  2. Nakon uspješne autorizacije, pojavljuje se lista svega što je učitano na server.
  3. Treba da izaberete objekat koji želite da otpremite na server sa računara ili sa servera na računar.
  4. Nakon što ste označili odgovarajuću datoteku, pozovite kontekstni meni pomoću RMB-a, odaberite željenu akciju: preuzimanje, dodavanje zadatku, uređivanje, brisanje, preimenovanje, kopiranje adrese, postavljanje prava pristupa. Ove funkcije se mogu razlikovati ovisno o softveru koji koristite.

Postoji način razmene između dva servera direktno bez preuzimanja na računar. Zahtijevane su dvije veze na različite servere. Na jednom od njih je odabrana datoteka za prijenos i naznačena je IP adresa drugog servera. Za to se koristi FXP - protokol direktne razmjene.

Glavna prednost korištenja ove metode je velika brzina preuzimanja. Ne zavisi od propusnog opsega internet konekcije korisnika koji želi da prenese datoteku. Vrijeme koje je potrebno ovisi o brzini veze između udaljenih FTP servera. U pravilu je namjerno veći od uobičajenog.

Treba napomenuti da su ovaj protokol počeli da koriste sajber kriminalci za pokretanje napada na druge servere. Kako bi se spriječile takve radnje, IP adresa se sada provjerava, a ako se pronađe nepodudaranje, ona se blokira.

FTP veza preko pretraživača

Za povezivanje, kao i kod korištenja specijaliziranih programa, korisnik mora imati prijavu, lozinku, IP adresu. Sama veza se javlja kada se koristi komandna linija. Da biste to učinili, potrebno je da unesete adresu sljedećeg formata: ftp: // prijava za prijavu: lozinka servera @ ip adresa. Na primjer, ftp: // moje ime: [email protected] Ako je veza bila uspješna, pojavljuje se lista svih dokumenata. Datoteke web lokacije obično se pohranjuju u folder public_html ili www, ovisno o vrsti hostinga.

Da biste kopirali dokument, samo ga trebate prevući. Ova metoda ne dozvoljava prijenos dokumenata sa jednog servera na drugi. Lako je promijeniti dozvole za čitanje/pisanje u pretraživaču. Da biste to učinili, kliknite desnim tasterom miša na datoteku koja se već nalazi na serveru. Pojavit će se prozor s postavkama. U njemu treba navesti potrebnu rezoluciju.

FileZilla

To je jedan od najpopularnijih Windows FTP klijenata. Sa ovim programom je prilično lako raditi. Glavni prozor je podijeljen na pet dijelova. Tri od njih predstavljaju strukturu datoteka računara, a četiri - servera. Obavezna polja označavaju korisničko ime, lozinku, port.


Ako planirate da često koristite vezu, informacije za prijavu su navedene u Site Manageru. U postavkama možete odabrati identifikaciju, distribuirati podatke za prijavu u foldere, dodati komentar. Da biste prenijeli datoteku, odaberite je i prevucite u radni prozor, gdje je prikazana struktura datoteke računara.

Totalni komandant

Da biste prenijeli i preuzeli datoteku koristeći "Total Commander", morate izvršiti sljedeći niz radnji:

  1. Idite na karticu "Mreža".
  2. Odaberite stavku menija "Poveži se na server".
  3. U prozoru koji se pojavi kliknite na dugme "Dodaj".
  4. Odredite naziv veze, server, nalog, lozinku.
  5. Postavite oznaku "Pasivni način razmjene", pritisnite OK.
  6. Nakon toga, označite odabranu vezu, kliknite na dugme "Poveži".

Komandna linija

Ukoliko korisnik ne želi koristiti grafičko sučelje, iako je prilično zgodno i omogućava brže izvršavanje nekih funkcija, može koristiti komandnu liniju:

  1. Povezivanje se vrši naredbom Open. Upotreba bi trebala izgledati ovako: otvorite ftp.server.com port.
  2. Parametar porta se može izostaviti ako namjeravate koristiti standard 21.
  3. Umjesto server.com, naznačena je adresa servera na kojem se nalazi stranica.

Za preimenovanje se koristi preimenuj, za promjenu trenutnog direktorija se standardno koristi cd, za izlazak morate uneti zatvori, a za brisanje - brisati ili prekinuti vezu.

Top srodni članci