Клієнт та сервер створюють окремі канали для передачі даних та обміну командами[1]. Можлива автентифікація клієнтів із використанням відкритого тексту, зазвичай це ім'я користувача (логін) та пароль. Також сервер може бути налаштований для роботи без автентифікації користувачів (так звані «анонімні сеанси»).
Для захисту даних (а також процесу автентифікації) використовують побудований на основі SSL/TLS варіант FTPS, або розширення протоколу SSH — SSH File Transfer Protocol (SFTP).
Протоколпередавання файлів (англ.File Transfer Protocol, FTP) дає можливість абоненту обмінюватися двійковими і текстовими файлами з будь-яким комп'ютером мережі, що підтримує протокол FTP. Установивши зв'язок з віддаленим комп'ютером, користувач може скопіювати файл з віддаленого комп'ютера на свій, або скопіювати файл зі свого комп'ютера на віддалений.
Перша реалізація протоколу задокументована в RFC 114 ще 1971 році, задовго до існування протоколів TCP/IP[2]. Вона передбачала обмін між клієнтом і сервером повідомленнями, що складаються з заголовка (72 біт) і даних змінної довжини. Тема повідомлення містила у собі запит до FTP-сервера або відповідь від нього, тип і довжину переданих даних. Як дані передавалися параметри запиту (наприклад, шлях і ім'я файлу), інформація від сервера (наприклад, список файлів у каталозі) і самі файли. Таким чином, команди і дані передавалися по одному і тому ж каналу.
У 1972 р. протокол був повністю змінений, і прийняв вигляд, близький до сучасного. Команди з параметрами від клієнта та відповіді сервера передаються по Telnet-з'єднанню (канал керування), для передавання власне даних створюється окреме з'єднання (канал даних).
Наступні редакції додали можливість роботи в пасивному режимі, пересилання файлів між FTP-серверами, ввели команди отримання інформації, зміни поточного каталогу, створення і видалення каталогів, збереження файлів під унікальним ім'ям. Деякий час існували команди для пересилання електронної пошти через FTP, проте згодом їх виключили з протоколу.
У 1980 р. FTP-протокол став використовувати TCP. Остання редакція протоколу випущена в 1985 р. У 1997 р. з'явилося доповнення до протоколу, що дозволяє шифрувати і підписувати інформацію в каналі керування і каналі даних. У 1999 р. випущено додаток, присвячений інтернаціоналізації протоколу, яке рекомендує використовувати кодування UTF-8 для команд і відповідей сервера і визначає нову команду LANG, що встановлює мову відповідей.
↑Forouzan, B.A. (2000). TCP/IP: Protocol Suite(англ.) (вид. 1st). New Delhi, India: Tata McGraw-Hill Publishing Company Limited.
↑ абKozierok, Charles M. (2005). The TCP/IP Guide v3.0. Tcpipguide.com. Архів оригіналу за 11 січня 2021. Процитовано 8 січня 2021.
↑Архівована копія. Архів оригіналу за 1 грудня 2021. Процитовано 1 грудня 2021.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)