From Wikipedia, the free encyclopedia
Datņu pārsūtīšanas protokols[1] jeb protokols FTP (angļu: File Transfer Protocol) ir TCP/IP steka lietojuma slāņa protokols failu pārsūtīšanai starp datoriem. Tas ir klients-serveris arhitektūras bāzēts protokols. Uz FTP servera datora darbojas FTP servera programmatūra, kas saņem klientu savienojumu atvēršanas pieprasījumus. Klientu datori darbina FTP klientu programmatūru, kas izveido TCP savienojumu ar serveri. Pēc savienojuma izveides, klients var veikt vairāku veidu darbības ar failiem, piemēram: augšuplādēt failus uz serveri (upload), lejuplādēt failus no servera (download), pārsaukt vai dzēst serverī esošos failus (rename & delete), utt. FTP ir atvērts standarts un tā programmatūra ir sastopama praktiski visām platformām, tāpēc to var lietot lai pārsūtītu failus starp dažādu arhitektūru datoriem un dažādām operētājsistēmām.
Šajā rakstā ir pārāk maz vikisaišu. Lūdzu, palīdzi uzlabot šo rakstu, saliekot tajā saites uz citiem rakstiem. Diskusijā var parādīties dažādi ieteikumi. Vairāk lasi lietošanas pamācībā. |
FTP par transporta slāņa protokolu lieto tikai TCP. Ienākošajiem savienojumiem FTP serveri pēc noklusējuma lieto 21 portu. Klienta savienojums uz šo portu ir vadības savienojums (control connection). Caur šo savienojumu klients sūta komandas serverim un serveris sūta atbildes, bet šo savienojumu nelieto pašu failu pārsūtīšanai. Failu pārsūtīšanai FTP lieto datu savienojumus, kurus var izveidot dažādos veidos.
Active mode (aktīvais režīms) - klients savā galā atver nejauši izvēlētu portu (porta numurs virs 1024) un serverim nosūta šo porta numuru. FTP serveris pēc tam izveido savienojumu ar šo portu un var sūtīt vai saņemt datus.
Lai šajā režīmā atvērtu datu savienojumu, klients nosūta komandu PORT, kuras argumenti ir klienta IP adrese un atvērtais ports. adrese:ports te ir kā 6 skaitļu virkne. "h1,h2,h3,h4,p1,p2", pirmie 4 skaitļi atbilst IP adresei, atlikušie divi - portam. Piem. ja IP adrese ir 192.168.0.2 un atvērtais ports ir 1025, tad klients nosūta komandu "PORT 192,168,0,1,4,1". ports ir h1*256+h2, šajā gadījumā 4*256+1.
Passive mode (pasīvais režīms) - serveris savā galā atver nejauši izvēlētu portu (porta numurs virs 1024) un paziņo to klientam, kurš uz turieni veido savienojumu.
Lai šajā režīmā izveidotu datu savienojumu, klients nosūta komandu PASV, uz kuru serveris atbild apmēram šādi: "227 Entering Passive Mode (127,0,0,1,78,52)", kur šie seši skaitļi ir ar apmēram tādu pašu nozīmi kā PORT komandas argumenti aktīvajā režīmā.
Eksistē arī extended passive mode, kas ir līdzīga pasīvajam režīmām, tikai lieto citādāku argumentu formātu.
Tajā laikā, kad notiek datu pārraide caur datu savienojumu, vadības savienojumā nekas nenotiek. Tas dažreiz rada problēmas ar lielu failu pārsūtīšanu, ja pa vidu ir ugunsmūri, kas vardarbīgi pārtrauc vadības savienojumu.
FTP protokols nodrošina iespēju atsākt norautas lejupelādes izmantojot REST komandu. Šīs komandas arguments ir faila lejuplādētās daļas izmērs baitos. Augšuplāžu atsākšana ir problemātiskāka, jo nav precīzi zināms, kurā vietā pārsūtīšana pārtrūka, lai arī eksistē REST analoga APPE komanda. Failu izmēru var noteikt no direktoriju saraksta vai ar SIZE komandu.
Īpaši priekš FTP protokola darbības caur ugunsmūri tika izveidots NAT paplašinājums, kuru nosauca par NAT-PT (rfc2766), kurš ļauj veidot ienākošos savienojumus no servera uz klientu caur NAT. Izveidojot šādu savienojumu NAT maina sūtāmos datus, kas tiek pārsūtīti no klienta, norādot serverim patieso adresi un portu, ar kuru serveris var izveidot savienojumu un pēc tam pārraida savienojumu no servera no šīs adreses uz klienta adresi. Neskatoties uz visiem pasākumiem un jauninājumiem, kas likti lietā, lai atbalstītu FTP protokolu, praksē, NAT-PT funkcija visos maršrutētājos tiek atslēgta, lai sniegtu papildus drošību pret vīrusu draudiem.
FXP (angliski File eXchange Protocol – Failu apmaiņas protokols) - veids, kā pārsūtīt failus starp diviem FTP serveriem pa tiešo, neielādējot datus savā datorā. Izveidojot FXP sesiju klients atver divus FTP savienojumus uz diviem dažādiem serveriem, pieprasot failu no pirmā servera norāda komandā PORT otra servera IP adresi.
Par viennozīmīgu priekšrocību FXP standarta atbalstā ir tas, ka gala lietotājus, kuri vēlas kopēt failus no viena FTP servera uz citu, vairs neietekmē viņu interneta pieslēguma ātruma ierobežojumi. Nav nepieciešamības sev lejupielādēt failu, lai pēc tam augšupielādētu to uz citu FTP serveri. Tātad, failu pārsūtīšanas ātrums būs atkarīgs tikai no interneta savienojuma ātruma starp diviem attālinātajiem FTP serveriem, kas lielākajā daļā gadījumu ir krietni ātrāks par lietotāju interneta pieslēgumiem.
FXP tagad sākuši izmantot hakeri, lai uzbruktu citiem serveriem; komandā PORT tiek norādīta IP adrese un ports, kuru izmanto serviss, kuram tiek veikts uzbrukums, un ar komandām RETR / STOR tiek veikts pieprasījums uz šo portu kā no FTP servera, nevis no uzbrūkošā datora, kas ļauj veikt liela mēroga DDoS uzbrukumus izmantojot uzreiz vairākus FTP serverus, vai apiet upura datora drošības sistēmu, ja tas pārbauda tikai klienta IP adreses, kas norādīta komandā PORT, atbilstību FTP klienta IP adresei un pēc noklusējuma aizliedz izmantot trešo pušu IP adreses. Tādējādi FXP nav iespējams izmantot strādājot ar publiskajiem FTP serveriem.
Ir divi biežāk lietotie datu pārsūtīšanas režīmi:
ACII var pārsūtīt tikai vienkāršu tekstu, jebkāda cita veida dati pārsūtīšanas laikā tiks sabojāti. Šeit datus nosūta kā attiecīgo simbolu ASCII kodus. Klients tekstu saglabā savas platformas formātā (piem. sūtot unix formāta teksta failu no unix servera uz windows klientu, katras teksta rindas beigās LF vietā pieliks CR LF). Binārajā režīmā dati tiek pārsūtīti baits baitā, bez izmaiņām.
Parasti FTP implementē FTP klienti, kas ļauj lietot grafisko interfeisu un/vai kompozītās komandas (piemēram, pārsūtīt veselus direktorijus, kam vajag vairākas FTP komandas). Praktiski visas interneta pārlūkprogrammas nodrošina ierobežotu FTP klienta funkcionalitāti (iespēju lejupielādēt failus). Dažos gadījumos (internet explorer) iespējams arī pārsaukt un dzēst failus ftp serverī, kā arī augšupielādēt failus. FTP praktiski vienmēr lieto lietotāju identifikāciju autentifikāciju (lai tiktu pie failiem sākumā jānorāda lietotāja vārds un parole). Daudziem ftp serveriem ir lietotāja vārds anonymous, kuram var lietot jebkādu paroli (dažreiz arī nekādu). Praktiski visāsm interneta pārlūkprogrammām, lai pieslēgtos NEanonīmam ftp serverim, lietotāja vārdu un paroli var norādīt URL []. Servera_portu lieto tikai tad ja tas nav 21. Direktoriju arī bieži vien nenorāda.
FTP komandas (visi dati, kas iet caur vadības savienojumu) ir ASCII teksta bāzēti, tāpēc vienkāršas operācijas ir iespējamas izpildīt bez ftp klienta, lietojot tikai telnet. Servera atbildes kodi, tāpat kā HTTP un SMTP sastāv no trīsciparu skaitļiem. Aiz skaitļa dažreiz seko kļūdas (statusa) paskaidrojums vārdiem. FTP servera atbildes kodi:
FTP protokols ir standartizēts vairākos rfc:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.