FTP розшифровується як File Transfer Protocol — протокол передачі даних. З його допомогою можна підключатися до інших комп’ютерів, щоб скачувати та завантажувати файли, а також керувати ними: встановлювати права доступу, створювати та редагувати текстові документи, додавати нові папки.

У статті розбираємося, як влаштована ця технологія, як нею користуватися і навіщо вона потрібна, якщо все те ж саме можна робити за допомогою HTTP.

Зміст

  1. Для чого потрібен FTP
  2. Порівняння FTP та HTTP
  3. FTP-сервер та FTP-клієнт
  4. Принцип роботи FTP

Навіщо потрібен FTP

FTP-протокол з’явився задовго до HTTP — коли інтернет тільки зароджувався і ще не було зручного способу передавати файли між комп’ютерами. Це одна з найстаріших технологій у світі комп’ютерних мереж.

З появою HTTP причин використовувати FTP майже не залишилося. HTTP вміє все те ж саме, плюс за цим протоколом працюють сайти. Немає сенсу використовувати два протоколи, якщо можна використовувати один.

Зараз протокол FTP використовується в основному для завантаження та віддаленого керування файлами на хостингу. І то провайдери зазвичай надають також і HTTP-варіант для цього — панель керування.

Перевага FTP над панелями керування у тому, що при роботі за цим протоколом все завжди виглядає однаково, до якого серверу ви б не підключилися. Це можна зробити у командному рядку, спеціальній безкоштовній програмі або навіть у стандартному менеджері файлів вашої ОС.

А панелі керування у багатьох провайдерів різні та не завжди однаково зручні. Наприклад, у популярній панелі cPanel під час завантаження файлів не можна завантажити папку з файлами — лише окремі файли. А папку потрібно створити заздалегідь. Дрібниця, але при роботі з FTP про це взагалі не доводиться замислюватися.

Плюс панель керування дають безкоштовно зазвичай лише на віртуальному хостингу. На VPS та виділеному сервері за неї потрібно доплачувати. У принципі є і безкоштовні варіанти, але вони часто трохи криві.

Чим FTP відрізняється від HTTP

Крім того, що для роботи з HTTP потрібен інтерфейс, а для роботи з FTP — ні, між цими двома протоколами є багато інших технічних відмінностей. Ось основні з них:

  • Модель з’єднання. Під час роботи за HTTP-протоколом між клієнтом і сервером встановлюється одиночне з’єднання, а під час роботи з FTP — множинне: одне з’єднання «керуюче» (для передачі команд), інше «інформаційне» (для передачі). При цьому для кожного файлу встановлюється нове інформаційне з’єднання.
  • Необхідність автентифікації. Щоб підключитися до FTP-сервера, потрібен логін та пароль. Їх створює адміністратор сервера. А якщо доступ до сервера має бути у всіх бажаючих, є анонімний режим, у якому логіном буде слово «anonymous», а паролем — адреса електронної пошти. Для підключення до сервера за HTTP логін та пароль не потрібні.
  • Використання сесій. При підключенні до сервера FTP створюється сесія і всі запити до сервера надсилаються в рамках неї. При використанні HTTP сесії не створюються, клієнт просто надсилає запити серверу.
  • Використання портів. При роботі з HTTP завжди використовуються тільки порти 80 і 443, а при роботі з FTP — кілька випадкових портів з діапазону 1024-65535. Докладніше про те, як саме вони призначаються, розповімо далі у статті.
  • Відновлення завантаження. FTP може відновлювати завантаження. Якщо з’єднання було розірвано, ви не втратите прогрес. При роботі з HTTP завантаження доведеться починати заново.
  • Безпека. Обидва протоколи передають дані у відкритому вигляді. Щоб їх не могли перехопити та прочитати зловмисники, варто використовувати зашифровані аналоги протоколів: HTTPs замість HTTP та FTPs замість FTP.
  • Швидкість завантаження. За інших рівних і HTTP і FTP передають дані приблизно однаково швидко. Різниця, якщо й буде, то невелика.

Це лише основні моменти. Якщо цікаво, ось більш детальний аналіз відмінностей між двома протоколами:

Порівняння FTP та HTTP

Що таке FTP-сервер та FTP-клієнт

FTP-сервер — це програма, яка приймає та обробляє вхідні запити за протоколом FTP. Її налаштовують на комп’ютері, до якого повинні підключатися.

На хостингу FTP-сервер встановлено за замовчуванням, інформацію для підключення до нього зазвичай надсилають у листі про активацію хостингу.

А ще за допомогою такої програми можна створити сховище для медіафайлів зі старого комп’ютера. Налаштовуєте програму, залишаєте комп’ютер увімкненим і їдете у відпустку. Вдень знімаєте фото та відео, увечері підключаєтеся до комп’ютера FTP з готелю, скидаєте файли, а на телефоні видаляєте, щоб не витрачати місце.

Популярні FTP-сервери:

FTP-клієнт — це програма для підключення до FTP-сервера та віддаленої роботи з файлами. Це може бути спеціальний додаток для роботи по FTP, командний рядок і навіть стандартний файловий менеджер Windows/Linux. Ось інструкція для кожного з варіантів:

Як підключитися до сервера за протоколом FTP

Популярні FTP-клієнти:

Як працює FTP

Як ви вже знаєте з попередніх розділів, для роботи за протоколом FTP клієнт та сервер встановлюють один з одним два з’єднання: спочатку керуюче (для передачі команд), потім інформаційне (для передачі даних). Для кожного з’єднання використовуються випадкові порти з діапазону 1024-65535.

Що це: ФТП сервер та ФТП клієнт

Використання випадкових портів ускладнює роботу з FTP, тому що вхідні з’єднання до подібних портів з міркувань безпеки часто блокують файрволи. Щоб уникнути подібних проблем, є два режими роботи FTP: активний та пасивний.

Активний режим FTP влаштований так, що спочатку клієнт звертається до сервера, щоб встановити з’єднання, а потім вже сервер звертається до клієнта, щоб встановити інформаційне з’єднання.

Якщо відкинути технічні деталі, процес підключення виглядає так:

  1. Клієнт підключається з випадкового порту до порту 21 сервера, відправляє команду PORT і номер порту, до якого повинен підключитися сервер.
  2. Сервер підключається з порту 20 до вказаного клієнтом порту і встановлює інформаційне з’єднання. Потім по цих портах передаються файли.

У такому режимі роботи FTP, якщо на комп’ютері користувача стоїть файрвол, він може заблокувати спробу сервера підключитися до нетиповому порту. Без файрвола все працюватиме без проблем.

Що таке ФТП — Активний режим роботи протоколу

Пасивний режим FTP відрізняється від активного тим, що обидва з’єднання ініціює клієнт. Це вирішує проблему з файрволом, оскільки з’єднання, які встановлює клієнт, не блокуються.

У спрощеному вигляді процес підключення виглядає так:

  1. Клієнт підключається з випадкового порту до порту 21 сервера і відправляє команду PASV. Сервер відповідає та вказує номер порту, до якого повинен підключитися клієнт.
  2. Клієнт підключається з випадкового порту до порту, який вказав сервер і встановлює інформаційне з’єднання. Після цього цими портами передаються файли.
Що таке ФТП — Пасивний режим роботи протоколу

Що далі

Наступного разу, коли потрібно завантажити або відредагувати файли на хостингу, спробуйте зробити це за протоколом FTP. Розібратися в цьому допоможе наша інструкція з використання найпопулярнішого FTP-клієнта:

Як працювати з файлами у FileZilla

Чи була ця стаття корисною?

Дякуємо за відгук!