Sezon II — Opowieść Kartografa, odcinek 7

WPROWADZENIE

Sieć umiała już przesyłać wiadomości i prowadzić rozmowy. Ale wiadomość to nie to samo co plik — a ludzie potrzebowali przenosić między maszynami rzeczy większe, cięższe i konkretne: programy, dokumentacje, obrazy dysków, kopie zapasowe.

Duch pyta Kartografa: czyli zanim internet był dla ludzi, był dla plików? W dużej mierze tak. FTP powstał w 1971 roku, wcześniej niż większość rzeczy z tego sezonu, i przez dekady był jedynym mostem między twoim komputerem a serwerem po drugiej stronie świata. Nie był piękny. Nie miał obrazków ani kolorów. Dał za to ludziom władzę nad plikami na odległość — a to zmieniło wszystko.

TRANSKRYPCJA ODCINKA

Nagłówek. Kartograf i Duch nad schematem połączenia, obok tomy TELNET, RCP, CP/M, UUCP oraz RFC 959, RFC 2228, RFC 2428, RFC 3659. Kartograf: Zanim strony stały się widoczne, pliki musiały znaleźć drogę. Duch: Czyli zanim internet był dla ludzi, był dla plików? Schemat FTP POŁĄCZENIE: klient ↔ serwer, połączenie sterujące (port 21) i połączenie danych (port 20).

Panel 1. Komputer, katalog i serwer. Podpis: Co to jest FTP? FTP (File Transfer Protocol) to jeden z najstarszych protokołów internetowych. Powstał w 1971 roku, a jego opis (RFC 959) ukazał się w 1985 roku. FTP służy do przesyłania plików między komputerem lokalnym a zdalnym serwerem.

Panel 2. Klient i serwer z dwoma portami. Podpis: Jak to działa? FTP używa dwóch połączeń TCP: połączenie sterujące (control) – port 21 – do wysyłania komend i odbierania odpowiedzi; połączenie danych (data) – port 20 – do przesyłania właściwych plików. Tryb aktywny (PORT) był domyślny. Tryb pasywny (PASV) powstał później, by ułatwić działanie przez firewalle.

Panel 3. Lista komend. Podpis: Podstawowe komendy. FTP ma prosty język poleceń tekstowych. USER nazwa – podaj użytkownika. PASS hasło – podaj hasło. LIST – listuj pliki. RETR plik.txt – pobierz plik. STOR plik.txt – wyślij plik. CWD katalog– zmień katalog. QUIT – zakończ sesję. Adnotacja: Proste, czytelne i zaskakująco trwałe.

Panel 4. Mapa świata z siecią połączeń. Podpis: Gdzie FTP było niezastąpione? Publikacja stron WWW (zanim był hosting z panelem). Wymiana oprogramowania i patchy. Dystrybucja dużych plików ISO, dokumentacji, backupów. Administrowanie serwerami bez graficznych narzędzi.

Panel 5. Postacie w kapturach i znak ostrzegawczy. Podpis: Bezpieczeństwo – achillesowa pięta. FTP przesyła dane w postaci jawnej. Użytkownik, hasło i pliki – wszystko czytelne w sieci. Dlatego z czasem powstały bezpieczne rozszerzenia: FTPS – FTP over TLS/SSL. SFTP – przez SSH (inny protokół). FTPES – rozszerzenie protokołu (dziś rzadko używane).

Panel 6. Okno menedżera połączeń. Podpis: FTP w praktyce. Kiedyś każdy webmaster miał swojego klienta FTP: FileZilla (dziś wciąż popularny), WinSCP, CuteFTP, Total Commander. Łączyłeś się, przesyłałeś pliki, odświeżałeś stronę i modliłeś się, żeby coś nie zepsuć. To była codzienność sieci z lat 90.

