FTP (
ang.
File Transfer Protocol – Protokół Transferu Plików) –
protokół
typu
klient-serwer
, który umożliwia przesyłanie
plików
z serwera i na
serwer
poprzez sieć
TCP/IP
. Protokół ten jest zdefiniowany przez
IETF
w
RFC 959
.
FTP jest protokołem 8-
bitowym
, dlatego nie wymaga specjalnego kodowania danych na postać 7-bitową, tak jak ma to miejsce w przypadku
poczty elektronicznej
(patrz standardy
MIME
,
base64
,
quoted-printable
,
uuencode
).
Do komunikacji wykorzystywane są dwa połączenia
TCP
. Jedno z nich jest połączeniem kontrolnym za pomocą którego przesyłane są np. polecenia do serwera, drugie natomiast służy do transmisji danych m.in. plików. FTP działa w dwóch trybach: aktywnym i pasywnym, w zależności od tego, w jakim jest trybie, używa innych
portów
do komunikacji.
Jeżeli FTP pracuje w trybie aktywnym, korzysta z portów: 21 dla poleceń (połączenie to jest zestawiane przez klienta) oraz 20 do przesyłu danych. Połączenie nawiązywane jest wówczas przez serwer. Jeżeli FTP pracuje w trybie pasywnym wykorzystuje port 21 do poleceń i port o numerze > 1024 do transmisji danych, gdzie obydwa połączenia zestawiane są przez klienta. W sieciach ukrytych za
firewallem
komunikacja z aktywnymi serwerami FTP jest możliwa, tylko pod warunkiem, jeżeli odpowiednie porty na firewallu (routerze) są zwolnione. Możliwe jest zainstalowanie wielu serwerów FTP na jednym i tym samym routerze. Warunkiem jest rozdzielenie portów przez router dla każdego serwera.
Dostęp anonimowy
Serwer FTP, zależnie od konfiguracji, może pozwalać na dostęp do jego zawartości bez podawania
hasła
. Zamiast niego powinno się podawać adres e-mail (wg
netykiety
). Często jednak nie jest to przestrzegane właśnie ze względu na anonimowy charakter usługi. Większość serwerów FTP loguje jednak każde połączenie i IP klienta.
Zobacz też