U posljednjem desetljeću svjedoci smo iznimnog jačanja Interneta kao jednog od vodećih medija, zatim porasta broja njegovih korisnika te usluga javno dostupnih putem te globalne mreže. Sam Internet počiva na čitavom nizu protokola bez kojih sva njegova postojeća infrastruktura i funkcionalnost ne bi bila moguća. Protokoli omogućuju uspostavu komunikacije između pojedinih elemenata infrastrukture Interneta. Oni su teoretski kategorizirani u sedam OSI mrežnih slojeva koji čine takozvani OSI mrežni složaj ili model. Ti slojevi su fizički sloj, sloj podatkovne poveznice, mrežni, transportni, sjednički, prezentacijski te aplikacijski sloj. Mrežni protokoli za razmjenu datoteka pripadaju aplikacijskom sloju OSI mrežnog modela. U grupu takvih protokola svrstavaju se mrežni protokoli FTP (eng. File Transfer Protocol), TFTP (eng. Trivial File Transfer Protocol), SFTP (eng. Simple File Transfer Protocol), SFTP (eng. SSH File Transfer Protocol) i brojni drugi. Svi navedeni protokoli te njihove implementacije opisani su u ovom dokumentu.

 

Protokol je dogovoreni postupak kojeg treba slijediti u određenoj situaciji. U području koje je obrađeno u sklopu ovog dokumenta, protokoli omogućuju uspostavu komunikacije između pojedinih elemenata infrastrukture Interneta. Spomenuti protokoli teoretski su kategorizirani u sedam OSI mrežnih slojeva koji čine takozvani OSI mrežni model. Mrežni protokoli za razmjenu datoteka pripadaju aplikacijskom sloju tog modela.

FTP je standardni mrežni protokol za kopiranje datoteka s jednog računala na drugi putem mreže zasnovane na TCP/IP složaju. FTP je izgrađen na temelju klijent-poslužitelj arhitekture te koristi dva zasebna kanala za ostvarivanje komunikacije između njih, podatkovni i kontrolni kanal. FTP klijenti mogu se autentificirati na poslužitelju razmjenjujući autentifikacijske podatke u obliku otvorenog teksta ili se spojiti na njega kao anonimni korisnici ukoliko to poslužitelj dozvoljava. FTP nije dizajniran kako bi bio siguran protokol te tako posjeduje brojne sigurnosne slabosti (npr. ne implementira šifriranje prometa). Čitav prijenos izvršava se u obliku otvorenog teksta te tako svatko tko posjeduje mogućnost snimanja i presretanja mrežnog prometa može jednostavno pratiti čitavu komunikaciju odnosno saznati korisnička imena, lozinke te dobiti pristup razmijenjenim podacima i naredbama. Ovaj problem je zajednički svim internetskim protokolima dizajniranim prije nego što su razvijeni enkripcijski mehanizmi poput protokola TLS ili SSL. Navedeni problem rješava se korištenjem sigurnosnog proširenja protokola FTP, a to je tuneliranje protokola pomoću protokola SSH ili protokol FTPS. Alternativno rješenje jest odustajanje od FTP protokola te korištenje drugih protokola koji posjeduju istu funkcionalnost uz znatno višu dostupnu razinu sigurnosti poput protokola SFTP ili SCP. Uz FTP je vezan čitav niz naknadno razvijenih protokola.

SFTP je mrežni protokol koji omogućuje pristup datotekama, njihovu razmjenu i upravljanje putem pouzdanog toka podataka. Razvio ga je IETF kao proširenje protokola SSH-2 (eng. Secure Shell version 2) koje pruža mogućnost sigurne razmjene datoteka. Iako je razvijen u kontekstu SSH-2 protokola, može se koristiti i u kombinaciji s različitim drugim aplikacijama poput sigurne razmjene podataka preko TLS protokola i razmjene upravljačke informacije u VPN (eng. Virtual Private Network) aplikacijama. Protokol pri svom radu pretpostavlja da funkcionira iznad sigurnog kanala, primjerice SSH, da je poslužitelj već autentificirao klijenta te da je identitet klijentskog korisnika dostupan protokolu. SFTP radi na TCP priključku protokola SSH, a to je priključak 22. OpenSSH poznata je implementacija SFTP klijenta i poslužitelja.

SMB je aplikacijski protokol ponajviše korišten za pružanje dijeljenog pristupa datotekama, pisačima, serijskim priključcima i različitim oblicima komunikacije između mrežnih čvorova. Također, pruža međuprocesni komunikacijski mehanizam s autentifikacijom korisnika. SMB se ponajviše koristi u operacijskom sustavu Microsoft Windows, no razvijene su njegove implementacije za operacijske sustave Unix, Linux i Mac OS. SMB je razvio Barry Feigenbaum u kompaniji IBM s ciljem pretvaranja DOS „Interrupt 33“ sustava za lokalni pristup datotekama u mrežni datotečni sustav. Daljnji razvoj protokola preuzeo je Microsoft spojivši ga sa svojim LAN Manager proizvodom. Originalno je SMB bio dizajniran za rad temeljen isključivo na NetBIOS/NetBEUI aplikacijskom programskom sučelju koji nije prihvaćen u sklopu Interneta. Stoga je Microsoft bio primoran uvesti podršku za TCP protokol tako da se od 2000. godine SMB standardno na transportnom sloju oslanja na navedeni protokol te njegovi poslužitelji promet osluškuju na TCP priključku 445. Samba je poznata implementacija protokola SMB.

SCP predstavlja način sigurne razmjene računalnih datoteka između lokalnog i udaljenog računala, dva lokalna računala ili dva udaljena računala. Pojam SCP odnosi se na dva povezana pojma, SCP protokol i SCP program. SCP je mrežni protokol koji podržava razmjenu datoteka na TCP priključku 22 koji pripada protokolu SSH. SCP protokol je zapravo BSD RCP (eng. Remote File Copy) protokol tuneliran pomoću SSH protokola kako bi se osiguralo šifriranje i autentifikacija. Zbog toga se često SCP ne smatra zasebnim protokolom već kombinacijom protokola RCP i SSH. Protokol RCP obavlja razmjenu datoteka, a protokol SSH omogućuje autentifikaciju i šifriranje komunikacije. Na taj način SCP štiti autentičnost i povjerljivost podataka koji se razmjenjuju te sprečava neovlašteno snimanje, kopiranje i otuđivanje razmijenjenih informacija. WinSCP je poznata i često korištena implementacija protokola SCP i SFTP.

NFS je protokol mrežnog datotečnog sustava kojeg je 1984. godine razvila kompanija Sun Microsystems. NFS dopušta korisniku na klijentskom računalu da pristupa datotekama putem mreže na način sličan pristupu datotekama pohranjenim na lokalnom računalu. NFS se temelji na sustavu ONC RPC (eng. Open Network Computing Remote Procedure Call) odnosno na metodologiji udaljenog poziva procedure te je kao i svi drugi protokoli otvoren standard. NFS se koristi na svim poznatim platformama s time da je najpopularniji na Linux/Unix sustavima dok su SMB odnosno AFP češće korišteni na Windows odnosno Mac OS operacijskom sustavu.