
FTP (File Transfer Protocol) — це класичний спосіб завантаження та вивантаження файлів із сервера, який часто використовується для управління веб-сайтами, переміщення резервних копій або передачі мультимедіа. Але «звичайний FTP» не шифрується, тому в сучасних робочих процесах хостингу з міркувань безпеки зазвичай віддають перевагу SFTP або FTPS.
Якщо ви керуєте веб-сайтом на віртуальному хостингу, доступ до FTP/SFTP зазвичай доступний. Якщо вам потрібен повний контроль (користувачі, брандмауер, порти, автоматизація), VPS на базі Linux або VPS-хостинг краще підходять для виробничих робочих процесів.
FTP — це протокол, який визначає, як клієнт (ваш комп’ютер) підключається до сервера та передає файли. Він підтримує перегляд каталогів, завантаження, вивантаження, перейменування та видалення файлів — по суті, це «віддалений файловий менеджер» через мережу.
FTP використовує окремий канал даних. Залежно від режиму, або сервер підключається до клієнта (активний режим), або клієнт підключається до відкритого порту сервера (пасивний режим). У реальному житті пасивний режим є більш поширеним, оскільки він краще працює за NAT та суворими брандмауерами.
| Режим | Хто ініціює з’єднання для передачі даних | Типові проблеми | Найкраще використання |
|---|---|---|---|
| Активний | Сервер → Клієнт | Блокується брандмауером клієнта/NAT | Сьогодні рідко зустрічається |
| Пасивний | Клієнт → Сервер | Потрібно, щоб на сервері був відкритий діапазон пасивних портів | Більшість хостингів |
Ці назви схожі, але безпека та поведінка в мережі відрізняються.
| Протокол | Шифрування | Порт за замовчуванням | Примітки |
|---|---|---|---|
| FTP | ❌ Ні | 21 | Повноваження у вигляді звичайного тексту (уникати в Інтернеті) |
| FTPS | ✅ TLS | 21 (явний) / 990 (неявний) | FTP TLS, все ще має складність активного/пасивного режиму |
| SFTP | ✅ SSH | 22 | Інший протокол, простіша настройка брандмауера, дуже поширений на VPS |
У Windows WinSCP є популярним вибором для SFTP. Якщо ви працюєте з інфраструктурою Windows, ви також можете розміщувати проекти на Windows VPS, але для SFTP зазвичай підключаються до серверів на базі Linux або пристроїв, що надають доступ до SSH.
Для безпечного передавання файлів віддавайте перевагу SFTP:
# SFTP interactive session
sftp user@server-ip
# Download a file
get remote_file.zip
# Upload a file
put local_file.zip
# Exit
exit
Якщо вам доводиться використовувати класичний FTP (не рекомендується в публічних мережах):
ftp server-ip
# login
ls
cd public_html
put index.html
get backup.tar.gz
bye
FTP у пасивному режимі потребує відкритого діапазону портів на сервері. Якщо ви не налаштуєте його, передача може «зависати» або випадково завершуватися невдачею.
Приклад (на стороні сервера): налаштуйте пасивний діапазон, наприклад 50000–50100, а потім дозвольте його у вашому брандмауері. Точні кроки залежать від програмного забезпечення вашого FTP-сервера (vsftpd/proftpd/pure-ftpd), але принцип завжди той самий: визначте діапазон та відкрийте його.
Для сучасних розгортань SFTP (SSH) зазвичай простіший і безпечніший, ніж FTP. Якщо вам потрібен повний контроль над користувачами, ключами та правилами брандмауера, запустіть свій стек на VPS під управлінням Linux або на масштабованому VPS-хостингу. Для типового завантаження веб-сайтів у невеликих проєктах спільний хостинг часто включає готовий доступ до FTP/SFTP.