FTP - це що таке і як з ним працювати?

FTP - це що таке і як з ним працювати?

FTP - це протокол передачі даних з комп 'ютера користувача на сервер, з сайту на жорсткий диск або між серверами. Він з 'явився задовго до HTTP. Користувачі можуть автентифікуватися і виконувати потрібні дії анонімно, чи є ця функція передбачена. Сьогодні існують спеціалізовані програми для передачі даних за протоколом FTP і програми для веб-розробки з вбудованою функцією обміну даними.

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

За його допомогою можна копіювати файли з комп 'ютера на сервер і з сервера на комп' ютер. Одна з переваг використання FTP - це одночасне завантаження безлічі документів. Деякі програми надають можливість редагувати файли прямо на хостингу. Стандартне вікно клієнта поділене на дві частини:

  • у першому відображається все, що завантажено на сервер;
  • у другому - все, що знаходиться на комп 'ютері.

Крім того, використовуються пригадувальні вікна. Користувач виділяє документ, який хоче помістити на хостинг, і переносить його. Перед цим він повинен обов 'язково авторизуватися. Дані вказуються у форматі: @ назва ресурса.доменне ім 'я.

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

Вразливості

FTP - це дуже старий протокол. Він з 'явився набагато раніше HTTP і не розроблявся як захищений. Тому у нього багато проблем із захистом. Ось найголовніші:

  • спуф-атаки;
  • перехоплення даних користувача;
  • сніффінг;
  • захоплення портів.

Під час передачі через FTP файли не шифруються. Відповідно, всі команди, імена користувачів і паролі можуть бути перехоплені зловмисниками. Для цього використовуються безпечні версії, наприклад для FTP - це FTPS.

Безпечна передача даних

Існують такі методи відсилання даних, захищені від хакерських атак: FTPS, SFTP, а також передача FTP через SSH. З FTPS можна захистити сесію. FTP-server отримує команду AUTH TLS, після чого відхиляє з 'єднання, які не зашифровані.

У SFTP схожий список команд, як у FTP. Тут використовується протокол SSH, який шифрує весь трафік. Цим способом кодуються команди і дані. Відповідно, всі паролі та інша інформація, не призначена третім особам, не передається у відкритому вигляді.

Інший спосіб передачі через протокол SSH тунелює сесію через SSH-з 'єднання.

З 'єднання і обмін даними

Передбачено два можливих види роботи:

  • активний;
  • пасивний.

Вони відрізняються способом встановлення з 'єднання. Активний спосіб передбачає, що в програмі створюється tcp-з 'єднання з сервером і надсилається потрібний IP, порт. пасивний же потрібен, коли подібні з' єднання блокуються міжмережевим екраном. Тоді сервер повертає адресу і порт, потім юзер використовує отримані дані для з 'єднання.

У параметрах FTP можна вибрати такі режими передачі:

  • поточний;
  • блочний;
  • стислий.

При виборі першого режиму дані надсилаються у вигляді безперервного потоку. Обробка виконується за TCP. У звичайному режимі дані сегментуються і, як правило, відправляються в такому вигляді: блок заголовка, кількість байтів, поле даних. У стисненому методі всі дані стискаються одним алгоритмом і передаються значно швидше через те, що об 'єкт менше важить.

Авторизація

Для ідентифікації користувача і подальшого призначення прав для керування файлами використовується схема - ім 'я користувача/пароль. Надсилання імені здійснюється командою USER, а пароля - PASS.

Сервер приймає ці дані, якщо вони сходяться з тими, що вказані в базі даних. Далі клієнт отримує запрошення, після чого починається сесія. Іноді сервер підтримує можливість входу без облікових даних. Як правило, надається обмежений доступ для таких зв 'язків, використовується якесь стандартне ім' я, наприклад anonymous. Але найчастіше для авторизації потрібно ввести адресу діючої пошти, і надалі вона використовується, щоб увійти.

Відмінність від http протоколу

Властивість

FTP

HTTP

Можливість автентифікації

так

немає

Прийом

великі двійкові файли

невеликі текстові документи

Спосіб з "єднання

подвійний

одиночний

Передача

так

немає

Виконання дій над файловою системою

так

немає

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

Скорочення витрат трафіку і, відповідно, зменшення часу для обміну даними здійснюється за рахунок двійкового режиму передачі. Робота починається після того, як клієнт входить до сесії, і всі подальші операції проводяться в її рамках. Це одна з відмінних особливостей, адже протокол HTTP не запам 'ятовує інформацію про зареєстрованих користувачів - цю функцію виконують зовнішні методи.

