Prenos súborov

Pri práci so vzdialeným počítačom skôr alebo neskôr vznikne potreba prenosu súborov na (alebo z) tento počítač. Nech už sa jedná o prenos súbor na stiahnutie, ale najmä prenos súborov (inštalácia) aplikácií (napr. webovej aplikácie).

Mnohí si pod pojmom prenos súborov cez Internet predstavia sťahovanie (najmä), resp. nahrávanie súborov cez webový prehliadač. Toto však nie je plnohodnotná služba prenosu súborov, pretože je jednak poskytovaná webovou službou, ale najmä – práca so súbormi zahŕňa oveľa viac:

  • prenos súborov – nahrávanie/sťahovanie na/z vzdialený počítač
  • premenovanie a presun súborov
  • mazanie súborov
  • vytváranie súborov
  • výpis obsahu adresára/zložky
  • výpis obsahu adresára
  • priamy prenos súborov zo servera na server

Poznámka

Pretože prenos súborov je len jednou z funkcií, je lepšie používať pojem správa súborov…

Hoci mnohé webové aplikácie dokážu poskytovať väčšinu z týchto funkcií, ale vyžaduje to nainštalovanie tejto aplikácie a samotný webový server nestačí…

Na správu vzdialených súborov existuje viacero protokolov:

  • zdieľanie súborov Windows – správa súborov vo Windows, použiteľné iba v LAN
  • NFS – zdieľanie súborov v Unixe/Linuxe, nie je dostatočne bezpečný
  • FTP – správa vzdialených súborov
  • FTPS – protokol FTP so zabezpečeným prenosom pomocou TLS (TLS + FTP)
  • SFTP – zabezpečená správa vzdialených súborov (pomocou SSH)
  • SCP – zabezpečený prenos súborov (pomocou SSH)
  • WebDAV – rozšírenie HTTP na vzdialenú správu súborov

Zdieľanie súborov Windows

Nastavenie zdieľania

Zdieľanie súborov vo Windows poskytuje:

  • zobrazenie ostatných počítačov v sieti
  • prístup k zdieľaným súborom a priečinkom iných počítačov
  • tlač na zdieľaných tlačiarňach iných počítačov

Základné použitie zdieľania súborov vyžaduje aby používateľ na vzdialenom počítači mal k dispozícii prihlasovacie údaje k počítaču, ktorý zdieľanie poskytuje (heslo takého účtu je povinné). Novšie verzie poskytujú tzv. Domácu skupinu, ktorá toto obmedzenie obchádza.

Základnou podmienkou použitia zdieľania je jeho zapnutie v nastavení sieťového rozhrania (Ovládací panel ‣ Sieť a Internet -> Centrum sietí -> Zmeniť nastavenie adaptéra):

povolenie zdieľania v adaptéri

Ďalšie (spoločné) nastavenia zdieľania sú dostupné v Ovládací panel ‣ Sieť a Internet -> Centrum sietí -> Zmeniť rozšírené nastavenie zdieľania, kde si treba zvoliť nastavenia pre používanú sieť:

spoločné nastavenia zdieľania

Medzi dôležité nastavenia patrí:

Zisťovanie siete
Po zapnutí možno zobrazovať ostatné počítače v sieti. Zároveň zapne zobrazenie tohoto počítača medzi ostatnými počítačmi v sieti.
Zdieľanie súborov a tlačiarní
Zapína samotné zdieľanie zdrojov tohoto počítača
Zdieľanie verejných priečinkov
Windows poskytuje tzv. verejné priečinky, ktoré dovoľujú zjednodušený spôsob zdieľania súborov jednotlivých používateľov. Zapnutie nie je nutné…
Zdieľanie chránené heslom
Vhodné zapnúť, aby bol na prístup k zdieľaniam nutný používateľský účet.
Pripojenia domácej skupiny
Vhodné povoliť, aby Windows automaticky spravoval domácu skupinu (i keď nie je použitá).

Vytvorenie zdieľania

Vytvoriť zdieľanie v systéme Windows možno viacerými spôsobmi, pre mňa je najvhodnejší spôsob pomocou vlastností konkrétneho priečinka:

  1. spustiť správcu súborov (napr. Prieskumník)

  2. zvoliť priečinok, ktorý má byť zdieľaný

  3. kliknúť pravým tlačidlom a zvoliť Vlastnosti ‣ Zdieľanie ‣ Rozšírené zdieľanie (vyžaduje práva správcu):

    povolenie zdieľania v adaptéri
    • zapnúť Zdieľať tento priečinok
    • zadať meno zdieľania (pomocou neho bude zdieľanie prístupné)
  4. nastaviť prístupové práva zdieľania kliknutím na Povolenia – predvolene je zdieľanie prístupné každému používateľovi len na čítanie:

    povolenie zdieľania v adaptéri

FTP

Protokol FTP (File transfer Protocol) je jeden z najstarších protokolov Internetu, ktorý pôvodne poskytoval len nezabezpečenú správu vzdialených súborov. Neskôr bola do jeho špecifikácie pridaná aj podpora explicitného TLS (FTP + TLS, pomocou AUTH TLS), ktorá je však využívaná menej, ako by mala.

