FTP (File Transfer Protocol) to protokół służący do przesyłania plików między klientem a serwerem. Wykorzystuje on protokół TCP, który umożliwia przesyłanie plików w obu kierunkach (SERWER → KLIENT oraz KLIENT → SERWER).
Domyślnie używa portu 20 (przesyłanie danych) i portu 21 (logowanie/wiadomości). Zazwyczaj dostęp do danych jest autoryzowany, ale czasami zasoby muszą być dostępne dla większej liczby odbiorców, dlatego stosuje się anonimowy dostęp użytkowników. Wgrywanie plików jest zawsze wykonywane przez uprawnionego użytkownika (posiadającego login i hasło).
Do poprawnego działania protokołu FTP wymagane jest zestawienie dwóch połączeń – kontrolnego i do wysyłania plików.