Serwer FTP
Serwer FTP (ang. File Transfer Protocol) to oprogramowanie umożliwiające przesyłanie plików między komputerami przez sieć komputerową, najczęściej przez sieć lokalną lub Internet. FTP jest jednym z najstarszych protokołów komunikacyjnych, działającym w modelu klient-serwer i opartym na architekturze TCP/IP.
Jak działa serwer FTP?
Serwer FTP nasłuchuje na porcie TCP 21 (domyślnie) i oczekuje na połączenia przychodzące od klientów FTP.
Klient FTP – aplikacja służąca do nawiązywania połączenia z serwerem
FTP. Może działać w trybie tekstowym (CLI – np.
ftp,
lftp) lub graficznym (
GUI – np. FileZilla, WinSCP).
Serwer FTP – oprogramowanie działające na maszynie serwera (hosta), które umożliwia dostęp do wskazanych zasobów plikowych.
Uwierzytelnienie – klient może łączyć się jako użytkownik anonimowy (anonymous) lub podać nazwę użytkownika i hasło.
Transmisja danych – dane są przesyłane w oddzielnym kanale (dane – port 20 lub dynamiczne) poza kanałem sterującym (komendy – port 21).
Tryby połączenia
FTP obsługuje dwa tryby połączeń:
Tryb pasywny (PASV) – klient inicjuje oba kanały (sterujący i danych); popularniejszy w sieciach z NAT.
Tryb aktywny (PORT) – klient otwiera kanał sterujący, a serwer nawiązuje połączenie danych z klientem.
Bezpieczeństwo
Protokół FTP nie szyfruje danych, dlatego nie zaleca się jego stosowania bez warstwy zabezpieczeń. Alternatywy:
FTPS (FTP Secure) –
FTP z użyciem SSL/TLS
SFTP (SSH File Transfer Protocol) – całkowicie inny protokół działający w ramach SSH, bezpieczniejszy i nowocześniejszy
WebDAV – HTTP/HTTPS z obsługą plików
Aby zwiększyć bezpieczeństwo:
Ogranicz dostęp za pomocą firewalla
Korzystaj z szyfrowanych alternatyw (SFTP, FTPS)
Używaj logowania tylko dla znanych użytkowników
Monitoruj logi serwera
FTP
Popularne implementacje serwerów FTP
| Nazwa | Tryb pracy | Obsługa FTPS/SFTP | Komentarz |
| vsftpd | systemowy | FTPS | Bardzo bezpieczny, minimalistyczny, szybki |
| ProFTPD | systemowy | FTPS/SFTP (z modami) | Wysoka konfigurowalność, modularność |
| Pure-FTPd | systemowy | FTPS | Bezpieczny, prosty w konfiguracji |
| ftpd | klasyczny | nie | Historyczna implementacja BSD/Linux |
Zastosowania domowe i biurowe
Serwer plików dla starszych urządzeń i oprogramowania
Udostępnianie backupów (automatyczne przesyłanie)
Praca z urządzeniami IoT lub systemami NAS
-
Interoperacyjność z systemami wbudowanymi i routerami
Przykład połączenia w CLI
ftp 192.168.1.10
Name: użytkownik
Password: ********
ftp> ls
ftp> get plik.txt
ftp> put lokalny_plik.txt
ftp> bye
Uwagi końcowe
FTP pozostaje użyteczny w niektórych zastosowaniach, ale ze względu na brak szyfrowania i podatność na sniffing/tracking, w nowoczesnych instalacjach powinien być zastępowany przez SFTP lub inne bezpieczne protokoły.
Więcej szczegółów dotyczących podobnych zagadnień
| Kategoria Programowanie | Terminal | Software | Hardware |
|
|
|
|
|