Porty protokolu FTP
Kanál Číslo portu
riadiaci 21/tcp
dátový 20/tcp
náhodný

Protokol FTP sa vyznačuje tým, že používa dva samostatné kanály:

  • riadiaci (príkazový) – slúži na prenos príkazov protokolu
  • dátový – slúži na samotný prenos dát (súborov, obsahu adresárov, apod.)

Podľa spôsobu vytvárania dátového kanála môže FTP použiť dva režimy:

  • aktívny režim – spojenie dátového kanála začína server z portu 20/tcp na náhodný port definovaný klientom
  • pasívny režim – spojenie dátového kanála začína klient, z náhodného portu klienta na náhodný port servera

Softvér klientov FTP:

  • prieskumník Windows – obmedzené možnosti
  • webové prehliadače – mnohé podporujú FTP, ale len na sťahovanie
  • FileZilla – pre Linux a Windows
  • WinSCP – pre Windows
  • CyberDuck – pre Windows a MacOS
  • lftp – pre Linux

Režimy FTP

V pôvodnej špecifikácii sa klient pripojil na server pomocou riadiaceho kanála a pri získavaní dát zo servera vytvoril server nové spojenie na klienta pomocou dátového kanála. Zavedením neverejného rozsahu adries IP, a s tým súvisiaceho prekladu sieťových adries (NAT – Network Address Translation) začali byť spojenia dátového kanála blokované smerovačmi. Prípadne, aj bez NAT, môžu byť tieto dátové spojenia blokované zle (nedostatočne) nastavenými firewallmi.

V reakcii na tieto problémy bola špecifikácia FTP rozšírená a boli pridané dva režimy práce dátového kanála – aktívne a pasívne. V oboch režimoch sa klient najprv pripojí na pomocou riadiaceho kanála (21/tcp), rozdiel je vo vytváraní dátového spojenia:

Aktívny režim

Aktívny režim je pôvodný režim protokolu FTP. Klient, pri vyžiadaní dát od servera, otvorí náhodný (dynamický) portu a serveru riadiacim kanálom oznámi číslo tohoto portu. Server potom vytvorí nové spojenie z portu 20/tcp na tento port, ktorým posiela/prijíma požadované dáta.

Aby smerovač (pri NAT) dokázal tieto nové spojenia dátového kanála správne prenášať, musí sledovať riadiaci kanál a zaznamenať si číslo náhodného portu, ktoré klient oznamuje serveru a potom povoliť spojenia zo servera na tento port.

Poznámka

Sledovanie komunikácie riadiaceho kanála smerovačom je nemožné, ak je prenos zabezpečený pomocou TLS (či už explicitne alebo implicitne).

Pasívny režim

Pasívny režim bol do protokolu FTP pridaný neskôr a je reakciou na problémy spojenia pri NAT. Klient si od servera vyžiada pasívne spojenie (príkaz PASV) a server otvorí náhodný port, ktorého číslo pošle klientovi. Klient potom vytvorí nové spojenie dátového kanála na zadaný port.

Pretože spojenie dátového kanála začína klient, väčšina smerovačov/firewallov dokáže toto spojenie správne spracovať, a to aj v prípade zabezpečeného prenosu.

Poznámka

Spojenie každého klienta vyžaduje nové číslo portu na strane servera, a tak vyžaduje pomerne benevolentné nastavenie firewallu servera, najmä ak je server za NAT.

FileZilla

FileZilla je slobodný softvér, dostupný za podmienok licencie GPL 2+, ktorý poskytuje prenos súborov pomocou FTP, FTPS a SFTP a je dostupný pre Linux i Windows, a to vo forme inštalátora i prenosnej aplikácie.

Umožňuje vytvoriť viacero spojení (lokalít):

  1. v paneli nástrojov kliknite na ikonu Správca lokalít
  2. v správcovi lokalít kliknite na tlačidlo Nová lokalita
  3. v záložke Základné zadajte:
    • typ protkolu – FTP
    • meno (prípadne aj port) servera (hostiteľa)
    • typ šifrovania – na začiatok zvoľte bez šifrovania
    • prihlasovacie údaje – meno a heslo

Tip

Po nastavení lokality je ich zoznam dostupný nie len v Správcovi lokalít, ale aj v rozbaľovacom zozname – šípka vedľa ikony Správcu lokalít…

Základné nastavenie FileZilla Nastavenie prenosu FileZilla

Rada

FileZilla poskytuje aj ďalšie možnosti, napr. na zjednodušenie pripájania poskytuje záložky, a to ako pre lokálne, tak i vzdialené cesty.

Úlohy

  • nainštalujte virtuálny počítač s Windows so sieťou v režime sieťového mosta
  • vo virtuálnom stroji vytvorte dva účty pre spolužiakov
  • nastavte/povoľte zdieľanie súborov
  • vytvorte dve zdieľania – oba prístupné všetkým na čítanie a jedno prístupné na zápis pre jeden účet
  • vo virtuálnom stroji nainštalujte klienta FTP
  • nastavte pripojenie klienta FTP na server podľa pokynov majstra
  • vyskúšajte aktívne aj pasívne spojenie na server