Panel 7. Radioteleskop i obserwatoria. Podpis: Ciekawostki. FTP był wykorzystywany także w astronomii i badaniach naukowych do przesyłania danych. RFC 959 ma ponad 60 stron, ale jego serce to prostota. W 2009 roku IANA oficjalnie zarezerwowała port 21 dla FTP. FTP żyje dalej – wbudowany w systemy, routery, NAS-y i urządzenia IoT.

Panel 8. Kamienna brama z napisem FTP 1971 i symbolem nieskończoności. Podpis: Dziedzictwo. FTP otworzył drzwi do zdalnych zasobów. To on zbudował fundament dla wszystkiego, co dziś wysyłamy jednym kliknięciem. Bez FTP nie byłoby stron, aktualizacji, repozytoriów ani chmur. Zanim był świat widzialny, były pliki w drodze.

Kartograf podsumowuje. FTP nie było piękne. Nie miało obrazków ani kolorów. Ale dało ludziom władzę nad plikami na odległość. To był pierwszy most, po którym przeszedł internet.

Duch zapamiętuje. FTP to transfer plików przez sieć. Używa portów 21 (sterowanie) i 20 (dane). Komendy są tekstowe i proste. Bezpieczne wersje: FTPS, SFTP. Podstawa hostingów, backupów i wymiany danych.

Puenta odcinka: Zanim powstały strony, powstały społeczności. Każdy głos był ważny.

ZASADA TEGO ODCINKA

Protokół, który powstał przed pytaniem o bezpieczeństwo, nie nauczy się go później.

FTP przesyła login, hasło i zawartość plików otwartym tekstem. Nie z niedbalstwa — po prostu w 1971 roku sieć była małym, zaufanym środowiskiem, w którym pytanie „a co, jeśli ktoś to podsłucha" nie miało praktycznego sensu. Kiedy zaczęło je mieć, okazało się, że tego założenia nie da się cofnąć. Powstały nakładki: FTPS, SFTP, FTPES. Wszystkie są obejściami wokół decyzji projektowej, której nie da się już zmienić w samym protokole.

To najstarsza wersja problemu, który wraca w tym komiksie stale. Dane strukturalne z piętnastego odcinka pierwszego sezonu też powstały w świecie, w którym zakładano dobrą wolę deklarującego. robots.txt również. Oba działają dokładnie tak dobrze, jak dobre są intencje uczestników — i oba są dziś czytane przez systemy, dla których to założenie bywa naiwne. Warto o tym pamiętać, gdy kusi, żeby uznać jakiś mechanizm za zabezpieczenie, podczas gdy jest on tylko konwencją.

Drugi wątek jest praktyczny i dotyczy każdego, kto prowadzi stronę. FTP wciąż działa — w routerach, NAS-ach, na starych hostingach, w skryptach wdrożeniowych, o których nikt nie pamięta. To dokładnie ta kategoria dostępu, o której mówił siedemnasty odcinek pierwszego sezonu: klucz, który nikomu nie przeszkadza, bo nikt go nie używa, i właśnie dlatego nikt go nie obserwuje. Konto FTP założone przy wdrożeniu strony w 2014 roku ma dziś dokładnie te same uprawnienia co wtedy, a jego hasło leci przez sieć otwartym tekstem przy każdym połączeniu.

Trzecia rzecz to sam kształt protokołu, który przetrwał pół wieku: kilka komend, każda robiąca jedną rzecz, wszystko czytelne dla człowieka. Prostota nie była ograniczeniem epoki, tylko powodem, dla którego FTP dało się zaimplementować wszędzie — od superkomputera po urządzenie IoT. Ta sama lekcja co przy IRC i NNTP: przeżywają nie rozwiązania najbogatsze, tylko te, które są na tyle proste, że każdy potrafi je poprawnie odtworzyć.

ZAPOWIEDŹ

Pliki są już w drodze, ale nikt nie wie, gdzie ich szukać. W następnym odcinku pojawia się pierwszy bibliotekarz sieci — ktoś, kto zaczyna spisywać adresy wszystkich serwerów. Pierwszy bibliotekarz (Archie)