Зв 'язок комп' ютер-клієнт за замовчуванням здійснюється на 21 порту і використовується для управління. Друге з 'єднання для передачі даних відкривається на двадцятому порту або будь-якому іншому, який правильно налаштований.

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

Існує FTP клієнтів для роботи з протоколом, але робота з ними будується за одним і тим же принципом. Все, що потрібно для передачі - перетягнути документ з комп 'ютера користувача в теку сервера або виконати ті ж самі дії за допомогою командного рядка.

  1. Після появи головного вікна у відповідних полях потрібно ввести назву вузла, ім 'я користувача, пароль, порт.
  2. Після успішної авторизації з 'являється список всього, що завантажено на сервер.
  3. Вам слід вибирати об 'єкт, який потрібно закачати на сервер з комп' ютера або з сервера на комп 'ютер.
  4. Позначення відповідного файла викликає контекстне меню за допомогою ПКМ, вибирайте потрібну дію: завантажити, додати до завдання, редагувати, вилучити, перейменувати, скопіювати адресу, налаштувати права доступу. Ці функції можуть змінюватися залежно від програми, що використовується.

Існує спосіб обміну двома серверами безпосередньо без закачування на комп 'ютері. Запитуються два з "єднання до різних серверів. На одному з них вибирається файл для передачі і вказується IP-адреса другого сервера. Для цього використовується FXP - протокол прямого обміну.

Головною перевагою застосування цього способу є висока швидкість скачування. Вона не залежить від пропускної здатності інтернет-з 'єднання користувача, який хоче перенести файл. Час, який знадобиться, залежить від швидкості з 'єднання між віддаленими FTP-серверами. Як правило, воно завідомо більше, ніж користувацьке.

Слід зазначити, що цей протокол став використовуватися зловмисниками для нанесення атак на інші сервери. Для запобігання подібних дій тепер перевіряють IP-адресу, і якщо виявляється невідповідність, вона блокується.

З "єднання FTP через переглядач

Для з 'єднання, як і при використанні спеціалізованих програм, користувачеві необхідно володіти логіном, паролем, IP-адресою. Саме з 'єднання відбувається при використанні командного рядка. Для цього потрібно ввести адресу такого формату: ftp://логін для входу: пароль сервера @ ip адреса. Наприклад, ftp://myname:mypassword@11.222.345.11. Якщо з 'єднання пройшло успішно, з' являється список всіх документів. Як правило, файли сайту зберігаються в теці public_html або www, залежно від типу хостингу.

Щоб скопіювати документ, його достатньо просто перетягнути. Цей спосіб не дозволяє переносити документи з одного сервера на інший. У переглядачі легко змінювати права для читання/запису. Для цього потрібно правою кнопкою миші вибрати файл, який вже є на сервері. Програма відкриє діалогове вікно налаштування. У ньому слід зазначити необхідний дозвіл.

FileZilla

Це один з найпопулярніших FTP у Windows-клієнтів. Працювати з цією програмою досить легко. Головне вікно поділено на п 'ять частин. Три з них відображають файлову структуру комп 'ютера, а чотири - сервери. У потрібних полях вказується логін, пароль, порт.

Якщо планується часте використання будь-якого з 'єднання, інформація для входу вказується в "Менеджері сайтів" ". Ви можете вибрати ідентифікацію, розподілити дані для входу до тек, додати коментар. Для перенесення файл потрібно виділити і перетягнути в робоче вікно, де відображена файлова структура комп 'ютера.

Total Commander

Щоб завантажити та завантажити файл за допомогою "Тотал командера", необхідно виконати наступну послідовність дій:

  1. Перейти до вкладки "Мережа".
  2. Виберіть "З 'єднатися з сервером".
  3. У вікні, що з 'явилося, натисніть кнопку "Додати".
  4. Вказати назву з "єднання, сервер, обліковий запис, пароль.
  5. Виберіть "Пасивний режим обміну", натисніть кнопку Гаразд.
  6. Після цього слід зазначити вибране з 'єднання, натиснути кнопку "З' єднатися".

Якщо з 'єднання відбулося, далі можна продовжити працювати звично за допомогою двопанельного файлового менеджера.

Командний рядок

Якщо користувач не хоче користуватися графічним інтерфейсом, хоча це досить зручно і дозволяє швидше виконувати деякі функції, він може використовувати командний рядок:

  1. З 'єднання здійснюється командою Open. Використання має виглядати так: open ftp.server.com port.
  2. Параметр port можна не вказувати, якщо передбачається використання стандартного 21.
  3. Замість server.com вказується адреса сервера, на якому розташовується сайт.

Для перейменування використовується rename, для зміни поточного каталогу стандартно використовуються cd, для виходу необхідно ввести close, а для видалення - delete або disconnect.