Spis treści 6 sekcji
Serwer FTP obsługuje połączenia z klientami i pozwala wysyłać, pobierać, usuwać oraz zmieniać nazwy plików.1
W tym artykule opisano jego działanie, dane dostępowe, konfigurację i bezpieczeństwo połączeń. Polecenia FTP STOR, RETR i DELE odpowiadają kolejno za wysyłanie, pobieranie i usuwanie plików. Do zmiany nazwy służą RNFR i RNTO2.
Czym jest serwer FTP i do czego służy?
Serwer FTP udostępnia pliki klientom FTP. Można go używać do wymiany dużych plików, przechowywania kopii zapasowych i udostępniania dokumentów zespołowi1.
Przy planowaniu kopii warto pamiętać o zasadzie 3-2-1. Zakłada ona trzy kopie danych na dwóch rodzajach nośników, w tym jedną poza siedzibą, na przykład na zdalnym serwerze3.
Serwer FTP przechowuje pliki w katalogach, a klient FTP daje użytkownikowi dostęp do udostępnionych zasobów. To, co można z nimi zrobić, zależy od sposobu udostępnienia serwera i uprawnień konta4.
Jakie są rodzaje serwerów FTP?
Publiczny serwer FTP może udostępniać pliki do pobrania bez logowania. Prywatny serwer FTP wymaga autoryzacji użytkownika1. SFTP przesyła pliki przez SSH i jest odrębnym protokołem, nie odmianą FTP.
FTP zestawia osobne połączenia sterujące i danych; SFTP prowadzi transfer w ramach połączenia SSH5.
Tabela zestawia sposoby udostępniania plików według wymogu logowania i używanego protokołu. Domyślny port FTP to 21, a SFTP – 226.
| Rozwiązanie | Dostęp | Protokół |
|---|---|---|
| Publiczny serwer FTP | Pobieranie może działać bez logowania | FTP |
| Prywatny serwer FTP | Wymagana autoryzacja użytkownika | FTP |
| Serwer SFTP | Dostęp do konta użytkownika | SFTP przez SSH |
Publiczny dostęp pasuje do plików, które każdy ma móc pobrać bez konta. Jeśli zasoby są przeznaczone dla wskazanych osób, potrzebny jest dostęp prywatny. SFTP warto rozpatrzyć osobno, gdy transfer ma przebiegać przez SSH.
Jakie korzyści daje serwer FTP przy przesyłaniu plików?
Serwer FTP daje użytkownikom wspólne miejsce na pliki, więc nie trzeba przekazywać każdej kopii osobno. Dokumenty można pobierać z udostępnionych katalogów, a osoba zarządzająca zasobami może porządkować je w folderach.
Odpowiedź FTP o kodzie 550 może oznaczać, że plik lub katalog jest niedostępny, między innymi z powodu braku uprawnień2.
Kopia zapasowa na serwerze FTP pomaga odzyskać dane, o ile pliki da się ponownie pobrać i odtworzyć. Samo ich wysłanie nie dowodzi, że kopia zawiera wszystko, co potrzebne.
Integralność pobranego pliku można sprawdzić, porównując jego 256-bitowy skrót SHA-256 ze skrótem oryginału. Taka kontrola nie zastępuje jednak próby odtworzenia kopii7.
Jak działa przesyłanie plików przez serwer FTP?
Przesyłanie przez serwer FTP zaczyna się od połączenia klienta z serwerem. Następnie użytkownik wybiera katalog i uruchamia transfer. Kod odpowiedzi FTP 150 oznacza, że serwer przygotowuje się do otwarcia połączenia danych potrzebnego do przesłania pliku2.
- Klient FTP nawiązuje połączenie z serwerem i uzyskuje dostęp wynikający z uprawnień użytkownika.
- Katalog na serwerze wskazuje miejsce, z którego klient pobierze plik lub do którego go wyśle.
- Transfer pliku przenosi dane między urządzeniem użytkownika a serwerem. Kierunek zależy od wybranej operacji.
Wysłany plik trafia do wybranego katalogu serwera, a pobrany – na urządzenie użytkownika. Polecenie FTP SIZE zwraca rozmiar pliku w bajtach. Przy pobieraniu binarnym można dzięki temu porównać go z rozmiarem pobranego pliku8.
Czym są dane dostępowe i parametry połączenia FTP?
Dane dostępowe do serwera FTP wskazują serwer i użytkownika, a ustawienia połączenia określają sposób komunikacji. Opisana konfiguracja FileZilla wymaga 3 pól: adresu serwera, nazwy użytkownika i hasła. Dane te można uzyskać od firmy hostingowej9.
Po wpisaniu nazwy użytkownika serwer może zwrócić kod 331. Oznacza on, że do zalogowania potrzebne jest hasło2.
Adres serwera wskazuje cel połączenia, a nazwa użytkownika i hasło służą do logowania. Port określa usługę, z którą łączy się klient. Tryb aktywny lub pasywny rozstrzyga, która strona inicjuje połączenie danych.
Do ustalenia sposobu zestawienia tego połączenia służą polecenia PORT w trybie aktywnym i PASV w pasywnym2.
Jakich portów używa FTP?
FTP domyślnie używa portu 21 do połączenia sterującego. Tą drogą klient wysyła polecenia do serwera1. SFTP standardowo korzysta z portu 22 i przesyła pliki przez SSH1.
Połączenie sterujące FTP różni się od połączenia danych używanego podczas transferu pliku.
Samo poprawne logowanie nie gwarantuje więc, że przesyłanie zadziała przy danej konfiguracji sieci10.
Jak przebiega połączenie FTP i czym różnią się tryb aktywny oraz pasywny?
Połączenie FTP rozpoczyna sesja sterująca, ale do przesłania pliku potrzebne jest osobne połączenie danych. Tryby aktywny i pasywny różnią się tym, która strona je inicjuje.
W trybie pasywnym serwer odpowiada na PASV kodem 227 i przekazuje klientowi adres oraz port oczekujące na połączenie danych2.
Tabela pokazuje przebieg sesji oraz wymagania sieciowe obu trybów.
| Etap lub tryb | Przebieg i wymagania |
|---|---|
| Połączenie sterujące | Klient FTP łączy się z serwerem i przekazuje dane logowania. |
| Tryb aktywny FTP | Serwer inicjuje połączenie danych do klienta. Zapora po stronie klienta musi je dopuszczać. |
| Tryb pasywny FTP | Klient inicjuje połączenie danych do serwera. Zapora po stronie serwera musi dopuszczać połączenie z portem wskazanym przez serwer. |
Wybór trybu FTP zależy od tego, po której stronie sieć dopuszcza przychodzące połączenie danych. W klasycznym trybie aktywnym serwer inicjuje je ze swojego standardowego portu źródłowego TCP 2011.
Czym jest oprogramowanie serwera FTP i jak je zainstalować?
Oprogramowanie serwera FTP przyjmuje połączenia i udostępnia wskazane katalogi. Taką rolę pełni FileZilla Server. Z kolei FileZilla Client, WinSCP i Cyberduck służą użytkownikom do łączenia się z serwerem.
Domyślny port interfejsu administracyjnego FileZilla Server to 14148. Służy do zarządzania serwerem, nie do połączeń klientów FTP12.
Instalacja programu serwerowego na własnej maszynie oznacza także utrzymanie systemu i konfigurację dostępu. Przy usłudze hostingowej użytkownik korzysta z serwera dostawcy, zamiast instalować taki program na swoim komputerze. Najpierw trzeba więc ustalić, czy potrzebny jest serwer, czy tylko klient do obsługi plików.
Jak wybrać oprogramowanie do serwera FTP?
Program serwera FTP dobiera się do miejsca instalacji oraz sposobu obsługi kont i uprawnień do katalogów. IIS jest składnikiem systemu Windows, w którym można uruchomić usługę FTP. FileZilla Server to odrębny program serwerowy. Klient FTP nie zastąpi żadnego z nich, bo nie przyjmuje połączeń od innych użytkowników.
- System operacyjny serwera określa, jakie oprogramowanie można na nim zainstalować.
- Konta i uprawnienia wskazują użytkowników, którzy uzyskają dostęp do poszczególnych katalogów.
- Utrzymanie usługi obejmuje konfigurację serwera, aktualizacje programu i kontrolę dostępu.
Program serwerowy musi działać na wybranym systemie i pozwalać nadać użytkownikom potrzebne uprawnienia. W FileZilla Server port 14148 służy do administracji, a nie do obsługi klientów FTP.
Jak uruchomić serwer FTP w FileZilla Server?
FileZilla Server może udostępniać pliki po instalacji programu i skonfigurowaniu dostępu. Administrator ustawia katalogi, konta użytkowników oraz uprawnienia do pracy z plikami. Interfejs administracyjny domyślnie korzysta z portu 14148.
- Instalator FileZilla Server umieszcza program na maszynie, która ma przyjmować połączenia.
- Konfiguracja katalogów wskazuje zasoby udostępniane przez serwer.
- Konfiguracja użytkowników przypisuje kontom dostęp do wybranych katalogów i określa dozwolone operacje.
- Uruchomiona usługa pozwala klientowi nawiązać połączenie zgodne z konfiguracją serwera i sieci.
Serwer obsłuży pliki, jeśli usługa działa, a użytkownik ma uprawnienia do odpowiedniego katalogu. Po instalacji administrator powinien sprawdzić logowanie i wykonać dozwoloną operację na pliku.
Po co instalować FileZilla Client do obsługi serwera FTP?
FileZilla Client pozwala połączyć się z serwerem i pracować z plikami z własnego urządzenia. To klient, nie serwer: inicjuje połączenie z usługą działającą na innym komputerze. Może użyć do tego domyślnego portu FTP 21.
FileZilla jest dostępna w wersji darmowej i płatnej wersji Pro9. Jeśli serwer działa już w innym miejscu, do korzystania z niego nie trzeba instalować FileZilla Server na urządzeniu użytkownika.
Bezpieczeństwo i dostępność połączeń FTP
Bezpieczeństwo serwera FTP zależy od ochrony przesyłanych danych i uprawnień użytkowników. Na dostępność wpływają z kolei działanie usługi i konfiguracja sieci. FTP domyślnie korzysta z portu 21, ale udane logowanie nie dowodzi, że można wyświetlić katalog lub wysłać plik.
Kontrola dostępu ogranicza użytkownika do przydzielonych katalogów i operacji.
Test połączenia powinien obejmować zarówno logowanie, jak i próbę wykonania operacji dozwolonej dla danego konta13.
Czy połączenie FTP jest bezpieczne?
Standardowy FTP nie ma wbudowanego szyfrowania. Protokół SFTP szyfruje natomiast dane przesyłane między klientem a serwerem1.
Jeśli transfer wymaga ochrony danych, SFTP spełnia ten wymóg i standardowo używa portu 22. Standardowy FTP nie zapewnia takiej ochrony.
SFTP nadaje się do przesyłania plików wymagających szyfrowania. Szyfrowanie nie zastępuje jednak ograniczenia dostępu do katalogów ani ochrony konta użytkownika.
Serwer FTP w skrócie: działanie, zastosowania i bezpieczeństwo
Serwer FTP udostępnia pliki klientom, a zakres dostępnych operacji wynika z uprawnień konta. Przy wyborze sposobu wymiany plików liczą się cel udostępnienia, krąg użytkowników i wymagana ochrona transferu.
FTP standardowo używa portu 21, a SFTP – 22.
- Udostępnianie plików wymaga wskazania katalogu dostępnego dla właściwych użytkowników.
- Uprawnienia użytkownika określają operacje, które konto może wykonać w udostępnionym katalogu.
- Ochrona transferu wymaga połączenia zgodnego z zasadami bezpieczeństwa przesyłanych danych.
Jak sprawdzić, czy serwer FTP przyjmuje połączenia?
Serwer FTP przyjmuje połączenia, gdy klient może nawiązać sesję, zalogować się i wykonać dozwoloną operację. Sprawdzenie tych etapów pomaga odróżnić problem sieciowy od błędu konta lub uprawnień. Domyślny port połączenia sterującego FTP to 21.
- Połączenie z serwerem można sprawdzić w kliencie, używając adresu i ustawień przypisanych do usługi. Błąd na tym etapie kieruje uwagę na usługę i sieć.
- Logowanie użytkownika można sprawdzić danymi przypisanymi do konta. Odrzucenie logowania wskazuje na problem z uwierzytelnieniem.
- Dostęp do katalogu można sprawdzić przez wyświetlenie plików i wykonanie dozwolonej operacji. Błąd po zalogowaniu kieruje uwagę na uprawnienia albo połączenie danych.
Wynik testu pokazuje, na którym etapie połączenie lub praca z plikami przestaje działać.
Konfiguracja serwera FTP i codzienna obsługa plików
Konfiguracja serwera FTP pozwala udostępnić pliki wybranym użytkownikom. Obejmuje ustawienie portu, folderów i metod autoryzacji1. Domyślny port połączenia sterującego FTP to 21.
Pliki są ułożone w katalogach, a dostęp użytkowników do folderów zależy od przyznanych im uprawnień1.
Uprawnienia do folderu powinny odpowiadać zadaniom użytkownika. Pobieranie wymaga dostępu do odczytu, a wprowadzanie zmian – dostępu do zapisu. Opcja „Enable Write Access” pozwala użytkownikom zmieniać zawartość folderu14.
Jak połączyć się z serwerem FTP i pobrać pliki?
Połączenie z serwerem FTP pozwala pobrać plik po otwarciu właściwego katalogu w kliencie FTP lub systemowym Eksploratorze. Aby połączyć się z kontem FTP przez Eksplorator, trzeba wpisać adres serwera i dane logowania15. Domyślny port FTP to 21.
- Klient FTP lub Eksplorator należy otworzyć na urządzeniu, na które chcesz pobrać plik.
- Połączenie z serwerem należy nawiązać danymi przypisanymi do konta.
- Katalog z plikiem należy otworzyć zgodnie z uprawnieniami konta.
- Plik należy pobrać do wybranego folderu na urządzeniu.
Pobrany plik znajdziesz w folderze wybranym na swoim urządzeniu.
Jakie ograniczenia ma serwer FTP?
Obsługa plików przez FTP wymaga uwagi przy usuwaniu plików i nadawaniu uprawnień. Plik usunięty z serwera FTP za pomocą Eksploratora omija kosz15. Konto z dostępem do odczytu nie pozwala zmieniać zawartości folderu.
Standardowy FTP na porcie 21 nie zapewnia też wbudowanego szyfrowania.
FTP służy do przesyłania plików, a nie do synchronizacji takiej jak w Google Drive, Dropbox czy OneDrive. Codzienne operacje dostępne na serwerze zależą od uprawnień przydzielonych użytkownikowi16.
Jak rozwiązać problemy z połączeniem i przesyłaniem plików?
Problem z serwerem FTP najlepiej rozpoznać po etapie, na którym operacja się zatrzymuje. Może to być nawiązanie połączenia, logowanie albo praca z plikiem. Przyczyną bywają błędne dane logowania, uprawnienia lub porty blokowane przez zaporę sieciową1.
Połączenie sterujące FTP domyślnie korzysta z portu 21.
- Błąd połączenia wymaga sprawdzenia adresu serwera, ustawionego portu i reguł zapory sieciowej.
- Błąd logowania wymaga ponownego wpisania nazwy użytkownika i hasła przypisanych do konta.
- Błąd pobierania lub zapisu wymaga sprawdzenia uprawnień konta do danego katalogu i pliku.
Etap wystąpienia błędu oraz odpowiedź serwera pomagają zawęzić przyczynę, choć nie zawsze wskazują ją jednoznacznie10.
Źródła
- ↑Serwer FTP – co to jest i gdzie znajdują się do niego dane? https://www.vd.pl/co-to-jest-serwer-ftp/
- ↑RFC 959 — File Transfer Protocol https://www.rfc-editor.org/rfc/rfc959.html
- ↑CISA — Data Backup Options https://www.cisa.gov/sites/default/files/publications/data_backup_options.pdf
- ↑cPanel & WHM Documentation — FTP Accounts ([docs.cpanel.net](docs.cpanel.net https://docs.cpanel.net/cpanel/files/ftp-accounts/
- ↑FileZilla Pro — What is SFTP https://filezillapro.com/what-is-sftp/
- ↑FileZilla Pro — Setup Guide: Configure Your First Connection https://filezillapro.com/docs/v3/basic-usage-instructions/set-up-filezilla-filezilla-pro/
- ↑NIST — FIPS 180-4, Secure Hash Standard https://csrc.nist.gov/files/pubs/fips/180-4/final/docs/fips180-4.pdf
- ↑RFC 3659 — Extensions to FTP https://www.rfc-editor.org/rfc/rfc3659.html
- ↑Serwer FTP – Jak zainstalować program FileZilla i połączyć się z serwerem FTP? https://nexis.pl/jak-zainstalowac-serwer-ftp-filezilla/
- ↑RFC Editor — RFC 959: File Transfer Protocol ([rfc-editor.org](rfc-editor.org https://www.rfc-editor.org/info/rfc959/
- ↑RFC 1579 — Firewall-Friendly FTP https://www.rfc-editor.org/rfc/rfc1579.html
- ↑FileZilla Pro — How to Configure FileZilla Server https://filezillapro.com/docs/server/basic-usage-instructions-server/configure-filezilla-server/
- ↑Microsoft Learn — FTP Authorization ([learn.microsoft.com](learn.microsoft.com https://learn.microsoft.com/en-us/iis/configuration/system.ftpserver/security/authorization/
- ↑Jak skonfigurować i używać serwer FTP na routerze Archer C8? | Tapo https://www.tapo.com/pl/faq/1678/
- ↑Jak obsługiwać serwer FTP korzystając z systemowego Eksploratora? – Infor.pl https://mojafirma.infor.pl/e-firma/warsztat/241481,Jak-obslugiwac-serwer-FTP-korzystajac-z-systemowego-Eksploratora.html
- ↑Dropbox — FTP Alternative File Transfer ([dropbox.com](dropbox.com https://www.dropbox.com/ftp